From 8692092d1cfb0ba245242785318388d90d90d855 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 01:21:26 +0200 Subject: [PATCH 01/42] Stream mustache example lambdas --- .../languages/JavaWiremockServerCodegen.java | 14 +-- .../codegen/languages/SpringCodegen.java | 12 +- .../mustache/EscapeDoubleQuoteLambda.java | 67 +++++++++++ .../templating/mustache/ForwardingWriter.java | 38 ++++++ .../mustache/RemoveDoubleQuoteLambda.java | 67 +++++++++++ .../mustache/RemoveLineBreakLambda.java | 67 +++++++++++ .../mustache/SplitStringLambda.java | 108 ++++++++++++------ .../mustache/TrimLineBreaksLambda.java | 42 ++++++- .../mustache/TrimWhitespaceLambda.java | 47 +++++++- .../templating/mustache/UniqueLambda.java | 74 +++++++++++- .../mustache/EscapeDoubleQuoteLambdaTest.java | 61 ++++++++++ .../mustache/RemoveDoubleQuoteLambdaTest.java | 61 ++++++++++ .../mustache/RemoveLineBreakLambdaTest.java | 60 ++++++++++ .../mustache/SplitStringLambdaTest.java | 42 ++++--- .../mustache/TrimLineBreaksLambdaTest.java | 77 +++++++++++++ .../mustache/TrimWhitespaceLambdaTest.java | 53 ++++++--- .../templating/mustache/UniqueLambdaTest.java | 89 +++++++++++++++ 17 files changed, 880 insertions(+), 99 deletions(-) create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambda.java create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/ForwardingWriter.java create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambda.java create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambda.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambdaTest.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambdaTest.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambdaTest.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambdaTest.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/UniqueLambdaTest.java diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaWiremockServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaWiremockServerCodegen.java index 147e560cdece..b3b5e4553181 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaWiremockServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaWiremockServerCodegen.java @@ -1,17 +1,18 @@ package org.openapitools.codegen.languages; -import com.samskivert.mustache.Mustache; import org.openapitools.codegen.CodegenConfig; import org.openapitools.codegen.CodegenType; import org.openapitools.codegen.SupportingFile; import org.openapitools.codegen.meta.GeneratorMetadata; import org.openapitools.codegen.meta.Stability; +import org.openapitools.codegen.templating.mustache.EscapeDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.RemoveDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.RemoveLineBreakLambda; import org.openapitools.codegen.templating.mustache.SplitStringLambda; import org.openapitools.codegen.templating.mustache.TrimWhitespaceLambda; import java.io.File; import java.util.HashMap; -import java.util.regex.Matcher; /** *

Mustache templates are located in {@code src/main/resources/java-wiremock/}. @@ -63,12 +64,9 @@ public JavaWiremockServerCodegen() { this.setLegacyDiscriminatorBehavior(false); // add lambda for mustache templates - additionalProperties.put("lambdaRemoveDoubleQuote", (Mustache.Lambda) (fragment, writer) -> writer - .write(fragment.execute().replaceAll("\"", Matcher.quoteReplacement("")))); - additionalProperties.put("lambdaEscapeDoubleQuote", (Mustache.Lambda) (fragment, writer) -> writer - .write(fragment.execute().replaceAll("\"", Matcher.quoteReplacement("\\\"")))); - additionalProperties.put("lambdaRemoveLineBreak", - (Mustache.Lambda) (fragment, writer) -> writer.write(fragment.execute().replaceAll("\\r|\\n", ""))); + additionalProperties.put("lambdaRemoveDoubleQuote", new RemoveDoubleQuoteLambda()); + additionalProperties.put("lambdaEscapeDoubleQuote", new EscapeDoubleQuoteLambda()); + additionalProperties.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda()); additionalProperties.put("lambdaTrimWhitespace", new TrimWhitespaceLambda()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java index 2104047f125c..1fb409289467 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java @@ -37,6 +37,9 @@ import org.openapitools.codegen.model.ModelsMap; import org.openapitools.codegen.model.OperationMap; import org.openapitools.codegen.model.OperationsMap; +import org.openapitools.codegen.templating.mustache.EscapeDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.RemoveDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.RemoveLineBreakLambda; import org.openapitools.codegen.templating.mustache.SplitStringLambda; import org.openapitools.codegen.templating.mustache.SpringHttpStatusLambda; import org.openapitools.codegen.templating.mustache.TrimWhitespaceLambda; @@ -800,12 +803,9 @@ public void processOpts() { } // add lambda for mustache templates - additionalProperties.put("lambdaRemoveDoubleQuote", (Mustache.Lambda) (fragment, writer) -> writer - .write(fragment.execute().replaceAll("\"", Matcher.quoteReplacement("")))); - additionalProperties.put("lambdaEscapeDoubleQuote", (Mustache.Lambda) (fragment, writer) -> writer - .write(fragment.execute().replaceAll("\"", Matcher.quoteReplacement("\\\"")))); - additionalProperties.put("lambdaRemoveLineBreak", - (Mustache.Lambda) (fragment, writer) -> writer.write(fragment.execute().replaceAll("\\r|\\n", ""))); + additionalProperties.put("lambdaRemoveDoubleQuote", new RemoveDoubleQuoteLambda()); + additionalProperties.put("lambdaEscapeDoubleQuote", new EscapeDoubleQuoteLambda()); + additionalProperties.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda()); additionalProperties.put("lambdaTrimWhitespace", new TrimWhitespaceLambda()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambda.java new file mode 100644 index 000000000000..0eedfc3d2325 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambda.java @@ -0,0 +1,67 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Escapes double quote characters in a fragment. + *

+ * Register: + *

+ * additionalProperties.put("lambdaEscapeDoubleQuote", new EscapeDoubleQuoteLambda());
+ * 
+ *

+ * Use: + *

+ * {{#lambdaEscapeDoubleQuote}}{{name}}{{/lambdaEscapeDoubleQuote}}
+ * 
+ */ +public class EscapeDoubleQuoteLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new EscapeDoubleQuoteWriter(writer)); + } + + private static class EscapeDoubleQuoteWriter extends ForwardingWriter { + private EscapeDoubleQuoteWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (cbuf[i] == '"') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writer.write("\\\""); + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/ForwardingWriter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/ForwardingWriter.java new file mode 100644 index 000000000000..6f31595012d1 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/ForwardingWriter.java @@ -0,0 +1,38 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import java.io.IOException; +import java.io.Writer; + +abstract class ForwardingWriter extends Writer { + protected final Writer writer; + + protected ForwardingWriter(Writer writer) { + this.writer = writer; + } + + @Override + public void flush() throws IOException { + writer.flush(); + } + + @Override + public void close() throws IOException { + flush(); + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambda.java new file mode 100644 index 000000000000..e01f2dd9cd07 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambda.java @@ -0,0 +1,67 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Removes double quote characters from a fragment. + *

+ * Register: + *

+ * additionalProperties.put("lambdaRemoveDoubleQuote", new RemoveDoubleQuoteLambda());
+ * 
+ *

+ * Use: + *

+ * {{#lambdaRemoveDoubleQuote}}{{name}}{{/lambdaRemoveDoubleQuote}}
+ * 
+ */ +public class RemoveDoubleQuoteLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new RemoveDoubleQuoteWriter(writer)); + } + + private static class RemoveDoubleQuoteWriter extends ForwardingWriter { + private RemoveDoubleQuoteWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (cbuf[i] == '"') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambda.java new file mode 100644 index 000000000000..d787d3a1a4ff --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambda.java @@ -0,0 +1,67 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Removes line break characters from a fragment. + *

+ * Register: + *

+ * additionalProperties.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda());
+ * 
+ *

+ * Use: + *

+ * {{#lambdaRemoveLineBreak}}{{name}}{{/lambdaRemoveLineBreak}}
+ * 
+ */ +public class RemoveLineBreakLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new RemoveLineBreakWriter(writer)); + } + + private static class RemoveLineBreakWriter extends ForwardingWriter { + private RemoveLineBreakWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (cbuf[i] == '\r' || cbuf[i] == '\n') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/SplitStringLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/SplitStringLambda.java index 4777c98a49fb..2d5e48cc205c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/SplitStringLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/SplitStringLambda.java @@ -22,7 +22,6 @@ import java.io.IOException; import java.io.Writer; -import java.util.Locale; /** * Splits long fragments into smaller strings and uses a StringBuilder to merge @@ -43,9 +42,11 @@ public class SplitStringLambda implements Mustache.Lambda { private static final int DEFAULT_MAX_LENGTH = 65535; - private static final String SPLIT_INIT = "new StringBuilder(%d)"; + private static final String SPLIT_INIT = "new StringBuilder()"; - private static final String SPLIT_PART = ".append(\"%s\")"; + private static final String SPLIT_PART_PREFIX = ".append(\""; + + private static final String SPLIT_PART_SUFFIX = "\")"; private static final String SPLIT_SUFFIX = ".toString()"; @@ -61,44 +62,83 @@ public SplitStringLambda(int maxLength) { @Override public void execute(Fragment fragment, Writer writer) throws IOException { - String input = fragment.execute(); - int inputLength = input.length(); - - StringBuilder builder = new StringBuilder(); - if (inputLength > maxLength) { - - // Initialize a StringBuilder - builder.append(String.format(Locale.ROOT, SPLIT_INIT, inputLength)); - - int currentPosition = 0; - int currentStringLength = 0; - char currentLastChar = '\\'; - - // Split input into parts of at most maxLength and not ending with an escape character - // Append each part to the StringBuilder - while (currentPosition + maxLength < input.length()) { - currentStringLength = maxLength; - currentLastChar = input.charAt(currentPosition + currentStringLength - 1); - if (currentLastChar == '\\') { - --currentStringLength; - } + SplitStringWriter splitStringWriter = new SplitStringWriter(writer, maxLength); + fragment.execute(splitStringWriter); + splitStringWriter.finish(); + } + + private static class SplitStringWriter extends ForwardingWriter { + private final int maxLength; + private final StringBuilder bufferedInput = new StringBuilder(); + private final StringBuilder currentPart = new StringBuilder(); + private boolean split = false; + + private SplitStringWriter(Writer writer, int maxLength) { + super(writer); + this.maxLength = maxLength; + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + if (!split && bufferedInput.length() + len <= maxLength) { + bufferedInput.append(cbuf, off, len); + return; + } + + if (!split) { + split = true; + writer.write(SPLIT_INIT); + writeSplit(bufferedInput); + bufferedInput.setLength(0); + } - builder.append(String.format(Locale.ROOT, SPLIT_PART, input.substring(currentPosition, currentPosition + currentStringLength))); - currentPosition += currentStringLength; + for (int i = off; i < end; i++) { + appendSplit(cbuf[i]); } + } + + private void writeSplit(CharSequence value) throws IOException { + for (int i = 0; i < value.length(); i++) { + appendSplit(value.charAt(i)); + } + } + + private void appendSplit(char c) throws IOException { + currentPart.append(c); + if (currentPart.length() > maxLength) { + int splitLength = maxLength - 1; + if (splitLength == 0) { + return; + } + writePart(currentPart.subSequence(0, splitLength)); + currentPart.delete(0, splitLength); + } else if (currentPart.length() == maxLength && currentPart.charAt(currentPart.length() - 1) != '\\') { + writePart(currentPart); + currentPart.setLength(0); + } + } - // Append last part if necessary - if (currentPosition < input.length()) { - builder.append(String.format(Locale.ROOT, SPLIT_PART, input.substring(currentPosition))); + private void finish() throws IOException { + if (split) { + if (currentPart.length() > 0) { + writePart(currentPart); + currentPart.setLength(0); + } + writer.write(SPLIT_SUFFIX); + } else { + writer.write('"'); + writer.write(bufferedInput.toString()); + writer.write('"'); } + } - // Close the builder and merge everything back to a string - builder.append(SPLIT_SUFFIX); - } else { - builder.append(String.format(Locale.ROOT, "\"%s\"", input)); + private void writePart(CharSequence part) throws IOException { + writer.write(SPLIT_PART_PREFIX); + writer.append(part); + writer.write(SPLIT_PART_SUFFIX); } - writer.write(builder.toString()); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambda.java index 240e5ee18be1..eff1421129dc 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambda.java @@ -17,7 +17,7 @@ package org.openapitools.codegen.templating.mustache; import com.samskivert.mustache.Mustache; -import com.samskivert.mustache.Template.Fragment; +import com.samskivert.mustache.Template; import java.io.IOException; import java.io.Writer; @@ -36,12 +36,42 @@ * */ public class TrimLineBreaksLambda implements Mustache.Lambda { - private static final String SINGLE_LINE_BREAK = "\n\n"; - - private static final String LINE_BREAK_REGEX = "\n\n+"; + private static final int MAX_CONSECUTIVE_LINE_BREAKS = 2; @Override - public void execute(Fragment fragment, Writer writer) throws IOException { - writer.write(fragment.execute().replaceAll(LINE_BREAK_REGEX, SINGLE_LINE_BREAK)); + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new TrimLineBreaksWriter(writer)); + } + + private static class TrimLineBreaksWriter extends ForwardingWriter { + private int lineBreaks = 0; + + private TrimLineBreaksWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (cbuf[i] == '\n') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + if (lineBreaks < MAX_CONSECUTIVE_LINE_BREAKS) { + writer.write(cbuf, i, 1); + } + lineBreaks++; + writeStart = i + 1; + } else if (lineBreaks > 0) { + lineBreaks = 0; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambda.java index 617660675c56..22cd03cacf8d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambda.java @@ -18,7 +18,7 @@ package org.openapitools.codegen.templating.mustache; import com.samskivert.mustache.Mustache; -import com.samskivert.mustache.Template.Fragment; +import com.samskivert.mustache.Template; import java.io.IOException; import java.io.Writer; @@ -37,13 +37,50 @@ * */ public class TrimWhitespaceLambda implements Mustache.Lambda { - private static final String SINGLE_SPACE = " "; + private static final char SINGLE_SPACE = ' '; - private static final String WHITESPACE_REGEX = "\\s+"; + /** + * Preserve the default Java regex \s character class: [ \t\n\x0B\f\r]. + */ + private static boolean isRegexWhitespace(char ch) { + return ch == ' ' || ch == '\t' || ch == '\n' || ch == '\u000B' || ch == '\f' || ch == '\r'; + } @Override - public void execute(Fragment fragment, Writer writer) throws IOException { - writer.write(fragment.execute().replaceAll(WHITESPACE_REGEX, SINGLE_SPACE)); + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new TrimWhitespaceWriter(writer)); + } + + private static class TrimWhitespaceWriter extends ForwardingWriter { + private boolean inWhitespace = false; + + private TrimWhitespaceWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (isRegexWhitespace(cbuf[i])) { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + if (!inWhitespace) { + writer.write(SINGLE_SPACE); + } + inWhitespace = true; + writeStart = i + 1; + } else { + inWhitespace = false; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java index 0742cb78968c..440c861402f5 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java @@ -22,7 +22,8 @@ import java.io.IOException; import java.io.Writer; import java.util.Arrays; -import java.util.List; +import java.util.LinkedHashSet; +import java.util.Set; import java.util.stream.Collectors; /** @@ -39,6 +40,8 @@ * */ public class UniqueLambda implements Mustache.Lambda { + private static final String REGEX_META_CHARS = "\\.[]{}()*+-?^$|"; + private final String delimiter; private final boolean withNewLine; @@ -50,14 +53,73 @@ public UniqueLambda(String delimiter, boolean withNewLine) { @Override public void execute(Template.Fragment fragment, Writer writer) throws IOException { - String[] parts = fragment.execute().split(this.delimiter, -1); - - List uniqueLines = Arrays.stream(parts).distinct().collect(Collectors.toList()); - - writer.write(String.join(delimiter, uniqueLines)); + if (isPlainDelimiter()) { + UniqueWriter uniqueWriter = new UniqueWriter(writer); + fragment.execute(uniqueWriter); + uniqueWriter.finish(); + } else { + writer.write(Arrays.stream(fragment.execute().split(this.delimiter, -1)) + .distinct() + .collect(Collectors.joining(delimiter))); + } if (withNewLine) { writer.write("\n"); } } + + private boolean isPlainDelimiter() { + return !delimiter.isEmpty() && delimiter.chars().noneMatch(ch -> REGEX_META_CHARS.indexOf(ch) >= 0); + } + + private class UniqueWriter extends ForwardingWriter { + private final Set values = new LinkedHashSet<>(); + private final StringBuilder buffer = new StringBuilder(); + private boolean first = true; + private boolean finished = false; + + private UniqueWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + buffer.append(cbuf, off, len); + finished = false; + writeCompleteValues(); + } + + @Override + public void close() throws IOException { + finish(); + } + + private void writeCompleteValues() throws IOException { + int delimiterIndex = buffer.indexOf(delimiter); + while (delimiterIndex >= 0) { + writeUniqueValue(buffer.substring(0, delimiterIndex)); + buffer.delete(0, delimiterIndex + delimiter.length()); + delimiterIndex = buffer.indexOf(delimiter); + } + } + + private void finish() throws IOException { + if (finished) { + return; + } + writeUniqueValue(buffer.toString()); + buffer.setLength(0); + finished = true; + } + + private void writeUniqueValue(String value) throws IOException { + if (values.add(value)) { + if (!first) { + writer.write(delimiter); + } + writer.write(value); + first = false; + } + } + } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambdaTest.java new file mode 100644 index 000000000000..e8a1b0adb3a8 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeDoubleQuoteLambdaTest.java @@ -0,0 +1,61 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class EscapeDoubleQuoteLambdaTest { + + @Test + public void escapesDoubleQuotesAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("\"alpha"); + invocation.getArgument(0).write("\"be\"ta"); + invocation.getArgument(0).write("gamma\""); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeDoubleQuoteLambda().execute(fragment, output); + + assertEquals(output.toString(), "\\\"alpha\\\"be\\\"tagamma\\\""); + } + + @Test + public void preservesTextWithoutDoubleQuotes() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha beta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeDoubleQuoteLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha beta"); + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambdaTest.java new file mode 100644 index 000000000000..4906f04218f2 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveDoubleQuoteLambdaTest.java @@ -0,0 +1,61 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class RemoveDoubleQuoteLambdaTest { + + @Test + public void removesDoubleQuotesAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("\"alpha"); + invocation.getArgument(0).write("\"be\"ta"); + invocation.getArgument(0).write("gamma\""); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new RemoveDoubleQuoteLambda().execute(fragment, output); + + assertEquals(output.toString(), "alphabetagamma"); + } + + @Test + public void preservesTextWithoutDoubleQuotes() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha beta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new RemoveDoubleQuoteLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha beta"); + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambdaTest.java new file mode 100644 index 000000000000..7444717b4bd4 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/RemoveLineBreakLambdaTest.java @@ -0,0 +1,60 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class RemoveLineBreakLambdaTest { + + @Test + public void removesLineBreaksAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\nbe"); + invocation.getArgument(0).write("ta\r\ngamma"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new RemoveLineBreakLambda().execute(fragment, output); + + assertEquals(output.toString(), "alphabetagamma"); + } + + @Test + public void preservesTextWithoutLineBreaks() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha beta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new RemoveLineBreakLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha beta"); + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/SplitStringLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/SplitStringLambdaTest.java index ba993d919eaf..86fcb4880f15 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/SplitStringLambdaTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/SplitStringLambdaTest.java @@ -27,11 +27,12 @@ import java.io.IOException; import java.io.StringWriter; +import java.io.Writer; import java.util.HashMap; -import java.util.Locale; import java.util.Map; -import static org.mockito.Mockito.when; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; import static org.testng.Assert.assertEquals; public class SplitStringLambdaTest { @@ -42,22 +43,14 @@ public class SplitStringLambdaTest { static { EXPECTED_OUTPUTS = new HashMap<>(); EXPECTED_OUTPUTS.put(2, - String.format( - Locale.ROOT, - "new StringBuilder(%d).append(\"11\").append(\"12\").append(\"22\").append(\"33\").append(\"34\").toString()", - INPUT_STRING.length())); + "new StringBuilder().append(\"11\").append(\"12\").append(\"22\").append(\"33\").append(\"34\").toString()"); EXPECTED_OUTPUTS.put(3, - String.format( - Locale.ROOT, - "new StringBuilder(%d).append(\"111\").append(\"222\").append(\"333\").append(\"4\").toString()", - INPUT_STRING.length())); + "new StringBuilder().append(\"111\").append(\"222\").append(\"333\").append(\"4\").toString()"); } private static final String INPUT_QUOTED_STRING = "1\\\"11\\\"2223\\\"334"; - private static final String INPUT_QUOTED_OUTPUT = String.format( - Locale.ROOT, - "new StringBuilder(%d).append(\"1\\\"\").append(\"11\").append(\"\\\"2\").append(\"223\").append(\"\\\"3\").append(\"34\").toString()", - INPUT_QUOTED_STRING.length()); + private static final String INPUT_QUOTED_OUTPUT = + "new StringBuilder().append(\"1\\\"\").append(\"11\").append(\"\\\"2\").append(\"223\").append(\"\\\"3\").append(\"34\").toString()"; @Mock private Fragment fragment; @@ -73,7 +66,10 @@ public void reset() { } private void testString(String input, int maxLength, String expected) throws IOException { - when(fragment.execute()).thenReturn(input); + doAnswer(invocation -> { + invocation.getArgument(0).write(input); + return null; + }).when(fragment).execute(any(Writer.class)); StringWriter output = new StringWriter(); new SplitStringLambda(maxLength).execute(fragment, output); @@ -100,7 +96,21 @@ public void testSplitQuotedString() throws IOException { @Test public void testShortString() throws IOException { - testString(INPUT_STRING, INPUT_STRING.length(), String.format(Locale.ROOT, "\"%s\"", INPUT_STRING)); + testString(INPUT_STRING, INPUT_STRING.length(), "\"" + INPUT_STRING + "\""); + } + + @Test + public void testSplitAcrossFragmentWrites() throws IOException { + doAnswer(invocation -> { + invocation.getArgument(0).write("111"); + invocation.getArgument(0).write("222"); + invocation.getArgument(0).write("3334"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new SplitStringLambda(3).execute(fragment, output); + assertEquals(output.toString(), EXPECTED_OUTPUTS.get(3)); } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambdaTest.java new file mode 100644 index 000000000000..9f502c422ec2 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimLineBreaksLambdaTest.java @@ -0,0 +1,77 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class TrimLineBreaksLambdaTest { + + @Test + public void trimsLineBreaksAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\n\n"); + invocation.getArgument(0).write("\n\nbeta\n"); + invocation.getArgument(0).write("\n\ngamma"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new TrimLineBreaksLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha\n\nbeta\n\ngamma"); + } + + @Test + public void preservesSingleLineBreaks() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\nbeta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new TrimLineBreaksLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha\nbeta"); + } + + @Test + public void trimsLineBreaksAcrossSingleCharacterWrites() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("\n"); + invocation.getArgument(0).write("\n"); + invocation.getArgument(0).write("\n"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new TrimLineBreaksLambda().execute(fragment, output); + + assertEquals(output.toString(), "\n\n"); + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambdaTest.java index 799daebb434a..c1b5a6507512 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambdaTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/TrimWhitespaceLambdaTest.java @@ -17,42 +17,59 @@ package org.openapitools.codegen.templating.mustache; -import com.samskivert.mustache.Template.Fragment; -import org.mockito.Mock; -import org.mockito.Mockito; -import org.mockito.MockitoAnnotations; -import org.testng.annotations.AfterMethod; -import org.testng.annotations.BeforeMethod; +import com.samskivert.mustache.Template; import org.testng.annotations.Test; import java.io.IOException; import java.io.StringWriter; +import java.io.Writer; -import static org.mockito.Mockito.when; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; import static org.testng.Assert.assertEquals; public class TrimWhitespaceLambdaTest { - @Mock - private Fragment fragment; + @Test + public void testTrimWhitespace() throws IOException { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("\t a b\t\tc \t"); + return null; + }).when(fragment).execute(any(Writer.class)); - @BeforeMethod - public void init() { - MockitoAnnotations.initMocks(this); + StringWriter output = new StringWriter(); + new TrimWhitespaceLambda().execute(fragment, output); + assertEquals(output.toString(), " a b c "); } - @AfterMethod - public void reset() { - Mockito.reset(fragment); + @Test + public void trimsWhitespaceAcrossFragmentWrites() throws IOException { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\t"); + invocation.getArgument(0).write("\n\r"); + invocation.getArgument(0).write("beta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new TrimWhitespaceLambda().execute(fragment, output); + assertEquals(output.toString(), "alpha beta"); } @Test - public void testTrimWhitespace() throws IOException { - when(fragment.execute()).thenReturn("\t a b\t\tc \t"); + public void preservesNonRegexWhitespaceCharacters() throws IOException { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\u001Cbeta"); + return null; + }).when(fragment).execute(any(Writer.class)); StringWriter output = new StringWriter(); new TrimWhitespaceLambda().execute(fragment, output); - assertEquals(output.toString(), " a b c "); + assertEquals(output.toString(), "alpha\u001Cbeta"); } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/UniqueLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/UniqueLambdaTest.java new file mode 100644 index 000000000000..2722c7edea4d --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/UniqueLambdaTest.java @@ -0,0 +1,89 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; +import static org.testng.Assert.assertEquals; + +public class UniqueLambdaTest { + + @Test + public void uniqueValuesAreWrittenAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\nbe"); + invocation.getArgument(0).write("ta\nalpha\n"); + invocation.getArgument(0).write("gamma"); + invocation.getArgument(0).write("\nbeta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new UniqueLambda("\n", false).execute(fragment, output); + + assertEquals(output.toString(), "alpha\nbeta\ngamma"); + } + + @Test + public void uniqueValuesPreserveTrailingEmptyValue() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\nbeta\n"); + invocation.getArgument(0).write("beta\n"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new UniqueLambda("\n", false).execute(fragment, output); + + assertEquals(output.toString(), "alpha\nbeta\n"); + } + + @Test + public void uniqueValuesCanAppendNewLine() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\nalpha"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new UniqueLambda("\n", true).execute(fragment, output); + + assertEquals(output.toString(), "alpha\n"); + } + + @Test + public void uniqueValuesPreserveRegexDelimiterBehavior() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + when(fragment.execute()).thenReturn("alpha beta\talpha"); + + StringWriter output = new StringWriter(); + new UniqueLambda("\\s+", false).execute(fragment, output); + + assertEquals(output.toString(), "alpha\\s+beta"); + } +} From 7d86dc39dbd686961850e868d70f9edcf2a8efe9 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Sun, 28 Jun 2026 23:07:02 +0200 Subject: [PATCH 02/42] Add Spring regression test for issue 23849 --- .../java/spring/SpringCodegenTest.java | 27 +- .../resources/3_0/spring/issue_23849.json | 118336 +++++++++++++++ 2 files changed, 118362 insertions(+), 1 deletion(-) create mode 100644 modules/openapi-generator/src/test/resources/3_0/spring/issue_23849.json diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java index e7a4f02f7f0b..d80a39acf901 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java @@ -8146,6 +8146,31 @@ void schemaMappingWithNullableAllOfRendersNullableJavaProperty() throws IOExcept .assertProperty("optionalRef").withType("JsonNullable"); } + @Test + void issue23849() throws IOException { + File output = Files.createTempDirectory("issue23849").toFile().getCanonicalFile(); + output.deleteOnExit(); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("spring") + .setInputSpec("src/test/resources/3_0/spring/issue_23849.json") + .setOutputDir(output.getAbsolutePath()) + .setValidateSpec(false); + + ClientOptInput input = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + generator.setGenerateMetadata(false); + generator.setGeneratorPropertyDefault(API_TESTS, "false"); + generator.setGeneratorPropertyDefault(MODEL_TESTS, "false"); + generator.setGeneratorPropertyDefault(API_DOCS, "false"); + generator.setGeneratorPropertyDefault(MODEL_DOCS, "false"); + + Map files = generator.opts(input).generate().stream() + .collect(Collectors.toMap(this::getUniqueName, Function.identity())); + + assertThat(files).containsKeys("ActivityApi.java", "Activity.java"); + } + @Test void issue24003() throws IOException { Map files = generateFromContract( @@ -8162,4 +8187,4 @@ void issue24003() throws IOException { JavaFileAssert.assertThat(files.get("UserBrLockDTO.java")).implementsInterfaces("BrLockDTO") .fileDoesNotContain("@JsonTypeName"); } -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/test/resources/3_0/spring/issue_23849.json b/modules/openapi-generator/src/test/resources/3_0/spring/issue_23849.json new file mode 100644 index 000000000000..ac7897282302 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_0/spring/issue_23849.json @@ -0,0 +1,118336 @@ +{ + "openapi" : "3.0.1", + "info" : { + "title" : "Tripletex API", + "description" : " [ Base URL: https://tripletex.no/v2 ]\n\n## Usage\n\n- **Download the spec** [openapi.json](/v2/openapi.json) file, it is a [OpenAPI Specification](https://github.com/OAI/OpenAPI-Specification).\n\n- **Generating a client** can easily be done using tools like [openapi-generator](https://github.com/OpenAPITools/openapi-generator) or [swagger-codegen](https://github.com/swagger-api/swagger-codegen) or other that accepts [OpenAPI Specification](https://github.com/OAI/OpenAPI-Specification) specs.\n\n - For swagger codegen it is recommended to use the flag: **--removeOperationIdPrefix**.\n Unique operation ids are about to be introduced to the spec, and this ensures forward compatibility - and results in less verbose generated code.\n\n- **Please note** that Tripletex offers several packages. Some endpoints are only supported in certain packages. You can see the Tripletex packages [here](https://www.tripletex.no/priser/).\n\n## Overview\n\n- Partial resource updating is done using the `PUT` method with optional fields instead of the `PATCH` method.\n\n- **Actions** or **commands** are represented in our RESTful path with a prefixed `:`. Example: `/hours/123/:approve`.\n\n- **Summaries** or **aggregated** results are represented in our RESTful path with a prefixed `>`. Example: `/hours/>thisWeeksBillables`.\n\n- **Request ID** is a key found in all responses in the header with the name `x-tlx-request-id`. For validation and error responses it is also in the response body. If additional log information is absolutely necessary, our support division can locate the key value.\n\n- **version** This is a revision number found on all persisted resources. If included, it will prevent your PUT/POST from overriding any updates to the resource since your GET.\n\n- **Date** follows the **[ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)** standard, meaning the format `YYYY-MM-DD`.\n\n- **DateTime** follows the **[ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)** standard, meaning the format `YYYY-MM-DDThh:mm:ss`.\n\n- **Searching** is done by entering values in the optional fields for each API call. The values fall into the following categories: range, in, exact and like.\n\n- **Missing fields** or even **no response data** can occur because result objects and fields are filtered on authorization.\n\n- **See [GitHub](https://github.com/Tripletex/tripletex-api2) for more documentation, code examples, changelog and more.**\n\n- **See [Tripletex for developers](https://developer.tripletex.no/) for more practical information, support, updates and access form**\n\n## Authentication\n\n[Read more here](https://developer.tripletex.no/docs/documentation/authentication-and-tokens/)\n\n- **Tokens:** The Tripletex API uses 3 different tokens\n\n - **consumerToken** is a token provided to the consumer by Tripletex after the API 2.0 registration is completed.\n\n - **employeeToken** is a token created by an administrator in your Tripletex account via the user settings and the tab \"API access\". Each employee token must be given a set of entitlements.\n\n - **sessionToken** is the token from `/token/session/:create` which requires a consumerToken and an employeeToken created with the same consumer token, but not an authentication header.\n\n- **Authentication** is done via [Basic access authentication](https://en.wikipedia.org/wiki/Basic_access_authentication)\n\n - **username** is used to specify what company to access.\n\n - `0` or blank means the company of the employee.\n\n - Any other value means accountant clients. Use `/company/>withLoginAccess` to get a list of those.\n\n - **password** is the **sessionToken**.\n\n - If you need to create the header yourself use `Authorization: Basic ` where `encoded token` is the string `:` Base64 encoded.\n\n## Tags\n\n- `[BETA]` This is a beta endpoint and can be subject to change.\n- `[DEPRECATED]` Deprecated means that we intend to remove/change this feature or capability in a future \"major\" API release. We therefore discourage all use of this feature/capability.\n\n## Fields\n\nUse the `fields` parameter to specify which fields should be returned. This also supports fields from sub elements, done via `()`. `*` means all fields for that resource. Example values:\n\n- `project,activity,hours` returns `{project:..., activity:...., hours:...}`.\n- just `project` returns `\"project\" : { \"id\": 12345, \"url\": \"tripletex.no/v2/projects/12345\" }`.\n- `project(*)` returns `\"project\" : { \"id\": 12345 \"name\":\"ProjectName\" \"number.....startDate\": \"2013-01-07\" }`.\n- `project(name)` returns `\"project\" : { \"name\":\"ProjectName\" }`.\n- All resources and some subResources : `*,activity(name),employee(*)`.\n\n## Sorting\n\nUse the `sorting` parameter to specify sorting. It takes a comma separated list, where a `-` prefix denotes descending. You can sort by sub object with the following format: `.`. Example values:\n\n- `date`\n- `project.name`\n- `project.name, -date`\n\n## Changes\n\nTo get the changes for a resource, `changes` have to be explicitly specified as part of the `fields` parameter, e.g. `*,changes`.\nThere are currently two types of change available:\n\n- `CREATE` for when the resource was created\n- `UPDATE` for when the resource was updated\n\n**NOTE**\n\n> For objects created prior to October 24th 2018 the list may be incomplete, but will always contain the CREATE and the last change (if the object has been changed after creation).\n\n## Rate limiting\n\nRate limiting is performed on the API calls for an employee for each API consumer. Status regarding the rate limit is returned as headers:\n\n- `X-Rate-Limit-Limit` - The number of allowed requests in the current period.\n- `X-Rate-Limit-Remaining` - The number of remaining requests.\n- `X-Rate-Limit-Reset` - The number of seconds left in the current period.\n\nOnce the rate limit is hit, all requests will return HTTP status code `429` for the remainder of the current period.\n\n## Response envelope\n\n#### Multiple values\n\n```json\n{\n \"fullResultSize\": ###, // {number} [DEPRECATED]\n \"from\": ###, // {number} Paging starting from\n \"count\": ###, // {number} Paging count\n \"versionDigest\": \"###\", // {string} Hash of full result, null if no result\n \"values\": [...{...object...},{...object...},{...object...}...]\n}\n```\n\n#### Single value\n\n```json\n{\n \"value\": {...single object...}\n}\n```\n\n## WebHook envelope\n\n```json\n{\n \"subscriptionId\": ###, // Subscription id\n \"event\": \"object.verb\", // As listed from /v2/event/\n \"id\": ###, // Id of object this event is for\n \"value\": {... single object, null if object.deleted ...}\n}\n```\n\n## Error/warning envelope\n\n```json\n{\n \"status\": ###, // {number} HTTP status code\n \"code\": #####, // {number} internal status code of event\n \"message\": \"###\", // {string} Basic feedback message in your language\n \"link\": \"###\", // {string} Link to doc\n \"developerMessage\": \"###\", // {string} More technical message\n \"validationMessages\": [ // {array} List of validation messages, can be null\n {\n \"field\": \"###\", // {string} Name of field\n \"message\": \"###\" // {string} Validation message for field\n }\n ],\n \"requestId\": \"###\" // {string} Same as x-tlx-request-id\n}\n```\n\n## Status codes / Error codes\n\n- **200 OK**\n- **201 Created** - From POSTs that create something new.\n- **204 No Content** - When there is no answer, ex: \"/:anAction\" or DELETE.\n- **400 Bad request** -\n - **4000** Bad Request Exception\n - **11000** Illegal Filter Exception\n - **12000** Path Param Exception\n- **401 Unauthorized** - When authentication is required and has failed or has not yet been provided\n - **3000** Authentication Exception\n- **403 Forbidden** - When AuthorisationManager says no.\n - **9000** Security Exception\n- **404 Not Found** - For resources that does not exist.\n - **6000** Not Found Exception\n- **409 Conflict** - Such as an edit conflict between multiple simultaneous updates\n - **7000** Object Exists Exception\n - **8000** Revision Exception\n - **10000** Locked Exception\n - **14000** Duplicate entry\n- **422 Bad Request** - For Required fields or things like malformed payload.\n - **15000** Value Validation Exception\n - **16000** Mapping Exception\n - **17000** Sorting Exception\n - **18000** Validation Exception\n - **21000** Param Exception\n - **22000** Invalid JSON Exception\n - **23000** Result Set Too Large Exception\n- **429 Too Many Requests** - Request rate limit hit\n- **500 Internal Error** - Unexpected condition was encountered and no more specific message is suitable\n - **1000** Exception\n", + "contact" : { + "name" : "tripletex-api2 on GitHub", + "url" : "https://github.com/Tripletex/tripletex-api2" + }, + "version" : "2.75.05" + }, + "servers" : [ { + "url" : "https://tripletex.no/v2", + "description" : "Tripletex API Server" + } ], + "tags" : [ { + "name" : "accountingOffice/reconciliations", + "description" : "API for managing reconciliation controls" + }, { + "name" : "penneo", + "description" : "Penneo Digital Signature API" + } ], + "paths" : { + "/accountantDashboard/news" : { + "get" : { + "tags" : [ "accountantDashboard/news" ], + "summary" : "Get public news articles", + "operationId" : "AccountantDashboardNews_get", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountantDashboardPublicNewsArticle" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/accountantDashboard/news/tags" : { + "get" : { + "tags" : [ "accountantDashboard/news" ], + "summary" : "Get all existing news tags", + "operationId" : "AccountantDashboardNewsTags_getTags", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountantDashboardTag" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/activity/{id}" : { + "get" : { + "tags" : [ "activity" ], + "summary" : "Find activity by ID.", + "operationId" : "Activity_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/activity/list" : { + "post" : { + "tags" : [ "activity" ], + "summary" : "Add multiple activities.", + "operationId" : "ActivityList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Activity" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/activity/>forTimeSheet" : { + "get" : { + "tags" : [ "activity" ], + "summary" : "Find applicable time sheet activities for an employee on a specific day.", + "operationId" : "ActivityForTimeSheet_getForTimeSheet", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Project ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "filterExistingHours", + "in" : "query", + "description" : "Whether to filter out activities that have registered hours.", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/activity" : { + "get" : { + "tags" : [ "activity" ], + "summary" : "Find activities corresponding with sent data.", + "operationId" : "Activity_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isProjectActivity", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isGeneral", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isChargeable", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isTask", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "activity" ], + "summary" : "Add activity.", + "operationId" : "Activity_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Activity" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/deliveryAddress/{id}" : { + "get" : { + "tags" : [ "deliveryAddress" ], + "summary" : "Get address by ID.", + "operationId" : "DeliveryAddress_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDeliveryAddress" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "deliveryAddress" ], + "summary" : "Update address.", + "operationId" : "DeliveryAddress_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/DeliveryAddress" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDeliveryAddress" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/deliveryAddress" : { + "get" : { + "tags" : [ "deliveryAddress" ], + "summary" : "Find addresses corresponding with sent data.", + "operationId" : "DeliveryAddress_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "addressLine1", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "addressLine2", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "postalCode", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "city", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDeliveryAddress" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/balance/reconciliation/annual/context" : { + "post" : { + "tags" : [ "balance/reconciliation" ], + "summary" : "Create a annualBalance reconciliation context for a customer", + "operationId" : "BalanceReconciliationAnnualContext_postAnnualContext", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AnnualBalanceContextRequest" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAnnualBalanceContext" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/balance/reconciliation/attachment/{attachmentId}/pdf" : { + "get" : { + "tags" : [ "balance/reconciliation" ], + "description" : "Get an attached voucher as PDF", + "operationId" : "BalanceReconciliationAttachmentPdf_getAttachment", + "parameters" : [ { + "name" : "attachmentId", + "in" : "path", + "description" : "Id of the attachment", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "The attachment in PDF format", + "content" : { + "application/pdf" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/balance/reconciliation/{reconciliationId}/account/{accountId}/vouchers" : { + "get" : { + "tags" : [ "balance/reconciliation" ], + "description" : "Find vouchers for an account in the period of the balance reconciliation", + "operationId" : "BalanceReconciliationAccountVouchers_getVouchers", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "Id of the balance reconciliation", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountId", + "in" : "path", + "description" : "Id of the account", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fromDate", + "in" : "query", + "description" : "Format is yyyy-MM-dd", + "schema" : { + "type" : "string" + } + }, { + "name" : "toDateExclusive", + "in" : "query", + "description" : "Format is yyyy-MM-dd", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*, comments(*), attachments(*)" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBalanceReconciliationVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/accountingOffice/reconciliations/{reconciliationId}/control/:controlReconciliation" : { + "put" : { + "tags" : [ "accountingOffice/reconciliations/{reconciliationId}/control/:controlReconciliation", "accountingOffice/reconciliations" ], + "summary" : "Mark a reconciliation as controlled", + "operationId" : "AccountingOfficeReconciliationsControlControlReconciliation_controlReconciliation", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The ID of the reconciliation", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperReconciliationControl" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/accountingOffice/reconciliations/{reconciliationId}/control" : { + "get" : { + "tags" : [ "accountingOffice/reconciliations/{reconciliationId}/control", "accountingOffice/reconciliations" ], + "summary" : "Returns a list of reconciliation controls with the given reconciliationId", + "operationId" : "AccountingOfficeReconciliationsControl_get", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The ID of the reconciliation to get control entries for", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseReconciliationControl" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/accountingOffice/reconciliations/{reconciliationId}/control/:reconcile" : { + "put" : { + "tags" : [ "accountingOffice/reconciliations/{reconciliationId}/control/:reconcile", "accountingOffice/reconciliations" ], + "summary" : "Mark a reconciliation as reconciled", + "operationId" : "AccountingOfficeReconciliationsControlReconcile_reconcile", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The ID of the reconciliation", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperReconciliationControl" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/accountingOffice/reconciliations/{reconciliationId}/control/:requestControl" : { + "put" : { + "tags" : [ "accountingOffice/reconciliations/{reconciliationId}/control/:requestControl", "accountingOffice/reconciliations" ], + "summary" : "Request control of a reconciliation", + "operationId" : "AccountingOfficeReconciliationsControlRequestControl_requestControl", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The ID of the reconciliation", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "List of employee IDs to request control from", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseReconciliationControl" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/financeTax/reconciliation/{reconciliationId}/overview" : { + "get" : { + "tags" : [ "financeTax/reconciliation" ], + "summary" : "Get finance tax overview for a specific reconciliation term", + "operationId" : "SalaryFinanceTaxReconciliationOverview_getOverview", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperFinanceTaxOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/financeTax/reconciliation/{reconciliationId}/paymentsOverview" : { + "get" : { + "tags" : [ "financeTax/reconciliation" ], + "summary" : "Get finance tax payment overview from start of year to the current reconciliation term", + "operationId" : "SalaryFinanceTaxReconciliationPaymentsOverview_getPayments", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAmeldingPeriodicPaymentOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/financeTax/reconciliation/context" : { + "post" : { + "tags" : [ "financeTax/reconciliation" ], + "summary" : "Create a financeTax reconciliation context for a customer", + "operationId" : "SalaryFinanceTaxReconciliationContext_postContext", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/FinanceTaxContextRequest" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperFinanceTaxContext" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/holidayAllowance/reconciliation/{reconciliationId}/holidayAllowanceDetails" : { + "get" : { + "tags" : [ "salary/holidayAllowance/reconciliation" ], + "summary" : "Get a holiday allowance details for the current reconciliation term", + "operationId" : "SalaryHolidayAllowanceReconciliationHolidayAllowanceDetails_getHolidayAllowanceDetails", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHolidayAllowanceDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/holidayAllowance/reconciliation/{reconciliationId}/holidayAllowanceSummary" : { + "get" : { + "tags" : [ "salary/holidayAllowance/reconciliation" ], + "summary" : "Salary holiday allowance reconciliation summary", + "operationId" : "SalaryHolidayAllowanceReconciliationHolidayAllowanceSummary_getHolidayAllowanceSummary", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHolidayAllowanceSummary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/holidayAllowance/reconciliation/context" : { + "post" : { + "tags" : [ "salary/holidayAllowance/reconciliation" ], + "summary" : "Create a holiday allowance reconciliation context for a customer", + "operationId" : "SalaryHolidayAllowanceReconciliationContext_postContext", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/HolidayAllowanceContextRequest" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHolidayAllowanceContext" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/mandatoryDeduction/reconciliation/{reconciliationId}/overview" : { + "get" : { + "tags" : [ "salary/mandatoryDeduction/reconciliation" ], + "summary" : "Salary mandatory deduction reconciliation overview", + "operationId" : "SalaryMandatoryDeductionReconciliationOverview_getOverview", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMandatoryDeductionOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/mandatoryDeduction/reconciliation/{reconciliationId}/paymentsOverview" : { + "get" : { + "tags" : [ "salary/mandatoryDeduction/reconciliation" ], + "summary" : "Get mandatory deduction payments overview from start of year to the current reconciliation term", + "operationId" : "SalaryMandatoryDeductionReconciliationPaymentsOverview_getPayments", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAmeldingPeriodicPaymentOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/mandatoryDeduction/reconciliation/context" : { + "post" : { + "tags" : [ "salary/mandatoryDeduction/reconciliation" ], + "summary" : "Create a mandatoryDeduction reconciliation context for a customer", + "operationId" : "SalaryMandatoryDeductionReconciliationContext_postContext", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/MandatoryDeductionContextRequest" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMandatoryDeductionContext" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/payrollTax/reconciliation/{reconciliationId}/overview" : { + "get" : { + "tags" : [ "salary/payrollTax/reconciliation" ], + "summary" : "Salary payroll tax reconciliation overview", + "operationId" : "SalaryPayrollTaxReconciliationOverview_getOverview", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPayrollTaxOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/payrollTax/reconciliation/{reconciliationId}/paymentsOverview" : { + "get" : { + "tags" : [ "salary/payrollTax/reconciliation" ], + "summary" : "Get a payroll tax payments from start of year to the current reconciliation term", + "operationId" : "SalaryPayrollTaxReconciliationPaymentsOverview_getPayments", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAmeldingPeriodicPaymentOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/payrollTax/reconciliation/context" : { + "post" : { + "tags" : [ "salary/payrollTax/reconciliation" ], + "summary" : "Create a payroll tax reconciliation context for a customer", + "operationId" : "SalaryPayrollTaxReconciliationContext_postContext", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PayrollTaxContextRequest" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPayrollTaxContext" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/taxDeduction/reconciliation/{reconciliationId}/overview" : { + "get" : { + "tags" : [ "salary/taxDeduction/reconciliation" ], + "summary" : "Get salary tax deduction data for the reconciliation table", + "operationId" : "SalaryTaxDeductionReconciliationOverview_getOverview", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTaxDeductionOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/taxDeduction/reconciliation/{reconciliationId}/paymentsOverview" : { + "get" : { + "tags" : [ "salary/taxDeduction/reconciliation" ], + "summary" : "Get salary tax deduction payment overview from start of year to the current reconciliation term", + "operationId" : "SalaryTaxDeductionReconciliationPaymentsOverview_getPayments", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliation id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAmeldingPeriodicPaymentOverview" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/taxDeduction/reconciliation/{reconciliationId}/balanceAndOwedAmount" : { + "get" : { + "tags" : [ "salary/reconciliation/tax-deduction", "salary/taxDeduction/reconciliation" ], + "summary" : "Get tax deduction details for a reconciliation", + "operationId" : "SalaryTaxDeductionReconciliationBalanceAndOwedAmount_getTaxDeductionDetails", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "path", + "description" : "The reconciliationId to fetch tax deduction balance for", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalaryTaxDeductionReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/taxDeduction/reconciliation/context" : { + "post" : { + "tags" : [ "salary/taxDeduction/reconciliation" ], + "summary" : "Create a taxDeduction reconciliation context for a customer", + "operationId" : "SalaryTaxDeductionReconciliationContext_postContext", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TaxDeductionContextRequest" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTaxDeductionContext" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/balanceAccountsSum" : { + "get" : { + "tags" : [ "asset" ], + "summary" : "Get balanceAccountsSum.", + "operationId" : "AssetBalanceAccountsSum_balanceAccountsSum", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperNumber" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/{id}" : { + "get" : { + "tags" : [ "asset" ], + "summary" : "Get asset by ID.", + "operationId" : "Asset_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAsset" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "asset" ], + "summary" : "Update asset.", + "operationId" : "Asset_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Asset" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAsset" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "asset" ], + "summary" : "Delete asset.", + "operationId" : "Asset_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/list" : { + "post" : { + "tags" : [ "asset" ], + "summary" : "Create several assets.", + "operationId" : "AssetList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Asset" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAsset" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/deleteImport" : { + "delete" : { + "tags" : [ "asset" ], + "summary" : "[BETA] Delete most recent assets import.", + "operationId" : "AssetDeleteImport_deleteImport", + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/deleteStartingBalance" : { + "delete" : { + "tags" : [ "asset" ], + "summary" : "[BETA] Delete the asset starting balance.", + "operationId" : "AssetDeleteStartingBalance_deleteStartingBalance", + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/assetsExist" : { + "get" : { + "tags" : [ "asset" ], + "summary" : "Get if AssetOverview details is empty.", + "operationId" : "AssetAssetsExist_getAssetsExist", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBoolean" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/{id}/postings" : { + "get" : { + "tags" : [ "asset" ], + "summary" : "Get postings associated with asset", + "operationId" : "AssetPostings_getPostings", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateToExclusive", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePosting" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset" : { + "get" : { + "tags" : [ "asset" ], + "summary" : "Find assets corresponding with sent data.", + "operationId" : "Asset_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAsset" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "asset" ], + "summary" : "Create one asset.", + "operationId" : "Asset_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Asset" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAsset" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/duplicate/{id}" : { + "post" : { + "tags" : [ "asset" ], + "summary" : "Create copy of one asset", + "operationId" : "AssetDuplicate_postDuplicate", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/asset/upload" : { + "post" : { + "tags" : [ "asset" ], + "summary" : "[BETA] Upload Excel file with Assets in the standard Tripletex defined format.", + "operationId" : "AssetUpload_upload", + "parameters" : [ { + "name" : "isPreview", + "in" : "query", + "description" : "Is the import a preview, or a real import.", + "required" : true, + "schema" : { + "type" : "boolean" + } + }, { + "name" : "startDate", + "in" : "query", + "description" : "Start date for asset registry. Should always be on the first day of the year.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The Excel file with assets", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAssetAccountRow" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/attestation/:addApprover" : { + "put" : { + "tags" : [ "attestation" ], + "operationId" : "AttestationAddApprover_addApprover", + "parameters" : [ { + "name" : "attestationType", + "in" : "query", + "description" : "Attestation type, required when no attestationId is provided", + "schema" : { + "type" : "string", + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/NewApproverBody" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAttestation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/attestation/addApproverPermission" : { + "get" : { + "tags" : [ "attestation" ], + "operationId" : "AttestationAddApproverPermission_addApproverPermission", + "parameters" : [ { + "name" : "attestationObjectId", + "in" : "query", + "description" : "Attestation object ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "attestationType", + "in" : "query", + "description" : "Attestation type", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAddApproverPermission" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/attestation/getSteps" : { + "post" : { + "tags" : [ "attestation" ], + "operationId" : "AttestationGetSteps_getSteps", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AttestationObjectRequestDTO" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAttestationStep" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/attestation/companyModules" : { + "get" : { + "tags" : [ "attestation_company_modules" ], + "summary" : "Get attestation company modules", + "operationId" : "AttestationCompanyModules_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAttestationCompanyModules" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/balanceSheet" : { + "get" : { + "tags" : [ "balanceSheet" ], + "summary" : "Get balance sheet (saldobalanse).", + "operationId" : "BalanceSheet_search", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "accountNumberFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "accountNumberTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "includeSubProjects", + "in" : "query", + "description" : "Should sub projects of the given project be included", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "includeActiveAccountsWithoutMovements", + "in" : "query", + "description" : "Should active accounts with no movements be included", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBalanceSheetAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/{id}" : { + "get" : { + "tags" : [ "bank" ], + "summary" : "Get bank.", + "operationId" : "Bank_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBank" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank" : { + "get" : { + "tags" : [ "bank" ], + "summary" : "Find bank corresponding with sent data.", + "operationId" : "Bank_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "registerNumbers", + "in" : "query", + "description" : "Bank register number (four digits)", + "schema" : { + "type" : "string" + } + }, { + "name" : "isBankReconciliationSupport", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isAutoPaySupported", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isZtlSupported", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBank" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/closedWithUnmatchedTransactions" : { + "get" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Get the last closed reconciliation with unmached transactions by account ID.", + "operationId" : "BankReconciliationClosedWithUnmatchedTransactions_closedWithUnmatchedTransactions", + "parameters" : [ { + "name" : "accountId", + "in" : "query", + "description" : "Account ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "start", + "in" : "query", + "description" : "Format is yyyy-MM-dd", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/transactions/unmatched:csv" : { + "put" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Get all unmatched transactions in csv format", + "operationId" : "BankReconciliationTransactionsUnmatchedcsv_csvTransactions", + "parameters" : [ { + "name" : "reconciliationId", + "in" : "query", + "description" : "ID for reconciliation", + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "CSV file containing unmatched transactions", + "content" : { + "text/csv; charset=utf-8" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + }, + "text/csv; charset=iso-8859-1" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/{id}" : { + "get" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Get bank reconciliation.", + "operationId" : "BankReconciliation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Update a bank reconciliation.", + "operationId" : "BankReconciliation_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/BankReconciliation" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Delete bank reconciliation by ID.", + "operationId" : "BankReconciliation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/>last" : { + "get" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Get the last created reconciliation by account ID.", + "operationId" : "BankReconciliationLast_last", + "parameters" : [ { + "name" : "accountId", + "in" : "query", + "description" : "Account ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/>lastClosed" : { + "get" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Get last closed reconciliation by account ID.", + "operationId" : "BankReconciliationLastClosed_lastClosed", + "parameters" : [ { + "name" : "accountId", + "in" : "query", + "description" : "Account ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "after", + "in" : "query", + "description" : "Format is yyyy-MM-dd", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation" : { + "get" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Find bank reconciliation corresponding with sent data.", + "operationId" : "BankReconciliation_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "accountingPeriodId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "bank/reconciliation" ], + "summary" : "Post a bank reconciliation.", + "operationId" : "BankReconciliation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/BankReconciliation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/match/count" : { + "get" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Get the total number of matches", + "operationId" : "BankReconciliationMatchCount_count", + "parameters" : [ { + "name" : "bankReconciliationId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInteger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/match/{id}" : { + "get" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Get bank reconciliation match by ID.", + "operationId" : "BankReconciliationMatch_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationMatch" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Update a bank reconciliation match by ID.", + "operationId" : "BankReconciliationMatch_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/BankReconciliationMatch" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationMatch" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Delete a bank reconciliation match by ID.", + "operationId" : "BankReconciliationMatch_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/match" : { + "get" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Find bank reconciliation match corresponding with sent data.", + "operationId" : "BankReconciliationMatch_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "bankReconciliationId", + "in" : "query", + "description" : "List of bank reconciliation IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 5000 + } + }, { + "name" : "approved", + "in" : "query", + "description" : "Approved or unapproved matches", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankReconciliationMatch" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Create a bank reconciliation match.", + "operationId" : "BankReconciliationMatch_post", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/BankReconciliationMatch" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationMatch" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/match/query" : { + "get" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "[INTERNAL] Wildcard search.", + "operationId" : "BankReconciliationMatchQuery_query", + "parameters" : [ { + "name" : "bankReconciliationId", + "in" : "query", + "description" : "The bank reconciliation id", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "approved", + "in" : "query", + "description" : "Approved or unapproved matches", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankReconciliationMatch" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/match/:suggest" : { + "put" : { + "tags" : [ "bank/reconciliation/match" ], + "summary" : "Suggest matches for a bank reconciliation by ID.", + "operationId" : "BankReconciliationMatchSuggest_suggest", + "parameters" : [ { + "name" : "bankReconciliationId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankReconciliationMatch" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/matches/counter" : { + "get" : { + "tags" : [ "bank/reconciliation/match", "bank/reconciliation/matches/counter" ], + "summary" : "[BETA] Get number of matches since last page access.", + "operationId" : "BankReconciliationMatchesCounter_get", + "parameters" : [ { + "name" : "bankReconciliationId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationMatchesCounter" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "bank/reconciliation/match", "bank/reconciliation/matches/counter" ], + "summary" : "[BETA] Reset the number of matches after the page has been accessed.", + "operationId" : "BankReconciliationMatchesCounter_post", + "parameters" : [ { + "name" : "bankReconciliationId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/paymentType/{id}" : { + "get" : { + "tags" : [ "bank/reconciliation/paymentType" ], + "summary" : "Get payment type by ID.", + "operationId" : "BankReconciliationPaymentType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationPaymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/paymentType" : { + "get" : { + "tags" : [ "bank/reconciliation/paymentType" ], + "summary" : "Find payment type corresponding with sent data.", + "operationId" : "BankReconciliationPaymentType_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankReconciliationPaymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/settings" : { + "get" : { + "tags" : [ "bank/reconciliation/settings" ], + "summary" : "Get bank reconciliation settings.", + "operationId" : "BankReconciliationSettings_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "bank/reconciliation/settings" ], + "summary" : "Post bank reconciliation settings.", + "operationId" : "BankReconciliationSettings_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/BankReconciliationSettings" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/reconciliation/settings/{id}" : { + "put" : { + "tags" : [ "bank/reconciliation/settings" ], + "summary" : "Update bank reconciliation settings.", + "operationId" : "BankReconciliationSettings_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/BankReconciliationSettings" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankReconciliationSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/statement/{id}" : { + "get" : { + "tags" : [ "bank/statement" ], + "summary" : "Get bank statement.", + "operationId" : "BankStatement_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankStatement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "bank/statement" ], + "summary" : "Delete bank statement by ID.", + "operationId" : "BankStatement_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/statement/import" : { + "post" : { + "tags" : [ "bank/statement" ], + "summary" : "Upload bank statement file.", + "operationId" : "BankStatementImport_importBankStatement", + "parameters" : [ { + "name" : "bankId", + "in" : "query", + "description" : "Bank ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "Account ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fromDate", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "toDate", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "externalId", + "in" : "query", + "description" : "External ID", + "schema" : { + "type" : "string" + } + }, { + "name" : "fileFormat", + "in" : "query", + "description" : "File format", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "DNB_CSV", "EIKA_TELEPAY", "SPAREBANK1_TELEPAY", "VISMA_ACCOUNT_STATEMENT", "HANDELSBANKEN_TELEPAY", "SPAREBANKEN_VEST_TELEPAY", "NORDEA_CSV", "TRANSFERWISE", "SPAREBANKEN_SOR_TELEPAY", "SPAREBANKEN_OST_TELEPAY", "DANSKE_BANK_CSV", "CULTURA_BANK_TELEPAY", "SBANKEN_PRIVAT_CSV", "HAUGESUND_SPAREBANK_CSV", "VISMA_ACCOUNT_STATEMENT_PSD2", "SBANKEN_BEDRIFT_CSV", "LANDKREDITT_TELEPAY", "ZTL", "VISMA_ACCOUNT_STATEMENT_PLATFORM_AGNOSTIC", "VISMA_ACCOUNT_STATEMENT_PDS2_PLATFORM_AGNOSTIC", "EXTERNAL_PSD2" ] + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The bank statement file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankStatement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/statement" : { + "get" : { + "tags" : [ "bank/statement" ], + "summary" : "Find bank statement corresponding with sent data.", + "operationId" : "BankStatement_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "fileFormats", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankStatement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/statement/transaction/{id}" : { + "get" : { + "tags" : [ "bank/statement/transaction" ], + "summary" : "Get bank transaction by ID.", + "operationId" : "BankStatementTransaction_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBankTransaction" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/statement/transaction/{id}/details" : { + "get" : { + "tags" : [ "bank/statement/transaction" ], + "summary" : "Get additional details about transaction by ID.", + "operationId" : "BankStatementTransactionDetails_getDetails", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperObject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/bank/statement/transaction" : { + "get" : { + "tags" : [ "bank/statement/transaction" ], + "summary" : "Find bank transaction corresponding with sent data.", + "operationId" : "BankStatementTransaction_search", + "parameters" : [ { + "name" : "bankStatementId", + "in" : "query", + "description" : "Bank statement ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBankTransaction" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/token/consumer/byToken" : { + "get" : { + "tags" : [ "token/consumer" ], + "summary" : "Get consumer token by token string.", + "operationId" : "TokenConsumerByToken_getByToken", + "parameters" : [ { + "name" : "token", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperConsumerToken" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/token/employee/:create" : { + "put" : { + "tags" : [ "token/employee" ], + "summary" : "Create an employee token. Only selected consumers are allowed", + "operationId" : "TokenEmployeeCreate_create", + "parameters" : [ { + "name" : "tokenName", + "in" : "query", + "description" : "A user defined name for the new token", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "consumerName", + "in" : "query", + "description" : "The name of the consumer", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "The id of the employee", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "companyOwned", + "in" : "query", + "description" : "Is the key company owned", + "required" : true, + "schema" : { + "type" : "boolean" + } + }, { + "name" : "expirationDate", + "in" : "query", + "description" : "Expiration date for the employeeToken", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeeToken" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/.well-known/jwks.json" : { + "get" : { + "tags" : [ ".well-known" ], + "summary" : "Get JSON Web Key Set for JWT token verification.", + "operationId" : ".well-knownJwks.json_get", + "responses" : { + "200" : { + "description" : "RFC 7517 JSON Web Key Set with the active EC public key(s).", + "content" : { + "application/json" : { + "schema" : { + "type" : "string" + } + } + } + } + } + } + }, + "/token/session/:create" : { + "put" : { + "tags" : [ "token/session" ], + "summary" : "Create session token.", + "description" : "Legacy endpoint using query parameters. Please use POST :create to create session tokens.", + "operationId" : "TokenSessionCreate_create", + "parameters" : [ { + "name" : "consumerToken", + "in" : "query", + "description" : "Token of the API consumer", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeToken", + "in" : "query", + "description" : "The employee's token", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "expirationDate", + "in" : "query", + "description" : "Expiration date for the combined token", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSessionToken" + } + } + } + } + }, + "deprecated" : true + }, + "post" : { + "tags" : [ "token/session" ], + "summary" : "Create session token.", + "description" : "Preferred endpoint using request body instead of query parameters for better security.", + "operationId" : "TokenSessionCreate_createWithBody", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PostSessionTokenBody" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSessionToken" + } + } + } + } + } + } + }, + "/token/session/:createFromRefreshToken" : { + "post" : { + "tags" : [ "token/session" ], + "summary" : "Create session token from refresh token.", + "description" : "Creates a short-lived JWT session token from a refresh token that combines consumer and employee tokens. The refresh token is a JWT with tlxr_ prefix. TTL must be between 300 (5 minutes) and 28800 (8 hours) seconds.", + "operationId" : "TokenSessionCreateFromRefreshToken_createFromRefreshToken", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PostSessionTokenFromRefreshTokenBody" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSessionToken" + } + } + } + } + } + } + }, + "/token/session/{token}" : { + "delete" : { + "tags" : [ "token/session" ], + "summary" : "Delete session token.", + "operationId" : "TokenSession_delete", + "parameters" : [ { + "name" : "token", + "in" : "path", + "description" : "The login token string to delete", + "required" : true, + "schema" : { + "maxLength" : 2000, + "minLength" : 1, + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/token/session/>whoAmI" : { + "get" : { + "tags" : [ "token/session" ], + "summary" : "Find information about the current user.", + "operationId" : "TokenSessionWhoAmI_whoAmI", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLoggedInUserInfo" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/company/>withLoginAccess" : { + "get" : { + "tags" : [ "company" ], + "summary" : "Returns client customers (with accountant/auditor relation) where the current user has login access (proxy login).", + "operationId" : "CompanyWithLoginAccess_getWithLoginAccess", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseClient" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/company/{id}" : { + "get" : { + "tags" : [ "company" ], + "summary" : "Find company by ID.", + "operationId" : "Company_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompany" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/company/divisions" : { + "get" : { + "tags" : [ "company" ], + "summary" : "[DEPRECATED] Find divisions.", + "operationId" : "CompanyDivisions_getDivisions", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCompany" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/company" : { + "put" : { + "tags" : [ "company" ], + "summary" : "Update company information.", + "operationId" : "Company_put", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Company" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompany" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/company/settings/altinn" : { + "get" : { + "tags" : [ "company/altinn", "company/settings/altinn" ], + "summary" : "Find Altinn id for login in company.", + "operationId" : "CompanySettingsAltinn_search", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAltinnCompanyModule" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "company/altinn", "company/settings/altinn" ], + "summary" : "Update AltInn id and password.", + "operationId" : "CompanySettingsAltinn_put", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AltinnCompanyModule" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAltinnCompanyModule" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/company/salesmodules" : { + "get" : { + "tags" : [ "company/salesmodules" ], + "summary" : "[BETA] Get active sales modules.", + "operationId" : "CompanySalesmodules_get", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSalesModule" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "company/salesmodules" ], + "summary" : "[BETA] Add (activate) a new sales module.", + "operationId" : "CompanySalesmodules_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/SalesModule" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalesModule" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/contact/{id}" : { + "get" : { + "tags" : [ "contact" ], + "summary" : "Get contact by ID.", + "operationId" : "Contact_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperContact" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "contact" ], + "summary" : "Update contact.", + "operationId" : "Contact_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Contact" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperContact" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/contact/list" : { + "post" : { + "tags" : [ "contact" ], + "summary" : "Create multiple contacts.", + "operationId" : "ContactList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Contact" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseContact" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "contact" ], + "summary" : "[BETA] Delete multiple contacts.", + "operationId" : "ContactList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/contact" : { + "get" : { + "tags" : [ "contact" ], + "summary" : "Find contacts corresponding with sent data.", + "operationId" : "Contact_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "firstName", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "lastName", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "email", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseContact" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "contact" ], + "summary" : "Create contact.", + "operationId" : "Contact_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Contact" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperContact" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/country/{id}" : { + "get" : { + "tags" : [ "country" ], + "summary" : "Get country by ID.", + "operationId" : "Country_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCountry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/country" : { + "get" : { + "tags" : [ "country" ], + "summary" : "Find countries corresponding with sent data.", + "operationId" : "Country_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "code", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isDisabled", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "supportedInZtl", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCountry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/currency/{id}" : { + "get" : { + "tags" : [ "currency" ], + "summary" : "Get currency by ID.", + "operationId" : "Currency_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCurrency" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/currency" : { + "get" : { + "tags" : [ "currency" ], + "summary" : "Find currencies corresponding with sent data.", + "operationId" : "Currency_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "code", + "in" : "query", + "description" : "Currency codes", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCurrency" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/currency/{fromCurrencyID}/{toCurrencyID}/exchangeRate" : { + "get" : { + "tags" : [ "currency" ], + "summary" : "Returns the amount in the specified currency, where the input amount is in fromCurrency, using the newest exchange rate available for the given date", + "operationId" : "CurrencyExchangeRate_convertCurrencyAmount", + "parameters" : [ { + "name" : "fromCurrencyID", + "in" : "path", + "description" : "From Currency ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "toCurrencyID", + "in" : "path", + "description" : "To Currency ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "amount", + "in" : "query", + "description" : "Amount to be exchanged", + "required" : true, + "schema" : { + "type" : "number" + } + }, { + "name" : "date", + "in" : "query", + "description" : "Voucher date", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperNumber" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/currency/{fromCurrencyID}/exchangeRate" : { + "get" : { + "tags" : [ "currency" ], + "summary" : "Returns the amount in the company currency, where the input amount is in fromCurrency, using the newest exchange rate available for the given date", + "operationId" : "CurrencyExchangeRate_getAmountCurrency", + "parameters" : [ { + "name" : "fromCurrencyID", + "in" : "path", + "description" : "From Currency ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "amount", + "in" : "query", + "description" : "Amount to be exchanged", + "required" : true, + "schema" : { + "type" : "number" + } + }, { + "name" : "date", + "in" : "query", + "description" : "Voucher date", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperNumber" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/currency/{id}/rate" : { + "get" : { + "tags" : [ "currency" ], + "summary" : "Find currency exchange rate corresponding with sent data.", + "operationId" : "CurrencyRate_getRate", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Currency id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "Format is yyyy-MM-dd", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCurrencyExchangeRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/customer/{id}" : { + "get" : { + "tags" : [ "customer" ], + "summary" : "Get customer by ID.", + "operationId" : "Customer_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "customer" ], + "summary" : "Update customer. ", + "operationId" : "Customer_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Customer" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "customer" ], + "summary" : "[BETA] Delete customer by ID", + "operationId" : "Customer_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/customer" : { + "get" : { + "tags" : [ "customer" ], + "summary" : "Find customers corresponding with sent data.", + "operationId" : "Customer_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerAccountNumber", + "in" : "query", + "description" : "List of customer numbers", + "schema" : { + "type" : "string" + } + }, { + "name" : "organizationNumber", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "email", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceEmail", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerName", + "in" : "query", + "description" : "Name", + "schema" : { + "type" : "string" + } + }, { + "name" : "phoneNumberMobile", + "in" : "query", + "description" : "Phone number mobile", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "accountManagerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "changedSince", + "in" : "query", + "description" : "Only return elements that have changed since this date and time", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "customer" ], + "summary" : "Create customer. Related customer addresses may also be created.", + "operationId" : "Customer_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Customer" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/customer/list" : { + "put" : { + "tags" : [ "customer" ], + "summary" : "[BETA] Update multiple customers. Addresses can also be updated.", + "operationId" : "CustomerList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Customer" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "customer" ], + "summary" : "[BETA] Create multiple customers. Related supplier addresses may also be created.", + "operationId" : "CustomerList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Customer" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/customer/category/{id}" : { + "get" : { + "tags" : [ "customer/category" ], + "summary" : "Find customer/supplier category by ID.", + "operationId" : "CustomerCategory_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCustomerCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "customer/category" ], + "summary" : "Update customer/supplier category.", + "operationId" : "CustomerCategory_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CustomerCategory" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCustomerCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/customer/category" : { + "get" : { + "tags" : [ "customer/category" ], + "summary" : "Find customer/supplier categories corresponding with sent data.", + "operationId" : "CustomerCategory_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "type", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCustomerCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "customer/category" ], + "summary" : "Add new customer/supplier category.", + "operationId" : "CustomerCategory_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CustomerCategory" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCustomerCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/department/{id}" : { + "get" : { + "tags" : [ "department" ], + "summary" : "Get department by ID.", + "operationId" : "Department_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "department" ], + "summary" : "Update department.", + "operationId" : "Department_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Department" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "department" ], + "summary" : "Delete department by ID", + "operationId" : "Department_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/department" : { + "get" : { + "tags" : [ "department" ], + "summary" : "Find department corresponding with sent data.", + "operationId" : "Department_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "departmentNumber", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "departmentManagerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "true - return only inactive departments; false - return only active departments; unspecified - return both types", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "department" ], + "summary" : "Add new department.", + "operationId" : "Department_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Department" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/department/list" : { + "put" : { + "tags" : [ "department" ], + "summary" : "Update multiple departments.", + "operationId" : "DepartmentList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Department" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "department" ], + "summary" : "Register new departments.", + "operationId" : "DepartmentList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Department" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/department/query" : { + "get" : { + "tags" : [ "department" ], + "summary" : "Wildcard search.", + "operationId" : "DepartmentQuery_query", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 25 + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, name" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "true - return only inactive departments; false - return only active departments; unspecified - return both types", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDepartment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/division" : { + "get" : { + "tags" : [ "division" ], + "summary" : "Get divisions.", + "operationId" : "Division_search", + "parameters" : [ { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDivision" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "division" ], + "summary" : "Create division.", + "operationId" : "Division_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Division" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDivision" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/division/list" : { + "put" : { + "tags" : [ "division" ], + "summary" : "Update multiple divisions.", + "operationId" : "DivisionList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Division" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDivision" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "division" ], + "summary" : "Create divisions.", + "operationId" : "DivisionList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Division" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDivision" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/division/{id}" : { + "put" : { + "tags" : [ "division" ], + "summary" : "Update division information.", + "operationId" : "Division_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Division" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDivision" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/document/{id}/content" : { + "get" : { + "tags" : [ "document" ], + "summary" : "[BETA] Get content of document given by ID.", + "operationId" : "DocumentContent_downloadContent", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of document to download content from.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "download", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "responses" : { + "200" : { + "description" : "Successfully fetched the document", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "byte" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/document/{id}" : { + "get" : { + "tags" : [ "document" ], + "summary" : "[BETA] Get document by ID.", + "operationId" : "Document_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocument" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/account/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with account object type.", + "operationId" : "DocumentArchiveAccount_getAccount", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Account Document Archive.", + "operationId" : "DocumentArchiveAccount_accountPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/asset/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with asset object type.", + "operationId" : "DocumentArchiveAsset_getAsset", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Asset Document Archive.", + "operationId" : "DocumentArchiveAsset_assetPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/customer/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with customer object type.", + "operationId" : "DocumentArchiveCustomer_getCustomer", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Customer Document Archive.", + "operationId" : "DocumentArchiveCustomer_customerPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/{id}" : { + "put" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Update document archive.", + "operationId" : "DocumentArchive_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/DocumentArchive" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Delete document archive.", + "operationId" : "DocumentArchive_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/dynamicControlForm/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with control form object type.", + "operationId" : "DocumentArchiveDynamicControlForm_getDynamicControlForm", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Control Form Document Archive.", + "operationId" : "DocumentArchiveDynamicControlForm_dynamicControlFormPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/employee/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with employee object type.", + "operationId" : "DocumentArchiveEmployee_getEmployee", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Employee Document Archive.", + "operationId" : "DocumentArchiveEmployee_employeePost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/product/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with product object type.", + "operationId" : "DocumentArchiveProduct_getProduct", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Product Document Archive.", + "operationId" : "DocumentArchiveProduct_productPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/project/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with project object type.", + "operationId" : "DocumentArchiveProject_getProject", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Project Document Archive.", + "operationId" : "DocumentArchiveProject_projectPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/supplier/{id}" : { + "get" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Find documents archived associated with supplier object type.", + "operationId" : "DocumentArchiveSupplier_getSupplier", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload file to Supplier Document Archive.", + "operationId" : "DocumentArchiveSupplier_supplierPost", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/documentArchive/reception" : { + "post" : { + "tags" : [ "documentArchive" ], + "summary" : "[BETA] Upload a file to the document archive reception. Send as multipart form.", + "operationId" : "DocumentArchiveReception_receptionPost", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/{id}" : { + "get" : { + "tags" : [ "employee" ], + "summary" : "Get employee by ID.", + "operationId" : "Employee_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee" ], + "summary" : "Update employee.", + "operationId" : "Employee_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Employee" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/list" : { + "post" : { + "tags" : [ "employee" ], + "summary" : "Create several employees.", + "operationId" : "EmployeeList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Employee" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee" : { + "get" : { + "tags" : [ "employee" ], + "summary" : "Find employees corresponding with sent data.", + "operationId" : "Employee_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "firstName", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "lastName", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeNumber", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "email", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "allowInformationRegistration", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "includeContacts", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "onlyProjectManagers", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "onlyContacts", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "assignableProjectManagers", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "periodStart", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "periodEnd", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "hasSystemAccess", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "onlyEmployeeTokens", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee" ], + "summary" : "Create one employee.", + "operationId" : "Employee_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Employee" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/searchForEmployeesAndContacts" : { + "get" : { + "tags" : [ "employee" ], + "summary" : "Get employees and contacts by parameters. Include contacts by default.", + "operationId" : "EmployeeSearchForEmployeesAndContacts_searchForEmployeesAndContacts", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "firstName", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "lastName", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "email", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "includeContacts", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "hasSystemAccess", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "excludeReadOnly", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, employeeNumber, firstName, lastName, email, pictureId" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/category/{id}" : { + "get" : { + "tags" : [ "employee/category" ], + "summary" : "Get employee category by ID.", + "operationId" : "EmployeeCategory_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeeCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/category" ], + "summary" : "Update employee category information.", + "operationId" : "EmployeeCategory_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EmployeeCategory" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeeCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "employee/category" ], + "summary" : "Delete employee category by ID", + "operationId" : "EmployeeCategory_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/category/list" : { + "put" : { + "tags" : [ "employee/category" ], + "summary" : "Update multiple employee categories.", + "operationId" : "EmployeeCategoryList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EmployeeCategory" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployeeCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/category" ], + "summary" : "Create new employee categories.", + "operationId" : "EmployeeCategoryList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EmployeeCategory" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployeeCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "employee/category" ], + "summary" : "Delete multiple employee categories", + "operationId" : "EmployeeCategoryList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/category" : { + "get" : { + "tags" : [ "employee/category" ], + "summary" : "Find employee category corresponding with sent data.", + "operationId" : "EmployeeCategory_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployeeCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/category" ], + "summary" : "Create a new employee category.", + "operationId" : "EmployeeCategory_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EmployeeCategory" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeeCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/{id}" : { + "get" : { + "tags" : [ "employee/employment" ], + "summary" : "Find employment by ID.", + "operationId" : "EmployeeEmployment_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/employment" ], + "summary" : "Update employemnt. ", + "operationId" : "EmployeeEmployment_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Employment" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment" : { + "get" : { + "tags" : [ "employee/employment" ], + "summary" : "Find all employments for employee.", + "operationId" : "EmployeeEmployment_search", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/employment" ], + "summary" : "Create employment.", + "operationId" : "EmployeeEmployment_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Employment" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/details/{id}" : { + "get" : { + "tags" : [ "employee/employment/details" ], + "summary" : "Find employment details by ID.", + "operationId" : "EmployeeEmploymentDetails_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmploymentDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/employment/details" ], + "summary" : "Update employment details. ", + "operationId" : "EmployeeEmploymentDetails_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EmploymentDetails" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmploymentDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/details" : { + "get" : { + "tags" : [ "employee/employment/details" ], + "summary" : "Find all employmentdetails for employment.", + "operationId" : "EmployeeEmploymentDetails_search", + "parameters" : [ { + "name" : "employmentId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/employment/details" ], + "summary" : "Create employment details.", + "operationId" : "EmployeeEmploymentDetails_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EmploymentDetails" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmploymentDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/employmentType/employmentEndReasonType" : { + "get" : { + "tags" : [ "employee/employment/employmentType" ], + "summary" : "Find all employment end reason type IDs.", + "operationId" : "EmployeeEmploymentEmploymentTypeEmploymentEndReasonType_getEmploymentEndReasonType", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/employmentType/employmentFormType" : { + "get" : { + "tags" : [ "employee/employment/employmentType" ], + "summary" : "Find all employment form type IDs.", + "operationId" : "EmployeeEmploymentEmploymentTypeEmploymentFormType_getEmploymentFormType", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/employmentType/maritimeEmploymentType" : { + "get" : { + "tags" : [ "employee/employment/employmentType" ], + "summary" : "Find all maritime employment type IDs.", + "operationId" : "EmployeeEmploymentEmploymentTypeMaritimeEmploymentType_getMaritimeEmploymentType", + "parameters" : [ { + "name" : "type", + "in" : "query", + "description" : "maritimeEmploymentType", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "SHIP_REGISTER", "SHIP_TYPE", "TRADE_AREA" ] + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/employmentType/salaryType" : { + "get" : { + "tags" : [ "employee/employment/employmentType" ], + "summary" : "Find all salary type IDs.", + "operationId" : "EmployeeEmploymentEmploymentTypeSalaryType_getSalaryType", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/employmentType/scheduleType" : { + "get" : { + "tags" : [ "employee/employment/employmentType" ], + "summary" : "Find all schedule type IDs.", + "operationId" : "EmployeeEmploymentEmploymentTypeScheduleType_getScheduleType", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/employmentType" : { + "get" : { + "tags" : [ "employee/employment/employmentType" ], + "summary" : "Find all employment type IDs.", + "operationId" : "EmployeeEmploymentEmploymentType_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmploymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/leaveOfAbsence/{id}" : { + "get" : { + "tags" : [ "employee/employment/leaveOfAbsence" ], + "summary" : "Find leave of absence by ID.", + "operationId" : "EmployeeEmploymentLeaveOfAbsence_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLeaveOfAbsence" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/employment/leaveOfAbsence" ], + "summary" : "Update leave of absence.", + "operationId" : "EmployeeEmploymentLeaveOfAbsence_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/LeaveOfAbsence" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLeaveOfAbsence" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/leaveOfAbsence" : { + "get" : { + "tags" : [ "employee/employment/leaveOfAbsence" ], + "summary" : "Find all leave of absence corresponding with the sent data.", + "operationId" : "EmployeeEmploymentLeaveOfAbsence_search", + "parameters" : [ { + "name" : "employmentIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "minPercentage", + "in" : "query", + "description" : "Must be between 0-100.", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 0 + } + }, { + "name" : "maxPercentage", + "in" : "query", + "description" : "Must be between 0-100.", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 100 + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseLeaveOfAbsence" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/employment/leaveOfAbsence" ], + "summary" : "Create leave of absence.", + "operationId" : "EmployeeEmploymentLeaveOfAbsence_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/LeaveOfAbsence" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLeaveOfAbsence" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/leaveOfAbsence/list" : { + "post" : { + "tags" : [ "employee/employment/leaveOfAbsence" ], + "summary" : "Create multiple leave of absences.", + "operationId" : "EmployeeEmploymentLeaveOfAbsenceList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/LeaveOfAbsence" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseLeaveOfAbsence" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/leaveOfAbsenceType" : { + "get" : { + "tags" : [ "employee/employment/leaveOfAbsenceType" ], + "summary" : "Find all leave of absence type IDs.", + "operationId" : "EmployeeEmploymentLeaveOfAbsenceType_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseLeaveOfAbsenceType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/occupationCode/{id}" : { + "get" : { + "tags" : [ "employee/employment/occupationCode" ], + "summary" : "Get occupation by ID.", + "operationId" : "EmployeeEmploymentOccupationCode_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOccupationCode" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/occupationCode" : { + "get" : { + "tags" : [ "employee/employment/occupationCode" ], + "summary" : "Find all profession codes.", + "operationId" : "EmployeeEmploymentOccupationCode_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Element ID", + "schema" : { + "type" : "string" + } + }, { + "name" : "nameNO", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "code", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseOccupationCode" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/remunerationType" : { + "get" : { + "tags" : [ "employee/employment/remunerationType" ], + "summary" : "Find all remuneration type IDs.", + "operationId" : "EmployeeEmploymentRemunerationType_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseRemunerationType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/employment/workingHoursScheme" : { + "get" : { + "tags" : [ "employee/employment/workingHoursScheme" ], + "summary" : "Find working hours scheme ID.", + "operationId" : "EmployeeEmploymentWorkingHoursScheme_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseWorkingHoursScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/hourlyCostAndRate/{id}" : { + "get" : { + "tags" : [ "employee/hourlyCostAndRate" ], + "summary" : "Find hourly cost and rate by ID.", + "operationId" : "EmployeeHourlyCostAndRate_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHourlyCostAndRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/hourlyCostAndRate" ], + "summary" : "Update hourly cost and rate. ", + "operationId" : "EmployeeHourlyCostAndRate_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/HourlyCostAndRate" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHourlyCostAndRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/hourlyCostAndRate" : { + "get" : { + "tags" : [ "employee/hourlyCostAndRate" ], + "summary" : "Find all hourly cost and rates for employee.", + "operationId" : "EmployeeHourlyCostAndRate_search", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseHourlyCostAndRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/hourlyCostAndRate" ], + "summary" : "Create hourly cost and rate.", + "operationId" : "EmployeeHourlyCostAndRate_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/HourlyCostAndRate" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHourlyCostAndRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/nextOfKin/{id}" : { + "get" : { + "tags" : [ "employee/nextOfKin" ], + "summary" : "Find next of kin by ID.", + "operationId" : "EmployeeNextOfKin_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperNextOfKin" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/nextOfKin" ], + "summary" : "Update next of kin. ", + "operationId" : "EmployeeNextOfKin_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/NextOfKin" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperNextOfKin" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/nextOfKin" : { + "get" : { + "tags" : [ "employee/nextOfKin" ], + "summary" : "Find all next of kin for employee.", + "operationId" : "EmployeeNextOfKin_search", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseNextOfKin" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/nextOfKin" ], + "summary" : "Create next of kin.", + "operationId" : "EmployeeNextOfKin_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/NextOfKin" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperNextOfKin" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/preferences/:changeLanguage" : { + "put" : { + "tags" : [ "employee/preferences" ], + "summary" : "Change current employees language to the given language", + "operationId" : "EmployeePreferencesChangeLanguage_changeLanguage", + "parameters" : [ { + "name" : "language", + "in" : "query", + "description" : "Language to change to", + "schema" : { + "type" : "string", + "enum" : [ "NO", "EN" ] + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeePreferences" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/preferences/>loggedInEmployeePreferences" : { + "get" : { + "tags" : [ "employee/preferences" ], + "summary" : "Get employee preferences for current user", + "operationId" : "EmployeePreferencesLoggedInEmployeePreferences_loggedInEmployeePreferences", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeePreferences" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/preferences/{id}" : { + "put" : { + "tags" : [ "employee/preferences" ], + "summary" : "Update employee preferences information.", + "operationId" : "EmployeePreferences_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EmployeePreferences" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeePreferences" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/preferences/list" : { + "put" : { + "tags" : [ "employee/preferences" ], + "summary" : "Update multiple employee preferences.", + "operationId" : "EmployeePreferencesList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EmployeePreferences" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployeePreferences" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/preferences" : { + "get" : { + "tags" : [ "employee/preferences" ], + "summary" : "Find employee preferences corresponding with sent data.", + "operationId" : "EmployeePreferences_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployeePreferences" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/standardTime/{id}" : { + "get" : { + "tags" : [ "employee/standardTime" ], + "summary" : "Find standard time by ID.", + "operationId" : "EmployeeStandardTime_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "employee/standardTime" ], + "summary" : "Update standard time. ", + "operationId" : "EmployeeStandardTime_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/StandardTime" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/standardTime/byDate" : { + "get" : { + "tags" : [ "employee/standardTime" ], + "summary" : "Find standard time for employee by date.", + "operationId" : "EmployeeStandardTimeByDate_getByDate", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/standardTime" : { + "get" : { + "tags" : [ "employee/standardTime" ], + "summary" : "Find all standard times for employee.", + "operationId" : "EmployeeStandardTime_search", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "employee/standardTime" ], + "summary" : "Create standard time.", + "operationId" : "EmployeeStandardTime_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/StandardTime" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/entitlement/client" : { + "get" : { + "tags" : [ "employee/entitlement" ], + "summary" : "[BETA] Find all entitlements at client for user.", + "operationId" : "EmployeeEntitlementClient_client", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Client ID", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEntitlement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/entitlement/{id}" : { + "get" : { + "tags" : [ "employee/entitlement" ], + "summary" : "Get entitlement by ID.", + "operationId" : "EmployeeEntitlement_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEntitlement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/entitlement/:grantClientEntitlementsByTemplate" : { + "put" : { + "tags" : [ "employee/entitlement" ], + "summary" : "[BETA] Update employee entitlements in client account.", + "operationId" : "EmployeeEntitlementGrantClientEntitlementsByTemplate_grantClientEntitlementsByTemplate", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Client ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "template", + "in" : "query", + "description" : "Template", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "NONE_PRIVILEGES", "STANDARD_PRIVILEGES_ACCOUNTANT", "STANDARD_PRIVILEGES_AUDITOR", "ALL_PRIVILEGES", "AGRO_READ_ONLY", "AGRO_READ_APPROVE", "AGRO_READ_WRITE", "AGRO_READ_WRITE_APPROVE", "AGRO_PAYROLL_ADMIN", "AGRO_PAYROLL_CLERK", "AGRO_INVOICE_ADMIN", "AGRO_INVOICE_CLERK" ] + } + }, { + "name" : "addToExisting", + "in" : "query", + "description" : "Add template to existing entitlements", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/entitlement/:grantEntitlementsByTemplate" : { + "put" : { + "tags" : [ "employee/entitlement" ], + "summary" : "[BETA] Update employee entitlements.", + "description" : "The user will only receive the entitlements which are possible with the registered user type", + "operationId" : "EmployeeEntitlementGrantEntitlementsByTemplate_grantEntitlementsByTemplate", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "template", + "in" : "query", + "description" : "Template", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "NONE_PRIVILEGES", "ALL_PRIVILEGES", "INVOICING_MANAGER", "PERSONELL_MANAGER", "ACCOUNTANT", "AUDITOR", "DEPARTMENT_LEADER" ] + } + } ], + "responses" : { + "200" : { + "description" : "Employee entitlements updated successfully", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/employee/entitlement" : { + "get" : { + "tags" : [ "employee/entitlement" ], + "summary" : "Find all entitlements for user.", + "operationId" : "EmployeeEntitlement_search", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEntitlement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/event/{eventType}" : { + "get" : { + "tags" : [ "event" ], + "summary" : "[BETA] Get example webhook payload", + "operationId" : "Event_example", + "parameters" : [ { + "name" : "eventType", + "in" : "path", + "description" : "Event type, from /event endpoint", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEventInfo" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/event" : { + "get" : { + "tags" : [ "event" ], + "summary" : "[BETA] Get all (WebHook) event keys.", + "operationId" : "Event_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMapStringEventInfoDescription" + } + } + } + } + } + } + }, + "/event/subscription/{id}" : { + "get" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Get subscription by ID.", + "operationId" : "EventSubscription_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSubscription" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Change a current subscription, based on id.", + "operationId" : "EventSubscription_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/Subscription" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSubscription" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Delete the given subscription.", + "operationId" : "EventSubscription_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/event/subscription/list" : { + "put" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Update multiple subscription.", + "operationId" : "EventSubscriptionList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Subscription" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSubscription" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Create multiple subscriptions for current EmployeeToken.", + "operationId" : "EventSubscriptionList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Subscription" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSubscription" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Delete multiple subscriptions.", + "operationId" : "EventSubscriptionList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/event/subscription" : { + "get" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Find all ongoing subscriptions.", + "operationId" : "EventSubscription_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSubscription" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "event/subscription" ], + "summary" : "[BETA] Create a new subscription for current EmployeeToken.", + "operationId" : "EventSubscription_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Subscription" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSubscription" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/{id}" : { + "get" : { + "tags" : [ "inventory" ], + "summary" : "Get inventory by ID.", + "operationId" : "Inventory_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInventory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "inventory" ], + "summary" : "Update inventory.", + "operationId" : "Inventory_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Inventory" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInventory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "inventory" ], + "summary" : "Delete inventory.", + "operationId" : "Inventory_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory" : { + "get" : { + "tags" : [ "inventory" ], + "summary" : "Find inventory corresponding with sent data.", + "operationId" : "Inventory_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isMainInventory", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInventory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "inventory" ], + "summary" : "Create new inventory.", + "operationId" : "Inventory_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Inventory" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInventory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/inventories" : { + "get" : { + "tags" : [ "inventory/inventories" ], + "summary" : "Find inventories corresponding with sent data.", + "operationId" : "InventoryInventories_search", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "inventoryId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "onlyProductWithChangedStatus", + "in" : "query", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInventories" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/location/{id}" : { + "get" : { + "tags" : [ "inventory/location" ], + "summary" : "Get inventory location by ID. Only available for Logistics Basic.", + "operationId" : "InventoryLocation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "inventory/location" ], + "summary" : "Update inventory location. Only available for Logistics Basic.", + "operationId" : "InventoryLocation_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "inventory/location" ], + "summary" : "Delete inventory location. Only available for Logistics Basic.", + "operationId" : "InventoryLocation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/location/list" : { + "put" : { + "tags" : [ "inventory/location" ], + "summary" : "Update multiple inventory locations. Only available for Logistics Basic.", + "operationId" : "InventoryLocationList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "inventory/location" ], + "summary" : "Add multiple inventory locations. Only available for Logistics Basic.", + "operationId" : "InventoryLocationList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "inventory/location" ], + "summary" : "Delete inventory location. Only available for Logistics Basic.", + "operationId" : "InventoryLocationList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/location" : { + "get" : { + "tags" : [ "inventory/location" ], + "summary" : "Find inventory locations by inventory ID. Only available for Logistics Basic.", + "operationId" : "InventoryLocation_search", + "parameters" : [ { + "name" : "warehouseId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "inventory/location" ], + "summary" : "Create new inventory location. Only available for Logistics Basic.", + "operationId" : "InventoryLocation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/stocktaking/{id}" : { + "get" : { + "tags" : [ "inventory/stocktaking" ], + "summary" : "Get stocktaking by ID.", + "operationId" : "InventoryStocktaking_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStocktaking" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "inventory/stocktaking" ], + "summary" : "Update stocktaking.", + "operationId" : "InventoryStocktaking_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Stocktaking" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStocktaking" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "inventory/stocktaking" ], + "summary" : "Delete stocktaking.", + "operationId" : "InventoryStocktaking_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/stocktaking" : { + "get" : { + "tags" : [ "inventory/stocktaking" ], + "summary" : "Find stocktaking corresponding with sent data.", + "operationId" : "InventoryStocktaking_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isCompleted", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "inventoryId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseStocktaking" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "inventory/stocktaking" ], + "summary" : "Create new stocktaking.", + "operationId" : "InventoryStocktaking_post", + "parameters" : [ { + "name" : "typeOfStocktaking", + "in" : "query", + "schema" : { + "type" : "string", + "enum" : [ "ALL_PRODUCTS_WITH_INVENTORIES", "INCLUDE_PRODUCTS", "NO_PRODUCTS" ] + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Stocktaking" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperStocktaking" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/stocktaking/productline/{id}/:changeLocation" : { + "put" : { + "tags" : [ "inventory/stocktaking/productline" ], + "summary" : "[Beta] Change location on order line.", + "operationId" : "InventoryStocktakingProductlineChangeLocation_changeLocation", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Product Line id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "warehouseLocationId", + "in" : "query", + "description" : "Warehouse location id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/stocktaking/productline/{id}" : { + "get" : { + "tags" : [ "inventory/stocktaking/productline" ], + "summary" : "Get order line by ID.", + "operationId" : "InventoryStocktakingProductline_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "inventory/stocktaking/productline" ], + "summary" : "Update order line.", + "operationId" : "InventoryStocktakingProductline_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductLine" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "inventory/stocktaking/productline" ], + "summary" : "Delete order line.", + "operationId" : "InventoryStocktakingProductline_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/inventory/stocktaking/productline" : { + "get" : { + "tags" : [ "inventory/stocktaking/productline" ], + "summary" : "Find all order lines by stocktaking ID.", + "operationId" : "InventoryStocktakingProductline_search", + "parameters" : [ { + "name" : "stocktakingId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "productGroupIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "locationIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "productLineStatus", + "in" : "query", + "description" : "Productline status", + "schema" : { + "type" : "string", + "enum" : [ "ALL_PRODUCTS", "COUNTED_PRODUCTS", "NOT_COUNTED_PRODUCTS" ], + "default" : "ALL_PRODUCTS" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 10000 + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "inventory/stocktaking/productline" ], + "summary" : "Create order line. When creating several order lines, use /list for better performance.", + "operationId" : "InventoryStocktakingProductline_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductLine" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/{id}/:createCreditNote" : { + "put" : { + "tags" : [ "invoice" ], + "summary" : "Creates a new Invoice representing a credit memo that nullifies the given invoice. Updates this invoice and any pre-existing inverse invoice.", + "operationId" : "InvoiceCreateCreditNote_createCreditNote", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Invoice id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "Credit note date", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "Comment", + "schema" : { + "type" : "string" + } + }, { + "name" : "creditNoteEmail", + "in" : "query", + "description" : "The credit note will not be sent if the customer send type is email and this field is empty", + "schema" : { + "type" : "string" + } + }, { + "name" : "sendToCustomer", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "sendType", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "EMAIL", "EHF", "EFAKTURA", "AVTALEGIRO", "VIPPS", "PAPER", "MANUAL", "DIRECT", "AUTOINVOICE_EHF_OUTBOUND", "AUTOINVOICE_EHF_INCOMING", "PEPPOL_EHF_INCOMING" ] + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/{id}/:createReminder" : { + "put" : { + "tags" : [ "invoice" ], + "summary" : "Create invoice reminder and sends it by the given dispatch type. Supports the reminder types SOFT_REMINDER, REMINDER and NOTICE_OF_DEBT_COLLECTION. DispatchType NETS_PRINT must have type NOTICE_OF_DEBT_COLLECTION. SMS and NETS_PRINT must be activated prior to usage in the API.", + "operationId" : "InvoiceCreateReminder_createReminder", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "type", + "in" : "query", + "description" : "type", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "SOFT_REMINDER", "REMINDER", "NOTICE_OF_DEBT_COLLECTION", "DEBT_COLLECTION" ] + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "includeCharge", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "includeInterest", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "dispatchType", + "in" : "query", + "description" : "dispatchType", + "schema" : { + "type" : "string", + "enum" : [ "NETS_PRINT", "EMAIL", "OWN_PRINTER", "SFTP", "API", "SMS" ] + } + }, { + "name" : "dispatchTypes", + "in" : "query", + "description" : "List of dispatch types (comma separated enum values)", + "schema" : { + "type" : "string" + } + }, { + "name" : "smsNumber", + "in" : "query", + "description" : "SMS number (must be a valid Norwegian telephone number)", + "schema" : { + "type" : "string" + } + }, { + "name" : "email", + "in" : "query", + "description" : "Email address to send the reminder to. (Defaults to to the same email list as the invoice if not provided)", + "schema" : { + "type" : "string" + } + }, { + "name" : "address", + "in" : "query", + "description" : "Address to send the reminder to. (Defaults to the customer address if not provided)", + "schema" : { + "type" : "string" + } + }, { + "name" : "postalCode", + "in" : "query", + "description" : "Postal code to send the reminder to (Defaults to the customer postal code if not provided)", + "schema" : { + "type" : "string" + } + }, { + "name" : "city", + "in" : "query", + "description" : "City to send the reminder to (Defaults to the customer city if not provided)", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInteger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/{id}" : { + "get" : { + "tags" : [ "invoice" ], + "summary" : "Get invoice by ID.", + "operationId" : "Invoice_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/{invoiceId}/pdf" : { + "get" : { + "tags" : [ "invoice" ], + "summary" : "Get invoice document by invoice ID.", + "operationId" : "InvoicePdf_downloadPdf", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "Invoice ID from which PDF is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "download", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "responses" : { + "200" : { + "description" : "PDF document", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + }, + "application/pdf" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/{id}/:payment" : { + "put" : { + "tags" : [ "invoice" ], + "summary" : "Update invoice. The invoice is updated with payment information. The amount is in the invoice’s currency.", + "operationId" : "InvoicePayment_payment", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Invoice id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "paymentDate", + "in" : "query", + "description" : "Payment date", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "paymentTypeId", + "in" : "query", + "description" : "PaymentType id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "paidAmount", + "in" : "query", + "description" : "Amount paid by the customer in the currency determined by the account of the paymentType", + "required" : true, + "schema" : { + "type" : "number" + } + }, { + "name" : "paidAmountCurrency", + "in" : "query", + "description" : "Amount paid by customer in the invoice currency. Optional, but required for invoices in alternate currencies.", + "schema" : { + "type" : "number" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice" : { + "get" : { + "tags" : [ "invoice" ], + "summary" : "Find invoices corresponding with sent data. Includes charged outgoing invoices only.", + "operationId" : "Invoice_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceNumber", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "kid", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "voucherId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "invoice" ], + "summary" : "Create invoice. Related Order and OrderLines can be created first, or included as new objects inside the Invoice.", + "operationId" : "Invoice_post", + "parameters" : [ { + "name" : "sendToCustomer", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "paymentTypeId", + "in" : "query", + "description" : "Payment type to register prepayment of the invoice. paymentTypeId and paidAmount are optional, but both must be provided if the invoice has already been paid.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "paidAmount", + "in" : "query", + "description" : "Paid amount to register prepayment of the invoice, in invoice currency. paymentTypeId and paidAmount are optional, but both must be provided if the invoice has already been paid.", + "schema" : { + "type" : "number" + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Invoice" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/list" : { + "post" : { + "tags" : [ "invoice" ], + "summary" : "[BETA] Create multiple invoices. Max 100 at a time.", + "operationId" : "InvoiceList_postList", + "parameters" : [ { + "name" : "sendToCustomer", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Invoice" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/{id}/:send" : { + "put" : { + "tags" : [ "invoice" ], + "summary" : "Send invoice by ID and sendType. Optionally override email recipient.", + "operationId" : "InvoiceSend_send", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "sendType", + "in" : "query", + "description" : "SendType", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "EMAIL", "EHF", "AVTALEGIRO", "EFAKTURA", "VIPPS", "PAPER", "MANUAL" ] + } + }, { + "name" : "overrideEmailAddress", + "in" : "query", + "description" : "Will override email address if sendType = EMAIL", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoiceRemark/{id}" : { + "get" : { + "tags" : [ "invoiceRemark" ], + "summary" : "Get invoice remark by ID.", + "operationId" : "InvoiceRemark_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoiceRemark" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/paymentType/{id}" : { + "get" : { + "tags" : [ "invoice/paymentType" ], + "summary" : "Get payment type by ID.", + "operationId" : "InvoicePaymentType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPaymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/paymentType" : { + "get" : { + "tags" : [ "invoice/paymentType" ], + "summary" : "Find payment type corresponding with sent data.", + "operationId" : "InvoicePaymentType_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePaymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/details/{id}" : { + "get" : { + "tags" : [ "invoice/details" ], + "summary" : "Get ProjectInvoiceDetails by ID.", + "operationId" : "InvoiceDetails_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectInvoiceDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/invoice/details" : { + "get" : { + "tags" : [ "invoice/details" ], + "summary" : "Find ProjectInvoiceDetails corresponding with sent data.", + "operationId" : "InvoiceDetails_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectInvoiceDetails" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/openPost" : { + "get" : { + "tags" : [ "ledger" ], + "summary" : "Find open posts corresponding with sent data.", + "operationId" : "LedgerOpenPost_openPost", + "parameters" : [ { + "name" : "date", + "in" : "query", + "description" : "Invoice date. Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue1Id", + "in" : "query", + "description" : "Id of first free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue2Id", + "in" : "query", + "description" : "Id of second free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue3Id", + "in" : "query", + "description" : "Id of third free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseLedgerAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger" : { + "get" : { + "tags" : [ "ledger" ], + "summary" : "Get ledger (hovedbok).", + "operationId" : "Ledger_search", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "openPostings", + "in" : "query", + "description" : "Deprecated", + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue1Id", + "in" : "query", + "description" : "Id of the first free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue2Id", + "in" : "query", + "description" : "Id of the second free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue3Id", + "in" : "query", + "description" : "Id of the third free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseLedgerAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/account/{id}" : { + "get" : { + "tags" : [ "ledger/account" ], + "summary" : "Get account by ID.", + "operationId" : "LedgerAccount_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "ledger/account" ], + "summary" : "Update account.", + "operationId" : "LedgerAccount_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Account" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "ledger/account" ], + "summary" : "Delete account.", + "operationId" : "LedgerAccount_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/account/list" : { + "put" : { + "tags" : [ "ledger/account" ], + "summary" : "Update multiple accounts.", + "operationId" : "LedgerAccountList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Account" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "ledger/account" ], + "summary" : "Create several accounts.", + "operationId" : "LedgerAccountList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Account" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "ledger/account" ], + "summary" : "Delete multiple accounts.", + "operationId" : "LedgerAccountList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/account" : { + "get" : { + "tags" : [ "ledger/account" ], + "summary" : "Find accounts corresponding with sent data.", + "operationId" : "LedgerAccount_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isBankAccount", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isApplicableForSupplierInvoice", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "ledgerType", + "in" : "query", + "description" : "Ledger type", + "schema" : { + "type" : "string", + "enum" : [ "GENERAL", "CUSTOMER", "VENDOR", "EMPLOYEE", "ASSET" ] + } + }, { + "name" : "isBalanceAccount", + "in" : "query", + "description" : "Balance account", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "saftCode", + "in" : "query", + "description" : "SAF-T code", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "ledger/account" ], + "summary" : "Create a new account.", + "operationId" : "LedgerAccount_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Account" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionName/{id}" : { + "get" : { + "tags" : [ "accountingDimensionName", "ledger/accountingDimensionName" ], + "summary" : "Get a single accounting dimension name by ID", + "operationId" : "LedgerAccountingDimensionName_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "The ID of the accounting dimension name to retrieve", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccountingDimensionName" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "accountingDimensionName", "ledger/accountingDimensionName" ], + "summary" : "Update an accounting dimension", + "operationId" : "LedgerAccountingDimensionName_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Id of the dimension to update", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Accounting dimension name", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AccountingDimensionName" + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccountingDimensionName" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "accountingDimensionName", "ledger/accountingDimensionName" ], + "summary" : "Delete an accounting dimension name by ID", + "description" : "Dimensions with values that have been used in postings cannot be deleted, only made inactive or renamed.", + "operationId" : "LedgerAccountingDimensionName_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the accounting dimension name to delete", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionName" : { + "get" : { + "tags" : [ "accountingDimensionName", "ledger/accountingDimensionName" ], + "summary" : "Get all accounting dimension names.", + "operationId" : "LedgerAccountingDimensionName_getAll", + "parameters" : [ { + "name" : "activeOnly", + "in" : "query", + "description" : "Whether to only return active dimensions (optional)", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields to include in response.", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountingDimensionName" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "accountingDimensionName", "ledger/accountingDimensionName" ], + "summary" : "Create a new free (aka 'user defined') accounting dimension", + "description" : "Creates a new dimension, will be given the next unused dimension index, up to the maximum of 3 free dimensions", + "operationId" : "LedgerAccountingDimensionName_post", + "requestBody" : { + "description" : "Dimension name data", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AccountingDimensionName" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccountingDimensionName" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionName/search" : { + "get" : { + "tags" : [ "accountingDimensionName", "ledger/accountingDimensionName" ], + "summary" : "Search for accounting dimension names according to criteria.", + "operationId" : "LedgerAccountingDimensionNameSearch_search", + "parameters" : [ { + "name" : "dimensionIndex", + "in" : "query", + "description" : "Dimension index to filter by (1, 2, or 3)", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "activeOnly", + "in" : "query", + "description" : "Whether to only return active dimensions (optional)", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "onlyDimensionsWithActiveValues", + "in" : "query", + "description" : "Whether to only return active dimensions with active values which are shown in voucher registration (optional)", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields to include in response.", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountingDimensionName" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionValue/{id}" : { + "get" : { + "tags" : [ "accountingDimensionValue", "ledger/accountingDimensionValue" ], + "summary" : "Find accounting dimension values by ID.", + "operationId" : "LedgerAccountingDimensionValue_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccountingDimensionValue" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "accountingDimensionValue", "ledger/accountingDimensionValue" ], + "summary" : "Delete an accounting dimension value. Values that have been used in postings can not be deleted.", + "operationId" : "LedgerAccountingDimensionValue_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of the accounting dimension value to delete", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionValue" : { + "post" : { + "tags" : [ "accountingDimensionValue", "ledger/accountingDimensionValue" ], + "summary" : "Create a new value for one of the free (aka 'user defined') accounting dimensions", + "operationId" : "LedgerAccountingDimensionValue_post", + "requestBody" : { + "description" : "Dimension value data", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccountingDimensionValue" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionValue/list" : { + "put" : { + "tags" : [ "accountingDimensionValue", "ledger/accountingDimensionValue" ], + "summary" : "Update accounting dimension values", + "operationId" : "LedgerAccountingDimensionValueList_putList", + "requestBody" : { + "description" : "List of accounting dimension values to update", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountingDimensionValue" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingDimensionValue/search" : { + "get" : { + "tags" : [ "accountingDimensionValue", "ledger/accountingDimensionValue" ], + "summary" : "Search for accounting dimension values according to criteria.", + "operationId" : "LedgerAccountingDimensionValueSearch_searchAccountingDimensionValues", + "parameters" : [ { + "name" : "dimensionIndex", + "in" : "query", + "description" : "Dimension index to filter by (1, 2, or 3)", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "activeOnly", + "in" : "query", + "description" : "Whether to only return active dimension values (optional)", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "showInVoucherRegistration", + "in" : "query", + "description" : "Return only values shown in voucher registration (optional)", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields to include in response.", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountingDimensionValue" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingPeriod/{id}" : { + "get" : { + "tags" : [ "ledger/accountingPeriod" ], + "summary" : "Get accounting period by ID.", + "operationId" : "LedgerAccountingPeriod_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccountingPeriod" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/accountingPeriod" : { + "get" : { + "tags" : [ "ledger/accountingPeriod" ], + "summary" : "Find accounting periods corresponding with sent data.", + "operationId" : "LedgerAccountingPeriod_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "numberFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "numberTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "startFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "startTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "endFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "endTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 1400 + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccountingPeriod" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/annualAccount/{id}" : { + "get" : { + "tags" : [ "ledger/annualAccount" ], + "summary" : "Get annual account by ID.", + "operationId" : "LedgerAnnualAccount_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAnnualAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/annualAccount" : { + "get" : { + "tags" : [ "ledger/annualAccount" ], + "summary" : "Find annual accounts corresponding with sent data.", + "operationId" : "LedgerAnnualAccount_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "yearFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "yearTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAnnualAccount" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/closeGroup/{id}" : { + "get" : { + "tags" : [ "ledger/closeGroup" ], + "summary" : "Get close group by ID.", + "operationId" : "LedgerCloseGroup_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCloseGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/closeGroup" : { + "get" : { + "tags" : [ "ledger/closeGroup" ], + "summary" : "Find close groups corresponding with sent data.", + "operationId" : "LedgerCloseGroup_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCloseGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/paymentTypeOut/{id}" : { + "get" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Get payment type for outgoing payments by ID.", + "operationId" : "LedgerPaymentTypeOut_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPaymentTypeOut" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Update existing payment type for outgoing payments", + "operationId" : "LedgerPaymentTypeOut_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentTypeOut" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPaymentTypeOut" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Delete payment type for outgoing payments by ID.", + "operationId" : "LedgerPaymentTypeOut_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/paymentTypeOut" : { + "get" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Gets payment types for outgoing payments", + "description" : "This is an API endpoint for getting payment types for outgoing payments. This is equivalent to the section 'Outgoing Payments' under Accounts Settings in Tripletex. These are the payment types listed in supplier invoices, vat returns, salary payments and Tax/ENI", + "operationId" : "LedgerPaymentTypeOut_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePaymentTypeOut" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Create new payment type for outgoing payments", + "operationId" : "LedgerPaymentTypeOut_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PaymentTypeOut" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPaymentTypeOut" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/paymentTypeOut/list" : { + "put" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Update multiple payment types for outgoing payments at once", + "operationId" : "LedgerPaymentTypeOutList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PaymentTypeOut" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePaymentTypeOut" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "ledger/paymentTypeOut" ], + "summary" : "[BETA] Create multiple payment types for outgoing payments at once", + "operationId" : "LedgerPaymentTypeOutList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PaymentTypeOut" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePaymentTypeOut" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/posting/:closePostings" : { + "put" : { + "tags" : [ "ledger/posting" ], + "summary" : "Close postings.", + "operationId" : "LedgerPostingClosePostings_closePostings", + "requestBody" : { + "description" : "JSON object containing a list of Posting IDs to close.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePostingValidationMessage" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/posting/{id}" : { + "get" : { + "tags" : [ "ledger/posting" ], + "summary" : "Find postings by ID.", + "operationId" : "LedgerPosting_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPosting" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/posting/openPost" : { + "get" : { + "tags" : [ "ledger/posting" ], + "summary" : "Find open posts corresponding with sent data.", + "operationId" : "LedgerPostingOpenPost_openPost", + "parameters" : [ { + "name" : "date", + "in" : "query", + "description" : "Invoice date. Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountNumberFrom", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "accountNumberTo", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "accountingDimensionValue1Id", + "in" : "query", + "description" : "Id of first free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue2Id", + "in" : "query", + "description" : "Id of second free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue3Id", + "in" : "query", + "description" : "Id of third free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "sorted", + "in" : "query", + "description" : "Whether to sort the result by voucher (year, number). Set to false for a significantly faster response on large accounts; the same open postings are returned, only unordered (not sorted by voucher).", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePosting" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/posting" : { + "get" : { + "tags" : [ "ledger/posting" ], + "summary" : "Find postings corresponding with sent data.", + "operationId" : "LedgerPosting_search", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "openPostings", + "in" : "query", + "description" : "Deprecated", + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountNumberFrom", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "accountNumberTo", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "type", + "in" : "query", + "description" : "Element ID for filtering", + "schema" : { + "type" : "string", + "enum" : [ "INCOMING_PAYMENT", "INCOMING_PAYMENT_OPPOSITE", "INCOMING_INVOICE_CUSTOMER_POSTING", "INVOICE_EXPENSE", "OUTGOING_INVOICE_CUSTOMER_POSTING", "WAGE" ] + } + }, { + "name" : "accountingDimensionValue1Id", + "in" : "query", + "description" : "Id of first free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue2Id", + "in" : "query", + "description" : "Id of second free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "accountingDimensionValue3Id", + "in" : "query", + "description" : "Id of third free accounting dimension.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePosting" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/postingByDate" : { + "get" : { + "tags" : [ "ledger/postingByDate" ], + "summary" : "Get postings by date range with pagination. Returns the same PostingDTO as /ledger/posting. Simplified endpoint for better performance. Fields and Changes are not supported. Token must have access to all vouchers in the company, otherwise a validation error is returned. If access control for salary information is activated, the token must have access to salary information as well.", + "operationId" : "LedgerPostingByDate_get", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePosting" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/vatSettings" : { + "get" : { + "tags" : [ "ledger/vatSettings" ], + "summary" : "Get VAT settings for the logged in company.", + "operationId" : "LedgerVatSettings_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "ledger/vatSettings" ], + "summary" : "Update VAT settings for the logged in company.", + "operationId" : "LedgerVatSettings_put", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/VatSettings" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/vatType/createRelativeVatType" : { + "put" : { + "tags" : [ "ledger/vatType" ], + "summary" : "Create a new relative VAT Type. These are used if the company has 'forholdsmessig fradrag for inngående MVA'.", + "operationId" : "LedgerVatTypeCreateRelativeVatType_createRelativeVatType", + "parameters" : [ { + "name" : "name", + "in" : "query", + "description" : "VAT type name, max 8 characters.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "vatTypeId", + "in" : "query", + "description" : "VAT type ID. The relative VAT type will behave like this VAT type, except for the basis for calculating the VAT deduction, which is decided by the basis percentage.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "percentage", + "in" : "query", + "description" : "Basis percentage. This percentage will be multiplied with the transaction amount to find the amount that will be the basis for calculating the deduction amount.", + "required" : true, + "schema" : { + "type" : "number" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/vatType/{id}" : { + "get" : { + "tags" : [ "ledger/vatType" ], + "summary" : "Get vat type by ID.", + "operationId" : "LedgerVatType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/vatType" : { + "get" : { + "tags" : [ "ledger/vatType" ], + "summary" : "Find vat types corresponding with sent data.", + "operationId" : "LedgerVatType_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "typeOfVat", + "in" : "query", + "description" : "Type of VAT", + "schema" : { + "type" : "string", + "enum" : [ "OUTGOING", "INCOMING", "INCOMING_INVOICE", "PROJECT", "LEDGER" ] + } + }, { + "name" : "vatDate", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today. Note that this is only used in combination with typeOfVat-parameter. Only valid vatTypes on the given date are returned.", + "schema" : { + "type" : "string" + } + }, { + "name" : "shouldIncludeSpecificationTypes", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVatType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/openingBalance/>correctionVoucher" : { + "get" : { + "tags" : [ "ledger/voucher/openingBalance" ], + "summary" : "Get the correction voucher for the opening balance.", + "operationId" : "LedgerVoucherOpeningBalanceCorrectionVoucher_correctionVoucher", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/openingBalance" : { + "get" : { + "tags" : [ "ledger/voucher/openingBalance" ], + "summary" : "Get the voucher for the opening balance.", + "operationId" : "LedgerVoucherOpeningBalance_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "ledger/voucher/openingBalance" ], + "summary" : "Add an opening balance on the given date. All movements before this date will be 'zeroed out' in a separate correction voucher. The opening balance must have the first day of a month as the date, and it's also recommended to have the first day of the year as the date. If the postings provided don't balance the voucher, the difference will automatically be posted to a help account", + "operationId" : "LedgerVoucherOpeningBalance_post", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "requestBody" : { + "description" : "dto", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/OpeningBalance" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "ledger/voucher/openingBalance" ], + "summary" : "Delete the opening balance. The correction voucher will also be deleted", + "operationId" : "LedgerVoucherOpeningBalance_delete", + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{id}" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Get voucher by ID.", + "operationId" : "LedgerVoucher_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Update voucher. Postings with guiRow==0 will be deleted and regenerated.", + "operationId" : "LedgerVoucher_put", + "parameters" : [ { + "name" : "sendToLedger", + "in" : "query", + "description" : "Should the voucher be sent to ledger? Requires the \"Advanced Voucher\" permission.", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Voucher" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Delete voucher by ID.", + "operationId" : "LedgerVoucher_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{voucherId}/attachment" : { + "post" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Upload attachment to voucher. If the voucher already has an attachment the content will be appended to the existing attachment as new PDF page(s). Valid document formats are PDF, PNG, JPEG and TIFF. Non PDF formats will be converted to PDF. Send as multipart form.", + "operationId" : "LedgerVoucherAttachment_uploadAttachment", + "parameters" : [ { + "name" : "voucherId", + "in" : "path", + "description" : "Voucher ID to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Delete attachment.", + "operationId" : "LedgerVoucherAttachment_deleteAttachment", + "parameters" : [ { + "name" : "voucherId", + "in" : "path", + "description" : "ID of voucher containing the attachment to delete.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "version", + "in" : "query", + "description" : "Version of voucher containing the attachment to delete.", + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "sendToInbox", + "in" : "query", + "description" : "Should the attachment be sent to inbox rather than deleted?", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "split", + "in" : "query", + "description" : "If sendToInbox is true, should the attachment be split into one voucher per page?", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{voucherId}/pdf" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Get PDF representation of voucher by ID.", + "operationId" : "LedgerVoucherPdf_downloadPdf", + "parameters" : [ { + "name" : "voucherId", + "in" : "path", + "description" : "Voucher ID from which PDF is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "PDF representation of the voucher", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/>externalVoucherNumber" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Find vouchers based on the external voucher number.", + "operationId" : "LedgerVoucherExternalVoucherNumber_externalVoucherNumber", + "parameters" : [ { + "name" : "externalVoucherNumber", + "in" : "query", + "description" : "The external voucher number, when voucher is created from import.", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/importDocument" : { + "post" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Upload a document to create one or more vouchers. Valid document formats are PDF, PNG, JPEG and TIFF. EHF/XML is possible with agreement with Tripletex. Send as multipart form.", + "operationId" : "LedgerVoucherImportDocument_importDocument", + "parameters" : [ { + "name" : "split", + "in" : "query", + "description" : "If the document consists of several pages, should the document be split into one voucher per page?", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + }, + "description" : { + "type" : "string", + "description" : "Optional description to use for the voucher(s). If omitted the file name will be used." + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/importGbat10" : { + "post" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Import GBAT10. Send as multipart form.", + "operationId" : "LedgerVoucherImportGbat10_importGbat10", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file", "generateVatPostings" ], + "type" : "object", + "properties" : { + "generateVatPostings" : { + "type" : "boolean", + "description" : "If the import should generate VAT postings" + }, + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + }, + "encoding" : { + "type" : "string", + "description" : "The file encoding", + "default" : "utf-8" + } + } + } + } + } + }, + "responses" : { + "200" : { + "description" : "List of imported voucher IDs", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/IdOnlyDTO" + } + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/>nonPosted" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Find non-posted vouchers.", + "operationId" : "LedgerVoucherNonPosted_nonPosted", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "includeNonApproved", + "in" : "query", + "description" : "Include non-approved vouchers in the result.", + "required" : true, + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "changedSince", + "in" : "query", + "description" : "Only return elements that have changed since this date and time", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{id}/options" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Returns a data structure containing meta information about operations that are available for this voucher. Currently only implemented for DELETE: It is possible to check if the voucher is deletable.", + "operationId" : "LedgerVoucherOptions_options", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucherOptions" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Find vouchers corresponding with sent data.", + "operationId" : "LedgerVoucher_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "numberFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "numberTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "typeId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/VoucherSearchResponse" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Add new voucher. IMPORTANT: Also creates postings. Only the gross amounts will be used. Amounts should be rounded to 2 decimals.", + "operationId" : "LedgerVoucher_post", + "parameters" : [ { + "name" : "sendToLedger", + "in" : "query", + "description" : "Should the voucher be sent to ledger? Requires the \"Advanced Voucher\" permission.", + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Voucher" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/list" : { + "put" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Update multiple vouchers. Postings with guiRow==0 will be deleted and regenerated.", + "operationId" : "LedgerVoucherList_putList", + "parameters" : [ { + "name" : "sendToLedger", + "in" : "query", + "description" : "Should the voucher be sent to ledger? Requires the \"Advanced Voucher\" permission.", + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Voucher" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{id}/:reverse" : { + "put" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Reverses the voucher, and returns the reversed voucher. Supports reversing most voucher types, except salary transactions.", + "operationId" : "LedgerVoucherReverse_reverse", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of voucher that should be reversed.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "Reverse voucher date", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{id}/:sendToInbox" : { + "put" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Send voucher to inbox.", + "operationId" : "LedgerVoucherSendToInbox_sendToInbox", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of voucher that should be sent to inbox.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "version", + "in" : "query", + "description" : "Version of voucher that should be sent to inbox.", + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "Description of why the voucher was rejected. This parameter is only used if the approval feature is enabled.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{id}/:sendToLedger" : { + "put" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Send voucher to ledger.", + "operationId" : "LedgerVoucherSendToLedger_sendToLedger", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of voucher that should be sent to ledger.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "version", + "in" : "query", + "description" : "Version of voucher that should be sent to ledger.", + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Voucher number to use. If omitted or 0 the system will assign the number.", + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "default" : 0 + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/{voucherId}/pdf/{fileName}" : { + "post" : { + "tags" : [ "ledger/voucher" ], + "summary" : "[DEPRECATED] Use POST ledger/voucher/{voucherId}/attachment instead.", + "operationId" : "LedgerVoucherPdf_uploadPdf", + "parameters" : [ { + "name" : "voucherId", + "in" : "path", + "description" : "Voucher ID to upload PDF to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fileName", + "in" : "path", + "description" : "File name to store the pdf under. Will not be the same as the filename on the file returned.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "200" : { + "description" : "PDF uploaded successfully", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/>voucherReception" : { + "get" : { + "tags" : [ "ledger/voucher" ], + "summary" : "Find vouchers in voucher reception.", + "operationId" : "LedgerVoucherVoucherReception_voucherReception", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "searchText", + "in" : "query", + "description" : "Search", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/historical/:closePostings" : { + "put" : { + "tags" : [ "ledger/voucher/historical" ], + "summary" : "[BETA] Close postings.", + "operationId" : "LedgerVoucherHistoricalClosePostings_closePostings", + "parameters" : [ { + "name" : "postingIds", + "in" : "query", + "description" : "[Deprecated] List of Posting IDs to close separated by comma. The postings should have the same customer, supplier or employee. The sum of amount for all postings MUST be 0.0, otherwise an exception will be thrown.", + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "description" : "List of Posting IDs to close separated by comma. The postings should have the same customer, supplier or employee. The sum of amount for all postings MUST be 0.0, otherwise an exception will be thrown.", + "content" : { + "application/json" : { + "schema" : { + "type" : "string" + } + } + } + }, + "responses" : { + "200" : { + "description" : "Postings closed successfully", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/historical/employee" : { + "post" : { + "tags" : [ "ledger/voucher/historical" ], + "summary" : "[BETA] Create one employee, based on import from external system. Validation is less strict, ie. employee department isn't required.", + "operationId" : "LedgerVoucherHistoricalEmployee_postEmployee", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Employee" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEmployee" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/historical/historical" : { + "post" : { + "tags" : [ "ledger/voucher/historical" ], + "summary" : "API endpoint for creating historical vouchers. These are vouchers created outside Tripletex, and should be from closed accounting years. The intended usage is to get access to historical transcations in Tripletex. Also creates postings. All amount fields in postings will be used. VAT postings must be included, these are not generated automatically like they are for normal vouchers in Tripletex. Requires the \\\"All vouchers\\\" and \\\"Advanced Voucher\\\" permissions.", + "operationId" : "LedgerVoucherHistoricalHistorical_postHistorical", + "parameters" : [ { + "name" : "comment", + "in" : "query", + "description" : "Import comment, include the name and version of the source system.", + "schema" : { + "type" : "string" + } + }, { + "name" : "useCustomNumberSeries", + "in" : "query", + "description" : "Use custom number series (true), or use default number series for historical vouchers (false).", + "schema" : { + "type" : "boolean" + } + } ], + "requestBody" : { + "description" : "List of vouchers and related postings to import. Max 500. ", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/HistoricalVoucher" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseHistoricalVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/historical/:reverseHistoricalVouchers" : { + "put" : { + "tags" : [ "ledger/voucher/historical" ], + "summary" : "[BETA] Deletes all historical vouchers. Requires the \"All vouchers\" and \"Advanced Voucher\" permissions.", + "operationId" : "LedgerVoucherHistoricalReverseHistoricalVouchers_reverseHistoricalVouchers", + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucher/historical/{voucherId}/attachment" : { + "post" : { + "tags" : [ "ledger/voucher/historical" ], + "summary" : "Upload attachment to voucher. If the voucher already has an attachment the content will be appended to the existing attachment as new PDF page(s). Valid document formats are PDF, PNG, JPEG and TIFF. Non PDF formats will be converted to PDF. Send as multipart form.", + "operationId" : "LedgerVoucherHistoricalAttachment_uploadAttachment", + "parameters" : [ { + "name" : "voucherId", + "in" : "path", + "description" : "Voucher ID to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperHistoricalVoucher" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucherType/{id}" : { + "get" : { + "tags" : [ "ledger/voucherType" ], + "summary" : "Get voucher type by ID.", + "operationId" : "LedgerVoucherType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucherType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/voucherType" : { + "get" : { + "tags" : [ "ledger/voucherType" ], + "summary" : "Find voucher types corresponding with sent data.", + "operationId" : "LedgerVoucherType_search", + "parameters" : [ { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucherType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/license/developerTerms" : { + "get" : { + "tags" : [ "license" ], + "summary" : "Returns whether the company has signed the latest Visma Developer Terms.", + "operationId" : "LicenseDeveloperTerms_getDeveloperTerms", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDeveloperTerms" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/license/sign/developerTerms" : { + "put" : { + "tags" : [ "license" ], + "summary" : "Signs the Visma Developer Terms on behalf of the company.", + "operationId" : "LicenseSignDeveloperTerms_signDeveloperTerms", + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/municipality/query" : { + "get" : { + "tags" : [ "municipality" ], + "summary" : "[BETA] Wildcard search.", + "operationId" : "MunicipalityQuery_query", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, displayName" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 25 + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMunicipality" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/municipality" : { + "get" : { + "tags" : [ "municipality" ], + "summary" : "Get municipalities.", + "operationId" : "Municipality_search", + "parameters" : [ { + "name" : "includePayrollTaxZones", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMunicipality" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/subscription/cancel" : { + "put" : { + "tags" : [ "subscription" ], + "summary" : "Close account with/without read access", + "operationId" : "SubscriptionCancel_cancel", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AccountClosureInfo" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/subscription/packages" : { + "get" : { + "tags" : [ "subscription" ], + "summary" : "Returns the packages that can exist for an account.", + "operationId" : "SubscriptionPackages_getPackages", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperListMySubscriptionModuleDTO" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/subscription/reactivate" : { + "put" : { + "tags" : [ "subscription" ], + "summary" : "Reopen account with previous modules", + "operationId" : "SubscriptionReactivate_reactivate", + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/{id}/:approveSubscriptionInvoice" : { + "put" : { + "tags" : [ "order" ], + "summary" : "To create a subscription invoice, first create a order with the subscription enabled, then approve it with this method. This approves the order for subscription invoicing.", + "operationId" : "OrderApproveSubscriptionInvoice_approveSubscriptionInvoice", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of order to approve for subscription invoicing.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "invoiceDate", + "in" : "query", + "description" : "The approval date for the subscription.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/{id}/:attach" : { + "put" : { + "tags" : [ "order" ], + "summary" : "Attach document to specified order ID.", + "operationId" : "OrderAttach_attach", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "addToInvoiceMode", + "in" : "query", + "description" : "Controls which invoices receive this attachment. NEXT (default) = the next invoice only; ALL = every invoice produced from this order (intended for recurring orders); NONE = documentation only.", + "schema" : { + "type" : "string", + "enum" : [ "NONE", "NEXT", "ALL" ], + "default" : "NEXT" + } + }, { + "name" : "addToOrderMode", + "in" : "query", + "description" : "Controls which order confirmations receive this attachment. NONE (default) = not included on any order confirmation; NEXT = the next order confirmation only; ALL = every order confirmation produced from this order.", + "schema" : { + "type" : "string", + "enum" : [ "NONE", "NEXT", "ALL" ], + "default" : "NONE" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDocumentArchive" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/{id}" : { + "get" : { + "tags" : [ "order" ], + "summary" : "Get order by ID.", + "operationId" : "Order_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "order" ], + "summary" : "Update order.", + "operationId" : "Order_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "updateLinesAndGroups", + "in" : "query", + "description" : "Should order lines and order groups be saved and not included lines/groups be removed? Only applies if non null list of order lines or order groups is set.", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Order" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "order" ], + "summary" : "Delete order.", + "operationId" : "Order_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/{id}/tripletexOrder" : { + "get" : { + "tags" : [ "order" ], + "summary" : "Check if the order has a connected TripletexOrder. Only available for Tripletex AS (company 3001).", + "operationId" : "OrderTripletexOrder_getTripletexOrder", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBoolean" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "order" ], + "summary" : "Delete the connected TripletexOrder for the given order. Only available for Tripletex AS (company 3001).", + "operationId" : "OrderTripletexOrder_deleteTripletexOrder", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/packingNote/{orderId}/pdf" : { + "get" : { + "tags" : [ "order" ], + "summary" : "Get PDF representation of packing note by ID.", + "operationId" : "OrderPackingNotePdf_downloadPackingNotePdf", + "parameters" : [ { + "name" : "orderId", + "in" : "path", + "description" : "Order ID from which PDF is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "type", + "in" : "query", + "description" : "Type of packing note to download.", + "schema" : { + "type" : "string", + "enum" : [ "ALL_ORDER_LINES", "STOCK_ITEMS_ONLY" ], + "default" : "ALL_ORDER_LINES" + } + }, { + "name" : "download", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + } ], + "responses" : { + "200" : { + "description" : "PDF representation of the packing note", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + }, + "application/pdf" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderConfirmation/{orderId}/pdf" : { + "get" : { + "tags" : [ "order" ], + "summary" : "Get PDF representation of order by ID.", + "operationId" : "OrderOrderConfirmationPdf_downloadPdf", + "parameters" : [ { + "name" : "orderId", + "in" : "path", + "description" : "Order ID from which PDF is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "download", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "includeAttachments", + "in" : "query", + "description" : "Concatenate every order-scoped archive attachment whose addToOrder flag = ALL onto the rendered order document. Defaults to false so the legacy public-API behaviour (bare document only) is preserved for mobile / integration consumers; the new React Order page opts in.", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "PDF representation of the order confirmation", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + }, + "application/pdf" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/{id}/:invoice" : { + "put" : { + "tags" : [ "order" ], + "summary" : "Create new invoice or subscription invoice from order.", + "operationId" : "OrderInvoice_invoice", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of order to invoice.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "invoiceDate", + "in" : "query", + "description" : "The invoice date", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "sendToCustomer", + "in" : "query", + "description" : "Send invoice to customer", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "sendType", + "in" : "query", + "description" : "Send type used for sending the invoice", + "schema" : { + "type" : "string", + "enum" : [ "EMAIL", "EHF", "AVTALEGIRO", "EFAKTURA", "VIPPS", "PAPER", "MANUAL" ] + } + }, { + "name" : "paymentTypeId", + "in" : "query", + "description" : "Payment type to register prepayment of the invoice. paymentTypeId and paidAmount are optional, but both must be provided if the invoice has already been paid. The payment type must be related to an account with the same currency as the invoice.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "paidAmount", + "in" : "query", + "description" : "Paid amount to register prepayment of the invoice, in invoice currency. paymentTypeId and paidAmount are optional, but both must be provided if the invoice has already been paid. This amount is in the invoice currency.", + "schema" : { + "type" : "number" + } + }, { + "name" : "paidAmountAccountCurrency", + "in" : "query", + "description" : "Amount paid in payment type currency", + "schema" : { + "type" : "number" + } + }, { + "name" : "paymentTypeIdRestAmount", + "in" : "query", + "description" : "Payment type of rest amount. It is possible to have two prepaid payments when invoicing. If paymentTypeIdRestAmount > 0, this second payment will be calculated as invoice amount - paidAmount", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "paidAmountAccountCurrencyRest", + "in" : "query", + "description" : "Amount rest in payment type currency", + "schema" : { + "type" : "number" + } + }, { + "name" : "createOnAccount", + "in" : "query", + "description" : "Create on account(a konto)", + "schema" : { + "type" : "string", + "enum" : [ "NONE", "WITH_VAT", "WITHOUT_VAT" ] + } + }, { + "name" : "amountOnAccount", + "in" : "query", + "description" : "Amount on account", + "schema" : { + "type" : "number", + "default" : 0 + } + }, { + "name" : "onAccountComment", + "in" : "query", + "description" : "On account comment", + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "createBackorder", + "in" : "query", + "description" : "Create a backorder for this order, available only for pilot users", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "invoiceIdIfIsCreditNote", + "in" : "query", + "description" : "Id of the invoice a credit note refers to", + "schema" : { + "type" : "integer", + "format" : "int64", + "default" : 0 + } + }, { + "name" : "overrideEmailAddress", + "in" : "query", + "description" : "Will override email address if sendType = EMAIL", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/:invoiceMultipleOrders" : { + "put" : { + "tags" : [ "order" ], + "summary" : "[BETA] Charges a single customer invoice from multiple orders. The orders must be to the same customer, currency, due date, receiver email, attn. and smsNotificationNumber", + "operationId" : "OrderInvoiceMultipleOrders_invoiceMultipleOrders", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of Order IDs - to the same customer, separated by comma.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDate", + "in" : "query", + "description" : "The invoice date", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "sendToCustomer", + "in" : "query", + "description" : "Send invoice to customer", + "schema" : { + "type" : "boolean", + "default" : true + } + }, { + "name" : "createBackorders", + "in" : "query", + "description" : "Create a backorder for all any orders that delivers less than ordered amount", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order" : { + "get" : { + "tags" : [ "order" ], + "summary" : "Find orders corresponding with sent data.", + "operationId" : "Order_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "orderDateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "orderDateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "deliveryComment", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isClosed", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isSubscription", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "order" ], + "summary" : "Create order.", + "operationId" : "Order_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Order" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/sendInvoicePreview/{orderId}" : { + "put" : { + "tags" : [ "order" ], + "summary" : "Send Invoice Preview to customer by email.", + "operationId" : "OrderSendInvoicePreview_postInvoicePreview", + "parameters" : [ { + "name" : "orderId", + "in" : "path", + "description" : "orderId", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "email", + "in" : "query", + "description" : "email", + "schema" : { + "type" : "string" + } + }, { + "name" : "message", + "in" : "query", + "description" : "message", + "schema" : { + "type" : "string" + } + }, { + "name" : "saveAsDefault", + "in" : "query", + "description" : "saveAsDefault", + "schema" : { + "type" : "boolean" + } + } ], + "responses" : { + "204" : { + "description" : "Invoice preview email sent successfully" + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/list" : { + "post" : { + "tags" : [ "order" ], + "summary" : "[BETA] Create multiple Orders with OrderLines. Max 100 at a time.", + "operationId" : "OrderList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Order" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/sendOrderConfirmation/{orderId}" : { + "put" : { + "tags" : [ "order" ], + "summary" : "Send Order Confirmation to customer by email.", + "operationId" : "OrderSendOrderConfirmation_postOrderConfirmation", + "parameters" : [ { + "name" : "orderId", + "in" : "path", + "description" : "orderId", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "email", + "in" : "query", + "description" : "email", + "schema" : { + "type" : "string" + } + }, { + "name" : "message", + "in" : "query", + "description" : "message", + "schema" : { + "type" : "string" + } + }, { + "name" : "saveAsDefault", + "in" : "query", + "description" : "saveAsDefault", + "schema" : { + "type" : "boolean" + } + } ], + "responses" : { + "204" : { + "description" : "Order confirmation email sent successfully" + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/sendPackingNote/{orderId}" : { + "put" : { + "tags" : [ "order" ], + "summary" : "Send Packing Note to customer by email.", + "operationId" : "OrderSendPackingNote_postPackingNote", + "parameters" : [ { + "name" : "orderId", + "in" : "path", + "description" : "orderId", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "email", + "in" : "query", + "description" : "email", + "schema" : { + "type" : "string" + } + }, { + "name" : "message", + "in" : "query", + "description" : "message", + "schema" : { + "type" : "string" + } + }, { + "name" : "saveAsDefault", + "in" : "query", + "description" : "saveAsDefault", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "type", + "in" : "query", + "description" : "Type of packing note to send.", + "schema" : { + "type" : "string", + "enum" : [ "ALL_ORDER_LINES", "STOCK_ITEMS_ONLY" ], + "default" : "ALL_ORDER_LINES" + } + } ], + "responses" : { + "204" : { + "description" : "Packing note email sent successfully" + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/{id}/:unApproveSubscriptionInvoice" : { + "put" : { + "tags" : [ "order" ], + "summary" : "Unapproves the order for subscription invoicing.", + "operationId" : "OrderUnApproveSubscriptionInvoice_unApproveSubscriptionInvoice", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of order to unapprove for subscription invoicing.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "Order unapproved for subscription invoicing successfully", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderGroup/{id}" : { + "get" : { + "tags" : [ "order/orderGroup" ], + "summary" : "Get orderGroup by ID. A orderGroup is a way to group orderLines, and add comments and subtotals", + "operationId" : "OrderOrderGroup_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "order/orderGroup" ], + "summary" : "Delete orderGroup by ID.", + "operationId" : "OrderOrderGroup_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderGroup" : { + "get" : { + "tags" : [ "order/orderGroup" ], + "summary" : "Find orderGroups corresponding with sent data.", + "operationId" : "OrderOrderGroup_search", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "orderIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseOrderGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "order/orderGroup" ], + "summary" : "[Beta] Put orderGroup.", + "operationId" : "OrderOrderGroup_put", + "parameters" : [ { + "name" : "OrderLineIds", + "in" : "query", + "description" : "Deprecated. Put order lines in the dto instead.", + "schema" : { + "type" : "string" + } + }, { + "name" : "removeExistingOrderLines", + "in" : "query", + "description" : "Deprecated. Should existing orderLines be removed from this orderGroup. This will always happen if orderLineIds is not empty.", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/OrderGroup" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "order/orderGroup" ], + "summary" : "[Beta] Post orderGroup.", + "operationId" : "OrderOrderGroup_post", + "parameters" : [ { + "name" : "orderLineIds", + "in" : "query", + "description" : "Deprecated. Put order lines in the dto instead.", + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/OrderGroup" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderline/{id}" : { + "get" : { + "tags" : [ "order/orderline" ], + "summary" : "Get order line by ID.", + "operationId" : "OrderOrderline_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "order/orderline" ], + "summary" : "[BETA] Put order line", + "operationId" : "OrderOrderline_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "order/orderline" ], + "summary" : "[BETA] Delete order line by ID.", + "operationId" : "OrderOrderline_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderline/list" : { + "post" : { + "tags" : [ "order/orderline" ], + "summary" : "Create multiple order lines.", + "operationId" : "OrderOrderlineList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderline/orderLineTemplate" : { + "get" : { + "tags" : [ "order/orderline" ], + "summary" : "[BETA] Get order line template from order and product", + "operationId" : "OrderOrderlineOrderLineTemplate_orderLineTemplate", + "parameters" : [ { + "name" : "orderId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderline/{id}/:pickLine" : { + "put" : { + "tags" : [ "order/orderline" ], + "summary" : "[BETA] Pick order line. This is only available for customers who have Logistics and who activated the available inventory functionality.", + "operationId" : "OrderOrderlinePickLine_pickLine", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Order line id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "inventoryId", + "in" : "query", + "description" : "Optional inventory id. If no inventory is sent, default inventory will be used.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "inventoryLocationId", + "in" : "query", + "description" : "Optional inventory location id", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "pickDate", + "in" : "query", + "description" : "Optional pick date. If not sent, current date will be used.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderline" : { + "post" : { + "tags" : [ "order/orderline" ], + "summary" : "Create order line. When creating several order lines, use /list for better performance.", + "operationId" : "OrderOrderline_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/order/orderline/{id}/:unpickLine" : { + "put" : { + "tags" : [ "order/orderline" ], + "summary" : "[BETA] Unpick order line.This is only available for customers who have Logistics and who activated the available inventory functionality.", + "operationId" : "OrderOrderlineUnpickLine_unpickLine", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Order line id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/casefiles/{caseFileId}/activate" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Fully activate a case file for signing (links signers, configures emails, and activates)", + "operationId" : "YearEndPenneoCasefilesActivate_activateCaseFile", + "parameters" : [ { + "name" : "caseFileId", + "in" : "path", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Year for which to find signers", + "schema" : { + "type" : "integer", + "format" : "int32" + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/session" : { + "get" : { + "tags" : [ "penneo" ], + "summary" : "Authenticate and get case files from Penneo for a specific year", + "operationId" : "YearEndPenneoSession_authenticateAndListCaseFiles", + "parameters" : [ { + "name" : "year", + "in" : "query", + "description" : "Year to fetch case files for", + "schema" : { + "type" : "integer", + "format" : "int32" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/signature-lines" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Create signature line, link signer, and configure email in one operation", + "operationId" : "YearEndPenneoSignature-lines_createAndLinkSignatureLine", + "requestBody" : { + "description" : "Signature line creation request", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CreateAndLinkSignatureLineRequest" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/casefiles" : { + "get" : { + "tags" : [ "penneo" ], + "summary" : "Get case files from Penneo for a specific year", + "operationId" : "YearEndPenneoCasefiles_getCaseFiles", + "parameters" : [ { + "name" : "year", + "in" : "query", + "description" : "Year to fetch case files for", + "schema" : { + "type" : "integer", + "format" : "int32" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "penneo" ], + "summary" : "Create a new case file in Penneo", + "operationId" : "YearEndPenneoCasefiles_createCaseFile", + "requestBody" : { + "description" : "Case file request", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CaseFileRequest" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/documents" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Add a document to an existing case file", + "operationId" : "YearEndPenneoDocuments_createDocument", + "requestBody" : { + "description" : "Document creation request", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AddDocumentRequest" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/casefiles/{caseFileId}" : { + "delete" : { + "tags" : [ "penneo" ], + "summary" : "Delete a case file from Penneo", + "operationId" : "YearEndPenneoCasefiles_deleteCaseFile", + "parameters" : [ { + "name" : "caseFileId", + "in" : "path", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/documents/{documentId}" : { + "put" : { + "tags" : [ "penneo" ], + "summary" : "Update an existing document in a case file", + "operationId" : "YearEndPenneoDocuments_updateDocument", + "parameters" : [ { + "name" : "documentId", + "in" : "path", + "description" : "Document ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Document update request", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/UpdateDocumentRequest" + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "penneo" ], + "summary" : "Delete a document from a case file", + "operationId" : "YearEndPenneoDocuments_deleteDocument", + "parameters" : [ { + "name" : "documentId", + "in" : "path", + "description" : "Document ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/recipients/{id}" : { + "delete" : { + "tags" : [ "penneo" ], + "summary" : "Delete a recipient from a case file", + "operationId" : "YearEndPenneoRecipients_deleteRecipients", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Recipient ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "caseFileId", + "in" : "query", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/casefiles/{caseFileId}/signers/{signerId}" : { + "delete" : { + "tags" : [ "penneo" ], + "summary" : "Delete a signer from a case file", + "operationId" : "YearEndPenneoCasefilesSigners_deleteSigner", + "parameters" : [ { + "name" : "caseFileId", + "in" : "path", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "signerId", + "in" : "path", + "description" : "Signer ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/documents/{documentId}/download" : { + "get" : { + "tags" : [ "penneo" ], + "summary" : "Download a document from Penneo", + "operationId" : "YearEndPenneoDocumentsDownload_downloadDocument", + "parameters" : [ { + "name" : "documentId", + "in" : "path", + "description" : "Document ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "Document downloaded successfully", + "content" : { + "application/pdf" : { } + } + }, + "404" : { + "description" : "Document not found", + "content" : { + "text/plain" : { } + } + }, + "500" : { + "description" : "Failed to download document", + "content" : { + "text/plain" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/recipients" : { + "get" : { + "tags" : [ "penneo" ], + "summary" : "Get all recipients for a case file", + "operationId" : "YearEndPenneoRecipients_getRecipients", + "parameters" : [ { + "name" : "caseFileId", + "in" : "query", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "penneo" ], + "summary" : "Add a copy recipient to a case file", + "operationId" : "YearEndPenneoRecipients_postRecipients", + "requestBody" : { + "description" : "Recipient request", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AddRecipientRequest" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/signingStatus" : { + "get" : { + "tags" : [ "penneo" ], + "summary" : "Get annual accounts signing status for a year based on the backend DB record", + "operationId" : "YearEndPenneoSigningStatus_getSigningStatus", + "parameters" : [ { + "name" : "year", + "in" : "query", + "description" : "Year to check signing status for", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPenneoSigningStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/casefiles/{caseFileId}/signers/{signerId}/reactivate" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Reactivate a signer in a case file", + "operationId" : "YearEndPenneoCasefilesSignersReactivate_reactivateSigner", + "parameters" : [ { + "name" : "caseFileId", + "in" : "path", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "signerId", + "in" : "path", + "description" : "Signer ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/casefiles/{caseFileId}/signers/{signerId}/resend" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Resend a sign link to a specific signer", + "operationId" : "YearEndPenneoCasefilesSignersResend_resendSignLink", + "parameters" : [ { + "name" : "caseFileId", + "in" : "path", + "description" : "Case file ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "signerId", + "in" : "path", + "description" : "Signer ID from Penneo", + "required" : true, + "schema" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/sync" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Synchronize database with current Penneo casefile state", + "operationId" : "YearEndPenneoSync_sync", + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/penneo/updateCompletedStatus" : { + "post" : { + "tags" : [ "penneo" ], + "summary" : "Update completed status for current company's casefiles from global API", + "operationId" : "YearEndPenneoUpdateCompletedStatus_updateCompletedStatus", + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/ledger/postingRules" : { + "get" : { + "tags" : [ "ledger/postingRules" ], + "summary" : "Get posting rules for current company. The posting rules defined which accounts from the chart of accounts that are used for postings when the system creates postings.", + "operationId" : "LedgerPostingRules_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPostingRules" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/external/{id}" : { + "get" : { + "tags" : [ "product/external" ], + "summary" : "[BETA] Get external product by ID.", + "operationId" : "ProductExternal_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperExternalProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/external" : { + "get" : { + "tags" : [ "product/external" ], + "summary" : "[BETA] Find external products corresponding with sent data. The sorting-field is not in use on this endpoint.", + "operationId" : "ProductExternal_search", + "parameters" : [ { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "wholesaler", + "in" : "query", + "description" : "Wholesaler", + "schema" : { + "type" : "string", + "enum" : [ "AHLSELL", "BROEDRENE_DAHL", "ELEKTROSKANDIA", "HEIDENREICH", "ONNINEN", "SONEPAR", "SOLAR", "BERGAARD_AMUNDSEN", "BERGAARD_AMUNDSEN_STAVANGER", "SORLANDET_ELEKTRO", "ETMAN_DISTRIBUSJON", "ETM_OST", "CENIKA", "EP_ENGROS", "BETEK", "DGROUP", "FAGERHULT", "GLAMOX", "SCHNEIDER", "STOKKAN", "WURTH", "ELEKTROIMPORTOEREN", "THERMOFLOOR", "LYSKOMPONENTER", "NORDESIGN", "TECE" ] + } + }, { + "name" : "organizationNumber", + "in" : "query", + "description" : "Wholesaler organization number. Mandatory if Wholesaler is not selected. If Wholesaler is selected, this field is ignored.", + "schema" : { + "type" : "string" + } + }, { + "name" : "elNumber", + "in" : "query", + "description" : "List of valid el numbers", + "schema" : { + "type" : "string" + } + }, { + "name" : "nrfNumber", + "in" : "query", + "description" : "List of valid nrf numbers", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseExternalProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/{id}" : { + "get" : { + "tags" : [ "product" ], + "summary" : "Get product by ID.", + "operationId" : "Product_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "product" ], + "summary" : "Update product.", + "operationId" : "Product_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Product" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product" ], + "summary" : "Delete product.", + "operationId" : "Product_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/{id}/image" : { + "post" : { + "tags" : [ "product" ], + "summary" : "Upload image to product. Existing image on product will be replaced if exists", + "operationId" : "ProductImage_uploadImage", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Product ID to upload image to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product" ], + "summary" : "Delete image.", + "operationId" : "ProductImage_deleteImage", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of Product containing the image to delete.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/list" : { + "put" : { + "tags" : [ "product" ], + "summary" : "Update a list of products.", + "operationId" : "ProductList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Product" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product" ], + "summary" : "Add multiple products.", + "operationId" : "ProductList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Product" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product" : { + "get" : { + "tags" : [ "product" ], + "summary" : "Find products corresponding with sent data.", + "operationId" : "Product_search", + "parameters" : [ { + "name" : "number", + "in" : "query", + "description" : "DEPRECATED. List of product numbers (Integer only)", + "schema" : { + "type" : "string" + } + }, { + "name" : "ids", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "productNumber", + "in" : "query", + "description" : "List of valid product numbers", + "schema" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "ean", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isStockItem", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isSupplierProduct", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "currencyId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "vatTypeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "productUnitId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "accountId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "costExcludingVatCurrencyFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "costExcludingVatCurrencyTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "priceExcludingVatCurrencyFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "priceExcludingVatCurrencyTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "priceIncludingVatCurrencyFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "priceIncludingVatCurrencyTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product" ], + "summary" : "Create new product.", + "operationId" : "Product_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Product" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/supplierProduct/{id}" : { + "get" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Get supplierProduct by ID.", + "operationId" : "ProductSupplierProduct_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Update supplierProduct.", + "operationId" : "ProductSupplierProduct_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Delete supplierProduct.", + "operationId" : "ProductSupplierProduct_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/supplierProduct/getSupplierProductsByIds" : { + "post" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Find the products by ids. Method was added as a POST because GET request header has a maximum size that we can exceed with customers that a lot of products.", + "operationId" : "ProductSupplierProductGetSupplierProductsByIds_getSupplierProductsByIds", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/supplierProduct" : { + "get" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Find products corresponding with sent data.", + "operationId" : "ProductSupplierProduct_search", + "parameters" : [ { + "name" : "productId", + "in" : "query", + "description" : "Id of product to find supplier products for.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "resaleIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "vendorId", + "in" : "query", + "description" : "Id of vendor to find supplier products for.", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "productGroupId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, name, number" + } + }, { + "name" : "targetCurrencyId", + "in" : "query", + "description" : "The target currency ID for price conversion.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Create new supplierProduct.", + "operationId" : "ProductSupplierProduct_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/supplierProduct/list" : { + "put" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Update a list of supplierProduct.", + "operationId" : "ProductSupplierProductList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/supplierProduct" ], + "summary" : "Create list of new supplierProduct.", + "operationId" : "ProductSupplierProductList_postList", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierProduct" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/discountGroup/{id}" : { + "get" : { + "tags" : [ "product/discountGroup" ], + "summary" : "Get discount group by ID.", + "operationId" : "ProductDiscountGroup_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDiscountGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/discountGroup" : { + "get" : { + "tags" : [ "product/discountGroup" ], + "summary" : "Find discount groups corresponding with sent data.", + "operationId" : "ProductDiscountGroup_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDiscountGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/discountPolicy/{id}" : { + "get" : { + "tags" : [ "discountPolicy" ], + "summary" : "[BETA] Get discount by ID. Available for Logistics Basis and Wholesaler integration.", + "operationId" : "DiscountPolicy_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDiscountPolicy" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/discountPolicy" : { + "get" : { + "tags" : [ "discountPolicy" ], + "summary" : "[BETA] Find discounts corresponding with sent data. Available for Logistics Basis and Wholesaler integration.", + "operationId" : "DiscountPolicy_search", + "parameters" : [ { + "name" : "customerId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "productGroupId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "activeProducts", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDiscountPolicy" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/inventoryLocation/{id}" : { + "get" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Get inventory location by ID. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Update product inventory location. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocation_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductInventoryLocation" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Delete product inventory location. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/inventoryLocation" : { + "get" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Find inventory locations by product ID. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocation_search", + "parameters" : [ { + "name" : "productId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "inventoryId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isMainLocation", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Create new product inventory location. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductInventoryLocation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/inventoryLocation/list" : { + "put" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Update multiple product inventory locations. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocationList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductInventoryLocation" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/inventoryLocation" ], + "summary" : "Add multiple product inventory locations. Only available for Logistics Basic.", + "operationId" : "ProductInventoryLocationList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductInventoryLocation" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductInventoryLocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/logisticsSettings" : { + "get" : { + "tags" : [ "product/logisticsSettings" ], + "summary" : "Get logistics settings for the logged in company.", + "operationId" : "ProductLogisticsSettings_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLogisticsSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "product/logisticsSettings" ], + "summary" : "Update logistics settings for the logged in company.", + "operationId" : "ProductLogisticsSettings_put", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/LogisticsSettings" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLogisticsSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/group/{id}" : { + "get" : { + "tags" : [ "product/group" ], + "summary" : "Find product group by ID. Only available for Logistics Basic.", + "operationId" : "ProductGroup_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "product/group" ], + "summary" : "Update product group. Only available for Logistics Basic.", + "operationId" : "ProductGroup_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductGroup" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/group" ], + "summary" : "Delete product group. Only available for Logistics Basic.", + "operationId" : "ProductGroup_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/group/list" : { + "put" : { + "tags" : [ "product/group" ], + "summary" : "Update a list of product groups. Only available for Logistics Basic.", + "operationId" : "ProductGroupList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductGroup" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/group" ], + "summary" : "Add multiple products groups. Only available for Logistics Basic.", + "operationId" : "ProductGroupList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductGroup" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/group" ], + "summary" : "Delete multiple product groups. Only available for Logistics Basic.", + "operationId" : "ProductGroupList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/group" : { + "get" : { + "tags" : [ "product/group" ], + "summary" : "Find product group with sent data. Only available for Logistics Basic.", + "operationId" : "ProductGroup_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/group" ], + "summary" : "Create new product group. Only available for Logistics Basic.", + "operationId" : "ProductGroup_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductGroup" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/group/query" : { + "get" : { + "tags" : [ "product/group" ], + "summary" : "Wildcard search. Only available for Logistics Basic.", + "operationId" : "ProductGroupQuery_query", + "parameters" : [ { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, name" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/groupRelation/{id}" : { + "get" : { + "tags" : [ "product/groupRelation" ], + "summary" : "Find product group relation by ID. Only available for Logistics Basic.", + "operationId" : "ProductGroupRelation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductGroupRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/groupRelation" ], + "summary" : "Delete product group relation. Only available for Logistics Basic.", + "operationId" : "ProductGroupRelation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/groupRelation/list" : { + "post" : { + "tags" : [ "product/groupRelation" ], + "summary" : "Add multiple products group relations. Only available for Logistics Basic.", + "operationId" : "ProductGroupRelationList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductGroupRelation" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductGroupRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/groupRelation" ], + "summary" : "Delete multiple product group relations. Only available for Logistics Basic.", + "operationId" : "ProductGroupRelationList_deleteList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/groupRelation" : { + "get" : { + "tags" : [ "product/groupRelation" ], + "summary" : "Find product group relation with sent data. Only available for Logistics Basic.", + "operationId" : "ProductGroupRelation_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "productGroupId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductGroupRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/groupRelation" ], + "summary" : "Create new product group relation. Only available for Logistics Basic.", + "operationId" : "ProductGroupRelation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductGroupRelation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductGroupRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/productPrice" : { + "get" : { + "tags" : [ "product/productPrice" ], + "summary" : "Find prices for a product. Only available for Logistics Basic.", + "operationId" : "ProductProductPrice_search", + "parameters" : [ { + "name" : "productId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fromDate", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "toDate", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "showOnlyLastPrice", + "in" : "query", + "description" : "If showOnlyLastPrice is true, fromDate and toDate are ignored and only last price of the product is send back.", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductPrice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/unit/{id}" : { + "get" : { + "tags" : [ "product/unit" ], + "summary" : "Get product unit by ID.", + "operationId" : "ProductUnit_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "product/unit" ], + "summary" : "Update product unit.", + "operationId" : "ProductUnit_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductUnit" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "product/unit" ], + "summary" : "Delete product unit by ID.", + "operationId" : "ProductUnit_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/unit" : { + "get" : { + "tags" : [ "product/unit" ], + "summary" : "Find product units corresponding with sent data.", + "operationId" : "ProductUnit_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Names", + "schema" : { + "type" : "string" + } + }, { + "name" : "nameShort", + "in" : "query", + "description" : "Short names", + "schema" : { + "type" : "string" + } + }, { + "name" : "commonCode", + "in" : "query", + "description" : "Common codes", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/unit" ], + "summary" : "Create new product unit.", + "operationId" : "ProductUnit_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProductUnit" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/unit/list" : { + "put" : { + "tags" : [ "product/unit" ], + "summary" : "Update list of product units.", + "operationId" : "ProductUnitList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductUnit" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "product/unit" ], + "summary" : "Create multiple product units.", + "operationId" : "ProductUnitList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProductUnit" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/unit/query" : { + "get" : { + "tags" : [ "product/unit" ], + "summary" : "Wildcard search.", + "operationId" : "ProductUnitQuery_query", + "parameters" : [ { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 25 + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, name" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductUnit" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/unit/master/{id}" : { + "get" : { + "tags" : [ "product/unit/master" ], + "summary" : "Get product unit master by ID.", + "operationId" : "ProductUnitMaster_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProductUnitMaster" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/product/unit/master" : { + "get" : { + "tags" : [ "product/unit/master" ], + "summary" : "Find product units master corresponding with sent data.", + "operationId" : "ProductUnitMaster_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Names", + "schema" : { + "type" : "string" + } + }, { + "name" : "nameShort", + "in" : "query", + "description" : "Short names", + "schema" : { + "type" : "string" + } + }, { + "name" : "commonCode", + "in" : "query", + "description" : "Common codes", + "schema" : { + "type" : "string" + } + }, { + "name" : "peppolName", + "in" : "query", + "description" : "Peppol names", + "schema" : { + "type" : "string" + } + }, { + "name" : "peppolSymbol", + "in" : "query", + "description" : "Peppol symbols", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Inactive units", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 2400 + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProductUnitMaster" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}" : { + "get" : { + "tags" : [ "project" ], + "summary" : "Find project by ID.", + "operationId" : "Project_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project" ], + "summary" : "[BETA] Update project.", + "operationId" : "Project_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Project" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project" ], + "summary" : "[BETA] Delete project.", + "operationId" : "Project_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/list" : { + "put" : { + "tags" : [ "project" ], + "summary" : "[BETA] Update multiple projects.", + "operationId" : "ProjectList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Project" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project" ], + "summary" : "[BETA] Register new projects. Multiple projects for different users can be sent in the same request.", + "operationId" : "ProjectList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Project" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project" ], + "summary" : "[BETA] Delete projects.", + "operationId" : "ProjectList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project" : { + "get" : { + "tags" : [ "project" ], + "summary" : "Find projects corresponding with sent data.", + "operationId" : "Project_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "isOffer", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "projectManagerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerAccountManagerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeInProjectId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "startDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "startDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "endDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "endDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "isClosed", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isFixedPrice", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "externalAccountsNumber", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "includeRecentlyClosed", + "in" : "query", + "description" : "If isClosed is false, include projects that have been closed within the last 3 months. Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project" ], + "summary" : "Add new project.", + "operationId" : "Project_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Project" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project" ], + "summary" : "[BETA] Delete multiple projects.", + "operationId" : "Project_deleteList", + "requestBody" : { + "description" : "JSON representing objects to delete. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Project" + } + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/number/{number}" : { + "get" : { + "tags" : [ "project" ], + "summary" : "Find project by number.", + "operationId" : "ProjectNumber_getByNumber", + "parameters" : [ { + "name" : "number", + "in" : "path", + "description" : "Number of the project", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/>forTimeSheet" : { + "get" : { + "tags" : [ "project" ], + "summary" : "Find projects applicable for time sheet registration on a specific day.", + "operationId" : "ProjectForTimeSheet_getForTimeSheet", + "parameters" : [ { + "name" : "includeProjectOffers", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/import" : { + "post" : { + "tags" : [ "project/import", "project" ], + "summary" : "Upload project import file.", + "operationId" : "ProjectImport_importProjectStatement", + "parameters" : [ { + "name" : "fileFormat", + "in" : "query", + "description" : "File format", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "XLS", "CSV" ] + } + }, { + "name" : "encoding", + "in" : "query", + "description" : "Encoding", + "schema" : { + "type" : "string" + } + }, { + "name" : "delimiter", + "in" : "query", + "description" : "Delimiter", + "schema" : { + "type" : "string" + } + }, { + "name" : "ignoreFirstRow", + "in" : "query", + "description" : "Ignore first row", + "schema" : { + "type" : "boolean" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The project import file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/actionList" : { + "get" : { + "tags" : [ "project/{id}/actionList" ], + "summary" : "Get action list items for a project.", + "operationId" : "ProjectActionList_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectActionListItemType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/actionList/employeesWithMissingHourlyRate" : { + "get" : { + "tags" : [ "project/{id}/actionList" ], + "summary" : "Get employees with missing hourly rate for a project using person-specific hourly rates.", + "operationId" : "ProjectActionListEmployeesWithMissingHourlyRate_getEmployeesWithMissingHourlyRate", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEmployeeMissingHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/capacityPlan/budget" : { + "get" : { + "tags" : [ "project/capacityPlan" ], + "summary" : "Get budgeted and worked hours per activity and employee for a project in the specified period.", + "operationId" : "ProjectCapacityPlanBudget_getBudget", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodStart", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "periodEnd", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "periodType", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "HOUR", "DAY", "WEEK", "MONTH" ] + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCapacityPlanBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/resourcePlanBudget" : { + "get" : { + "tags" : [ "project/resourcePlanBudget" ], + "summary" : "Get resource plan entries in the specified period.", + "description" : "Deprecated. Use project/capacityPlan/budget instead.", + "operationId" : "ProjectResourcePlanBudget_get", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "periodStart", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "periodEnd", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "periodType", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "HOUR", "DAY", "WEEK", "MONTH" ] + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperResourcePlanBudget" + } + } + } + } + }, + "deprecated" : true, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/category/{id}" : { + "get" : { + "tags" : [ "project/category" ], + "summary" : "Find project category by ID.", + "operationId" : "ProjectCategory_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/category" ], + "summary" : "Update project category.", + "operationId" : "ProjectCategory_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectCategory" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/category" : { + "get" : { + "tags" : [ "project/category" ], + "summary" : "Find project categories corresponding with sent data.", + "operationId" : "ProjectCategory_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/category" ], + "summary" : "Add new project category.", + "operationId" : "ProjectCategory_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectCategory" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/dynamicControlForm/{id}/:copyFieldValuesFromLastEditedForm" : { + "put" : { + "tags" : [ "project/dynamicControlForm" ], + "summary" : "Into each section in the specified form that only has empty or default values, and copyFieldValuesByDefault set as true in the form's template, copy field values from the equivalent section in the most recently edited control form. Signed or completed forms will not be affected.", + "operationId" : "ProjectDynamicControlFormCopyFieldValuesFromLastEditedForm_copyFieldValuesFromLastEditedForm", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "The ID of the form that the values will be copied to", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/orderline/{id}" : { + "get" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Get order line by ID.", + "operationId" : "ProjectOrderline_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Update project orderline.", + "operationId" : "ProjectOrderline_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectOrderLine" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/orderline" ], + "summary" : "Delete order line by ID.", + "operationId" : "ProjectOrderline_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/orderline/list" : { + "post" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Create multiple order lines.", + "operationId" : "ProjectOrderlineList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProjectOrderLine" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/orderline/orderLineTemplate" : { + "get" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Get order line template from project and product", + "operationId" : "ProjectOrderlineOrderLineTemplate_orderLineTemplate", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "productId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/orderline" : { + "get" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Find all order lines for project.", + "operationId" : "ProjectOrderline_search", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "isBudget", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Create order line. When creating several order lines, use /list for better performance.", + "operationId" : "ProjectOrderline_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectOrderLine" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/orderline/query" : { + "get" : { + "tags" : [ "project/orderline" ], + "summary" : "[BETA] Wildcard search.", + "operationId" : "ProjectOrderlineQuery_query", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isBudget", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectOrderLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/participant/list" : { + "post" : { + "tags" : [ "project/participant" ], + "summary" : "[BETA] Add new project participant. Multiple project participants can be sent in the same request.", + "operationId" : "ProjectParticipantList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProjectParticipant" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/participant" ], + "summary" : "[BETA] Delete project participants.", + "operationId" : "ProjectParticipantList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/participant/{id}" : { + "get" : { + "tags" : [ "project/participant" ], + "summary" : "[BETA] Find project participant by ID.", + "operationId" : "ProjectParticipant_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/participant" ], + "summary" : "[BETA] Update project participant.", + "operationId" : "ProjectParticipant_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectParticipant" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/participant" : { + "post" : { + "tags" : [ "project/participant" ], + "summary" : "[BETA] Add new project participant.", + "operationId" : "ProjectParticipant_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectParticipant" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/batchPeriod/budgetStatusByProjectIds" : { + "get" : { + "tags" : [ "project/batchPeriod" ], + "summary" : "Get the budget status for the projects in the specific period.", + "operationId" : "ProjectBatchPeriodBudgetStatusByProjectIds_budgetStatusByProjectIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectBudgetStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/batchPeriod/invoicingReserveByProjectIds" : { + "get" : { + "tags" : [ "project/batchPeriod" ], + "summary" : "Get the invoicing reserve for the projects in the specific period.", + "operationId" : "ProjectBatchPeriodInvoicingReserveByProjectIds_invoicingReserveByProjectIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectPeriodInvoicingReserve" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/period/budgetStatus" : { + "get" : { + "tags" : [ "project/period", "project/{id}/period" ], + "summary" : "Get the budget status for the project period", + "operationId" : "ProjectPeriodBudgetStatus_getBudgetStatus", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectBudgetStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/period/hourlistReport" : { + "get" : { + "tags" : [ "project/period", "project/{id}/period" ], + "summary" : "Find hourlist report by project period.", + "operationId" : "ProjectPeriodHourlistReport_hourlistReport", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectPeriodHourlyReport" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/period/invoiced" : { + "get" : { + "tags" : [ "project/period", "project/{id}/period" ], + "summary" : "Find invoiced info by project period.", + "operationId" : "ProjectPeriodInvoiced_invoiced", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectPeriodInvoiced" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/period/invoicingReserve" : { + "get" : { + "tags" : [ "project/period", "project/{id}/period" ], + "summary" : "Find invoicing reserve by project period.", + "operationId" : "ProjectPeriodInvoicingReserve_invoicingReserve", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectPeriodInvoicingReserve" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/period/monthlyStatus" : { + "get" : { + "tags" : [ "project/period", "project/{id}/period" ], + "summary" : "Find overall status by project period.", + "operationId" : "ProjectPeriodMonthlyStatus_monthlyStatus", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Will be set to the first day of the provided date's month. Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Must be in the same year as dateFrom. Will be set to the last day of the provided date's month. Format is yyyy-MM-dd (to and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectPeriodMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/{id}/period/overallStatus" : { + "get" : { + "tags" : [ "project/period", "project/{id}/period" ], + "summary" : "Find overall status by project period.", + "operationId" : "ProjectPeriodOverallStatus_overallStatus", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.).", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "id", + "in" : "path", + "description" : "Element ID for filtering", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectPeriodOverallStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/projectActivity/{id}" : { + "get" : { + "tags" : [ "project/projectActivity" ], + "summary" : "Find project activity by id", + "operationId" : "ProjectProjectActivity_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/projectActivity" ], + "summary" : "Delete project activity", + "operationId" : "ProjectProjectActivity_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/projectActivity/list" : { + "delete" : { + "tags" : [ "project/projectActivity" ], + "summary" : "Delete project activities", + "operationId" : "ProjectProjectActivityList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/projectActivity" : { + "post" : { + "tags" : [ "project/projectActivity" ], + "summary" : "Add project activity.", + "operationId" : "ProjectProjectActivity_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectActivity" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/controlForm/{id}" : { + "get" : { + "tags" : [ "project/controlForm" ], + "summary" : "[BETA] Get project control form by ID.", + "operationId" : "ProjectControlForm_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectControlForm" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/controlForm" : { + "get" : { + "tags" : [ "project/controlForm" ], + "summary" : "[BETA] Get project control forms by project ID.", + "operationId" : "ProjectControlForm_search", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Project ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectControlForm" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/controlFormType/{id}" : { + "get" : { + "tags" : [ "project/controlFormType" ], + "summary" : "[BETA] Get project control form type by ID.", + "operationId" : "ProjectControlFormType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectControlFormType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/controlFormType" : { + "get" : { + "tags" : [ "project/controlFormType" ], + "summary" : "[BETA] Get project control form types", + "operationId" : "ProjectControlFormType_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectControlFormType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/{id}" : { + "get" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Find project hourly rate by ID.", + "operationId" : "ProjectHourlyRates_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Update a project hourly rate.", + "operationId" : "ProjectHourlyRates_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Delete Project Hourly Rate ", + "operationId" : "ProjectHourlyRates_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/list" : { + "put" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Update multiple project hourly rates.", + "operationId" : "ProjectHourlyRatesList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Create multiple project hourly rates.", + "operationId" : "ProjectHourlyRatesList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Delete project hourly rates.", + "operationId" : "ProjectHourlyRatesList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/deleteByProjectIds" : { + "delete" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Delete project hourly rates by project id.", + "operationId" : "ProjectHourlyRatesDeleteByProjectIds_deleteByProjectIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates" : { + "get" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Find project hourly rates corresponding with sent data.", + "operationId" : "ProjectHourlyRates_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "type", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "TYPE_PREDEFINED_HOURLY_RATES", "TYPE_PROJECT_SPECIFIC_HOURLY_RATES", "TYPE_FIXED_HOURLY_RATE" ] + } + }, { + "name" : "startDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "startDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "showInProjectOrder", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Create a project hourly rate. ", + "operationId" : "ProjectHourlyRates_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/updateOrAddHourRates" : { + "put" : { + "tags" : [ "project/hourlyRates" ], + "summary" : "Update or add the same project hourly rate from project overview.", + "operationId" : "ProjectHourlyRatesUpdateOrAddHourRates_updateOrAddHourRates", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/HourlyRate" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectHourlyRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/projectSpecificRates/{id}" : { + "get" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Find project specific rate by ID.", + "operationId" : "ProjectHourlyRatesProjectSpecificRates_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSpecificRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Update a project specific rate.", + "operationId" : "ProjectHourlyRatesProjectSpecificRates_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSpecificRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Delete project specific rate ", + "operationId" : "ProjectHourlyRatesProjectSpecificRates_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/projectSpecificRates/list" : { + "put" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Update multiple project specific rates.", + "operationId" : "ProjectHourlyRatesProjectSpecificRatesList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectSpecificRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Create multiple new project specific rates.", + "operationId" : "ProjectHourlyRatesProjectSpecificRatesList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectSpecificRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Delete project specific rates.", + "operationId" : "ProjectHourlyRatesProjectSpecificRatesList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/hourlyRates/projectSpecificRates" : { + "get" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Find project specific rates corresponding with sent data.", + "operationId" : "ProjectHourlyRatesProjectSpecificRates_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectHourlyRateId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "activityId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectSpecificRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/hourlyRates/projectSpecificRates" ], + "summary" : "Create new project specific rate. ", + "operationId" : "ProjectHourlyRatesProjectSpecificRates_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSpecificRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/subcontract/{id}" : { + "get" : { + "tags" : [ "project/subcontract" ], + "summary" : "Find project sub-contract by ID.", + "operationId" : "ProjectSubcontract_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSubContract" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/subcontract" ], + "summary" : "Update project sub-contract.", + "operationId" : "ProjectSubcontract_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectSubContract" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSubContract" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "project/subcontract" ], + "summary" : "Delete project sub-contract by ID.", + "operationId" : "ProjectSubcontract_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/subcontract" : { + "get" : { + "tags" : [ "project/subcontract" ], + "summary" : "Find project sub-contracts corresponding with sent data.", + "operationId" : "ProjectSubcontract_search", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectSubContract" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "project/subcontract" ], + "summary" : "Add new project sub-contract.", + "operationId" : "ProjectSubcontract_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectSubContract" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSubContract" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/subcontract/query" : { + "get" : { + "tags" : [ "project/subcontract" ], + "summary" : "Wildcard search.", + "operationId" : "ProjectSubcontractQuery_query", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProjectSubContract" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/settings" : { + "get" : { + "tags" : [ "project/settings" ], + "summary" : "Get project settings of logged in company.", + "operationId" : "ProjectSettings_get", + "parameters" : [ { + "name" : "useNkode", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "project/settings" ], + "summary" : "Update project settings for company", + "operationId" : "ProjectSettings_put", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ProjectSettings" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/task" : { + "get" : { + "tags" : [ "project/task" ], + "summary" : "Find all tasks for project.", + "operationId" : "ProjectTask_search", + "parameters" : [ { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTask" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/project/template/{id}" : { + "get" : { + "tags" : [ "project/template" ], + "summary" : "Get project template by ID.", + "operationId" : "ProjectTemplate_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperProjectTemplate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/crm/prospect/{id}" : { + "get" : { + "tags" : [ "crm/prospect" ], + "summary" : "Get prospect by ID.", + "operationId" : "CrmProspect_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperObject" + } + } + } + } + }, + "deprecated" : true, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/crm/prospect" : { + "get" : { + "tags" : [ "crm/prospect" ], + "summary" : "Find prospects corresponding with sent data.", + "operationId" : "CrmProspect_search", + "parameters" : [ { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "createdDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "createdDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "salesEmployeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "isClosed", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "closedReason", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "closedDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "closedDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "competitor", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "prospectType", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectOfferId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseObject" + } + } + } + } + }, + "deprecated" : true, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/pickupPoint/{id}" : { + "get" : { + "tags" : [ "pickupPoint" ], + "summary" : "[DEPRECATED] Find pickup point by ID.", + "operationId" : "PickupPoint_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPickupPoint" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/pickupPoint" : { + "get" : { + "tags" : [ "pickupPoint" ], + "summary" : "[DEPRECATED] Search pickup points.", + "operationId" : "PickupPoint_search", + "parameters" : [ { + "name" : "supplierId", + "in" : "query", + "description" : "Valid ids.", + "schema" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + } + }, { + "name" : "transportTypeId", + "in" : "query", + "description" : "Valid TransportType ids.", + "schema" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + } + }, { + "name" : "code", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePickupPoint" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/{id}" : { + "get" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Find purchase order by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrder_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "purchaseOrder" ], + "summary" : " Update purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrder_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrder" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder" ], + "summary" : " Delete purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrder_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/{id}/attachment" : { + "post" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Upload attachment to purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderAttachment_uploadAttachment", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Delete attachment. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderAttachment_deleteAttachment", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of purchase order containing the attachment to delete.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder" : { + "get" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Find purchase orders with send data. Only available for Logistics Basic.", + "operationId" : "PurchaseOrder_search", + "parameters" : [ { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "deliveryDateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "schema" : { + "type" : "string" + } + }, { + "name" : "deliveryDateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and incl.).", + "schema" : { + "type" : "string" + } + }, { + "name" : "creationDateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "schema" : { + "type" : "string" + } + }, { + "name" : "creationDateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and incl.).", + "schema" : { + "type" : "string" + } + }, { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isClosed", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "withDeviationOnly", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Creates a new purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrder_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrder" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/{id}/:send" : { + "put" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Send purchase order by ID and sendType. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderSend_send", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "sendType", + "in" : "query", + "description" : "Send type. Sends the purchase order by email to the supplier. receiverEmail from the PO will be used if specified, otherwise falls back to the vendor email.", + "schema" : { + "type" : "string", + "enum" : [ "DEFAULT", "EMAIL", "FTP" ], + "default" : "DEFAULT" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/{id}/:sendByEmail" : { + "put" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Send purchase order by customisable email. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderSendByEmail_sendByEmail", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrderEmail" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/{id}/attachment/list" : { + "post" : { + "tags" : [ "purchaseOrder" ], + "summary" : "Upload multiple attachments to Purchase Order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderAttachmentList_uploadAttachments", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Upload multiple files", + "content" : { + "multipart/form-data" : { + "schema" : { + "type" : "object", + "properties" : { + "file" : { + "type" : "array", + "items" : { + "type" : "string", + "format" : "binary" + } + } + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/transportType/{id}" : { + "get" : { + "tags" : [ "transportType" ], + "summary" : " [BETA] Find transport type by ID.", + "operationId" : "TransportType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTransportType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/transportType" : { + "get" : { + "tags" : [ "transportType" ], + "summary" : "[BETA] Search transport type by supplier.", + "operationId" : "TransportType_search", + "parameters" : [ { + "name" : "supplier", + "in" : "query", + "description" : "Transport type supplier", + "required" : true, + "schema" : { + "type" : "string", + "description" : "Transport type supplier", + "enum" : [ "DEFAULT_SUPPLIER", "AHLSELL", "SONEPAR", "ONNINEN", "SOLAR", "ELEKTROSKANDIA", "BERGAARD_AMUNDSEN", "BROEDRENE_DAHL", "HEIDENREICH", "ELEKTROIMPORTOEREN" ] + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 3 + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "id, nameKey, code, isPickUp" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTransportType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/deviation/{id}/:approve" : { + "put" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Approve deviations. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviationApprove_approve", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/deviation/{id}" : { + "get" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Get deviation by order line ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDeviation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Update deviation. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviation_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Deviation" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDeviation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Delete goods receipt by purchase order ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/deviation/{id}/:deliver" : { + "put" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Send deviations to approval. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviationDeliver_deliver", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/deviation" : { + "get" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Find handled deviations for purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviation_search", + "parameters" : [ { + "name" : "purchaseOrderId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDeviation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Register deviation on goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Deviation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDeviation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/deviation/list" : { + "put" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Update multiple deviations. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviationList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Deviation" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDeviation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Register multiple deviations. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviationList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Deviation" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseDeviation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/deviation/{id}/:undeliver" : { + "put" : { + "tags" : [ "purchaseOrder/deviation" ], + "summary" : "Set status to Not delivered for deviations. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderDeviationUndeliver_undeliver", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceipt/{id}/:confirm" : { + "put" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Confirm goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptConfirm_confirm", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "createRestOrder", + "in" : "query", + "description" : "Create restorder if quantity received is less than ordered", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceipt/{id}" : { + "get" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Get goods receipt by purchase order ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceipt_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceipt" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Update goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceipt_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Goods Receipt ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/GoodsReceipt" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceipt" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Delete goods receipt by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceipt_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceipt/list" : { + "post" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Register multiple goods receipts without an existing purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptList_postList", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GoodsReceipt" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseGoodsReceipt" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Delete multiple goods receipts by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceipt" : { + "get" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Get goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceipt_search", + "parameters" : [ { + "name" : "receivedDateFrom", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.).", + "schema" : { + "type" : "string" + } + }, { + "name" : "receivedDateTo", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and incl.).", + "schema" : { + "type" : "string" + } + }, { + "name" : "status", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "STATUS_OPEN", "STATUS_CONFIRMED" ] + } + }, { + "name" : "withoutPurchase", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseGoodsReceipt" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Register goods receipt without an existing purchase order. When registration of several goods receipt, use /list for better performance. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceipt_post", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/GoodsReceipt" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceipt" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceipt/{id}/:receiveAndConfirm" : { + "put" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : " Receive all ordered products and approve goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptReceiveAndConfirm_receiveAndConfirm", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "receivedDate", + "in" : "query", + "description" : "The approval date for the subscription.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "inventoryId", + "in" : "query", + "description" : "ID of inventory. Main inventory is set as default", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceipt/{id}/:registerGoodsReceipt" : { + "put" : { + "tags" : [ "purchaseOrder/goodsReceipt" ], + "summary" : "Register goods receipt. Quantity received on the products is set to the same as quantity ordered. To update the quantity received, use PUT /purchaseOrder/goodsReceiptLine/{id}. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptRegisterGoodsReceipt_registerGoodsReceipt", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Purchase Order ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "registrationDate", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "inventoryId", + "in" : "query", + "description" : "ID of inventory. Main inventory is set as default", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceipt" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceiptLine/{id}" : { + "get" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Get goods receipt line by purchase order line ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLine_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceiptLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Update a goods receipt line on a goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLine_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Goods receipt Line ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceiptLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Delete goods receipt line by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLine_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceiptLine/list" : { + "put" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Update goods receipt lines on a goods receipt. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLineList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseGoodsReceiptLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Register multiple new goods receipts on an existing purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLineList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseGoodsReceiptLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Delete goods receipt lines by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLineList_deleteList", + "requestBody" : { + "description" : "JSON representing objects to delete. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/goodsReceiptLine" : { + "get" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Find goods receipt lines for purchase order. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLine_search", + "parameters" : [ { + "name" : "purchaseOrderId", + "in" : "query", + "description" : "Equals", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseGoodsReceiptLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/goodsReceiptLine" ], + "summary" : "Register new goods receipt; new product on an existing purchase order. When registration of several goods receipts, use /list for better performance. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderGoodsReceiptLine_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperGoodsReceiptLine" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/purchaseOrderIncomingInvoiceRelation/{id}" : { + "get" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Find purchase order relation to voucher by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrderIncomingInvoiceRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Update purchase order relation to voucher. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelation_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrderIncomingInvoiceRelation" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrderIncomingInvoiceRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Delete purchase order voucher relation. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/purchaseOrderIncomingInvoiceRelation/list" : { + "post" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Create a new list of relations between purchase order and voucher. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelationList_postList", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderIncomingInvoiceRelation" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePurchaseOrderIncomingInvoiceRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Delete multiple purchase order voucher relations. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelationList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/purchaseOrderIncomingInvoiceRelation" : { + "get" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Find purchase order relation to voucher with sent data. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelation_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "orderOutId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "voucherId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePurchaseOrderIncomingInvoiceRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/purchaseOrderIncomingInvoiceRelation" ], + "summary" : "Create new relation between purchase order and a voucher. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderPurchaseOrderIncomingInvoiceRelation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrderIncomingInvoiceRelation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrderIncomingInvoiceRelation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/orderline/{id}" : { + "get" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Find purchase order line by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderline_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrderline" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Updates purchase order line. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderline_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrderline" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Delete purchase order line. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderline_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/orderline/list" : { + "put" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Update a list of purchase order lines. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderlineList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePurchaseOrderline" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Create list of new purchase order lines. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderlineList_postList", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePurchaseOrderline" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Delete purchase order lines by ID. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderlineList_deleteList", + "requestBody" : { + "description" : "JSON representing objects to delete. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/purchaseOrder/orderline" : { + "post" : { + "tags" : [ "purchaseOrder/orderline" ], + "summary" : "Creates purchase order line. Only available for Logistics Basic.", + "operationId" : "PurchaseOrderOrderline_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPurchaseOrderline" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/reminder/{reminderId}/pdf" : { + "get" : { + "tags" : [ "reminder" ], + "summary" : "Get reminder document by reminder ID.", + "operationId" : "ReminderPdf_downloadPdf", + "parameters" : [ { + "name" : "reminderId", + "in" : "path", + "description" : "Reminder ID from which PDF is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "PDF document of the reminder", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/reminder/{id}" : { + "get" : { + "tags" : [ "reminder" ], + "summary" : "Get reminder by ID.", + "operationId" : "Reminder_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperReminder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/reminder" : { + "get" : { + "tags" : [ "reminder" ], + "summary" : "Find reminders corresponding with sent data.", + "operationId" : "Reminder_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "termOfPaymentTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "termOfPaymentFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "customerId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseReminder" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/resultbudget/company" : { + "get" : { + "tags" : [ "resultbudget" ], + "summary" : "Get result budget for company", + "operationId" : "ResultbudgetCompany_getCompanyResultBudget", + "parameters" : [ { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to current year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResultBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/resultbudget/department/{id}" : { + "get" : { + "tags" : [ "resultbudget" ], + "summary" : "Get result budget associated with a departmentId", + "operationId" : "ResultbudgetDepartment_getDepartmentResultBudget", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to current year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResultBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/resultbudget/employee/{id}" : { + "get" : { + "tags" : [ "resultbudget" ], + "summary" : "Get result budget associated with an employeeId", + "operationId" : "ResultbudgetEmployee_getEmployeeResultBudget", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to current year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResultBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/resultbudget/product/{id}" : { + "get" : { + "tags" : [ "resultbudget" ], + "summary" : "Get result budget associated with a productId", + "operationId" : "ResultbudgetProduct_getProductResultBudget", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to current year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResultBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/resultbudget/project/{id}" : { + "get" : { + "tags" : [ "resultbudget" ], + "summary" : "Get result budget associated with a projectId", + "operationId" : "ResultbudgetProject_getProjectResultBudget", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to current year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResultBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/resultbudget" : { + "get" : { + "tags" : [ "resultbudget" ], + "summary" : "Find result budgets corresponding with sent data. Either specify the ids of the departments, projects, products or employees to return result budgets for, or use the boolean parameters includeAll***ResultBudgets to get all results budgets.", + "operationId" : "Resultbudget_search", + "parameters" : [ { + "name" : "departmentIds", + "in" : "query", + "description" : "List of department ids to return result budgets for", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectIds", + "in" : "query", + "description" : "List of project ids to return result budgets for", + "schema" : { + "type" : "string" + } + }, { + "name" : "productIds", + "in" : "query", + "description" : "List of product ids to return result budgets for", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of employee ids to return result budgets for", + "schema" : { + "type" : "string" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to current year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "includeAllDepartmentResultBudgets", + "in" : "query", + "description" : "Include all department result budgets for active departments", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "includeAllProjectResultBudgets", + "in" : "query", + "description" : "Include all project result budgets for active projects", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "includeAllProductResultBudgets", + "in" : "query", + "description" : "Include all product result budgets for active products", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "includeAllEmployeeResultBudgets", + "in" : "query", + "description" : "Include all employee result budgets for active employees", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResultBudget" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/saft/exportSAFT" : { + "get" : { + "tags" : [ "saft" ], + "summary" : "[BETA] Create SAF-T export for the Tripletex account.", + "operationId" : "SaftExportSAFT_exportSAFT", + "parameters" : [ { + "name" : "year", + "in" : "query", + "description" : "Year to export", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int32" + } + } ], + "responses" : { + "200" : { + "description" : "SAF-T export successful. Returns a zip file containing the SAF-T export.", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/saft/importSAFT" : { + "post" : { + "tags" : [ "saft" ], + "summary" : "[BETA] Import SAF-T. Send XML file as multipart form.", + "operationId" : "SaftImportSAFT_importSAFT", + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "createCustomerIB", "createMissingAccounts", "createVendorIB", "importCustomerVendors", "importDepartments", "importProjects", "importStartBalanceFromClosing", "importStartBalanceFromOpening", "importVouchers", "mappingFile", "onlyActiveAccounts", "onlyActiveCustomers", "overrideVoucherDateOnDiscrepancy", "overwriteCustomersContacts", "saftFile", "tripletexGeneratesCustomerNumbers", "updateAccountNames", "updateStartBalance" ], + "type" : "object", + "properties" : { + "saftFile" : { + "type" : "string", + "description" : "The SAF-T file (XML)", + "format" : "binary" + }, + "mappingFile" : { + "type" : "string", + "description" : "Mapping of chart of accounts (Excel). See https://tripletex.no/resources/examples/saft_account_mapping.xls", + "format" : "binary" + }, + "importCustomerVendors" : { + "type" : "boolean", + "description" : "Create customers and suppliers" + }, + "createMissingAccounts" : { + "type" : "boolean", + "description" : "Create new accounts" + }, + "importStartBalanceFromOpening" : { + "type" : "boolean", + "description" : "Create an opening balance from the import file's starting balance." + }, + "importStartBalanceFromClosing" : { + "type" : "boolean", + "description" : "Create an opening balance from the import file's outgoing balance." + }, + "importVouchers" : { + "type" : "boolean", + "description" : "Create vouchers" + }, + "importDepartments" : { + "type" : "boolean", + "description" : "Create departments" + }, + "importProjects" : { + "type" : "boolean", + "description" : "Create projects" + }, + "tripletexGeneratesCustomerNumbers" : { + "type" : "boolean", + "description" : "Let Tripletex create customer and supplier numbers and ignore the numbers in the import file." + }, + "createCustomerIB" : { + "type" : "boolean", + "description" : "Create an opening balance on accounts receivable from customers" + }, + "updateAccountNames" : { + "type" : "boolean", + "description" : "Overwrite existing names on accounts" + }, + "createVendorIB" : { + "type" : "boolean", + "description" : "Create an opening balance on accounts payable" + }, + "overrideVoucherDateOnDiscrepancy" : { + "type" : "boolean", + "description" : "Overwrite transaction date on period discrepancies." + }, + "overwriteCustomersContacts" : { + "type" : "boolean", + "description" : "Overwrite existing customers/contacts" + }, + "onlyActiveCustomers" : { + "type" : "boolean", + "description" : "Only active customers" + }, + "onlyActiveAccounts" : { + "type" : "boolean", + "description" : "Only active accounts" + }, + "updateStartBalance" : { + "type" : "boolean", + "description" : "Update the opening balance of main ledger accounts from the import file by import before the opening balance." + } + } + } + } + } + }, + "responses" : { + "200" : { + "description" : "SAF-T import successful. Returns true if the import was successful.", + "content" : { + "application/json" : { + "schema" : { + "type" : "boolean" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/type/{id}" : { + "get" : { + "tags" : [ "salary/type" ], + "summary" : "Find salary type by ID.", + "operationId" : "SalaryType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalaryType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/type" : { + "get" : { + "tags" : [ "salary/type" ], + "summary" : "Find salary type corresponding with sent data.", + "operationId" : "SalaryType_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "number", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "showInTimesheet", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSalaryType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/compilation/pdf" : { + "get" : { + "tags" : [ "salary/compilation" ], + "summary" : "Find salary compilation (PDF document) by employee.", + "operationId" : "SalaryCompilationPdf_downloadPdf", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to previous year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + } ], + "responses" : { + "200" : { + "description" : "PDF document containing salary compilation for the specified employee and year.", + "content" : { + "application/octet-stream" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/compilation" : { + "get" : { + "tags" : [ "salary/compilation" ], + "summary" : "Find salary compilation by employee.", + "operationId" : "SalaryCompilation_get", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "year", + "in" : "query", + "description" : "Must be between 1900-2100. Defaults to previous year.", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalaryCompilation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/payslip/{id}/pdf" : { + "get" : { + "tags" : [ "salary/payslip" ], + "summary" : "Find payslip (PDF document) by ID.", + "operationId" : "SalaryPayslipPdf_downloadPdf", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "Returns the payslip as a PDF document.", + "content" : { + "application/octet-stream" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/payslip/{id}" : { + "get" : { + "tags" : [ "salary/payslip" ], + "summary" : "Find payslip by ID.", + "operationId" : "SalaryPayslip_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPayslip" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/payslip" : { + "get" : { + "tags" : [ "salary/payslip" ], + "summary" : "Find payslips corresponding with sent data.", + "operationId" : "SalaryPayslip_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "wageTransactionId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "activityId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "yearFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "yearTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "monthFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "monthTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "voucherDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "voucherDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePayslip" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings" : { + "get" : { + "tags" : [ "salary/settings" ], + "summary" : "Get salary settings of logged in company.", + "operationId" : "SalarySettings_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalarySettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "salary/settings" ], + "summary" : "Update settings of logged in company.", + "operationId" : "SalarySettings_put", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/SalarySettings" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalarySettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/holiday/list" : { + "put" : { + "tags" : [ "salary/settings/holiday" ], + "summary" : "Update multiple holiday settings of current logged in company.", + "operationId" : "SalarySettingsHolidayList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CompanyHoliday" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCompanyHoliday" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "salary/settings/holiday" ], + "summary" : "Create multiple holiday settings of current logged in company.", + "operationId" : "SalarySettingsHolidayList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CompanyHoliday" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCompanyHoliday" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "salary/settings/holiday" ], + "summary" : "Delete multiple holiday settings of current logged in company.", + "operationId" : "SalarySettingsHolidayList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/holiday" : { + "get" : { + "tags" : [ "salary/settings/holiday" ], + "summary" : "Find holiday settings of current logged in company.", + "operationId" : "SalarySettingsHoliday_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCompanyHoliday" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "salary/settings/holiday" ], + "summary" : "Create a holiday setting of current logged in company.", + "operationId" : "SalarySettingsHoliday_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CompanyHoliday" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyHoliday" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/holiday/{id}" : { + "put" : { + "tags" : [ "salary/settings/holiday" ], + "summary" : "Update a holiday setting of current logged in company.", + "operationId" : "SalarySettingsHoliday_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CompanyHoliday" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyHoliday" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/pension" : { + "get" : { + "tags" : [ "pension" ], + "summary" : "Find countries corresponding with sent data.", + "operationId" : "Pension_search", + "parameters" : [ { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "startDate", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseGlobalPension" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/pensionScheme/{id}" : { + "get" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Get Pension Scheme for a specific ID", + "operationId" : "SalarySettingsPensionScheme_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPensionScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Update a Pension Scheme", + "operationId" : "SalarySettingsPensionScheme_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PensionScheme" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPensionScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Delete a Pension Scheme", + "operationId" : "SalarySettingsPensionScheme_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/pensionScheme/list" : { + "put" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Update multiple Pension Schemes.", + "operationId" : "SalarySettingsPensionSchemeList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PensionScheme" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePensionScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Create multiple Pension Schemes.", + "operationId" : "SalarySettingsPensionSchemeList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PensionScheme" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePensionScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Delete multiple Pension Schemes.", + "operationId" : "SalarySettingsPensionSchemeList_deleteByIds", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/pensionScheme" : { + "get" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Find pension schemes.", + "operationId" : "SalarySettingsPensionScheme_search", + "parameters" : [ { + "name" : "number", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePensionScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "salary/settings/pensionScheme" ], + "summary" : "Create a Pension Scheme.", + "operationId" : "SalarySettingsPensionScheme_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/PensionScheme" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPensionScheme" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/standardTime/{id}" : { + "get" : { + "tags" : [ "salary/settings/standardTime" ], + "summary" : "Find standard time by ID.", + "operationId" : "SalarySettingsStandardTime_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "salary/settings/standardTime" ], + "summary" : "Update standard time. ", + "operationId" : "SalarySettingsStandardTime_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CompanyStandardTime" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/standardTime/byDate" : { + "get" : { + "tags" : [ "salary/settings/standardTime" ], + "summary" : "Find standard time by date", + "operationId" : "SalarySettingsStandardTimeByDate_getByDate", + "parameters" : [ { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/settings/standardTime" : { + "get" : { + "tags" : [ "salary/settings/standardTime" ], + "summary" : "Get all standard times.", + "operationId" : "SalarySettingsStandardTime_search", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCompanyStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "salary/settings/standardTime" ], + "summary" : "Create standard time.", + "operationId" : "SalarySettingsStandardTime_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CompanyStandardTime" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyStandardTime" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/transaction/{id}" : { + "get" : { + "tags" : [ "salary/transaction" ], + "summary" : "Find salary transaction by ID.", + "operationId" : "SalaryTransaction_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalaryTransaction" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "salary/transaction" ], + "summary" : "Delete salary transaction by ID.", + "operationId" : "SalaryTransaction_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/transaction/{id}/deleteAttachment" : { + "put" : { + "tags" : [ "salary/transaction" ], + "summary" : "Delete attachment.", + "operationId" : "SalaryTransactionDeleteAttachment_deleteAttachment", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "ID of transaction containing the attachment to delete.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "sendToVoucherInbox", + "in" : "query", + "description" : "Should the attachment be sent to inbox rather than deleted?", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "split", + "in" : "query", + "description" : "If sendToInbox is true, should the attachment be split into one voucher per page?", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/transaction" : { + "post" : { + "tags" : [ "salary/transaction" ], + "summary" : "Create a new salary transaction.", + "operationId" : "SalaryTransaction_post", + "parameters" : [ { + "name" : "generateTaxDeduction", + "in" : "query", + "description" : "Generate tax deduction", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/SalaryTransaction" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSalaryTransaction" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/transaction/{id}/attachment" : { + "post" : { + "tags" : [ "salary/transaction" ], + "summary" : "Upload an attachment to a salary transaction", + "operationId" : "SalaryTransactionAttachment_uploadAttachment", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Salary Transaction Id to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLong" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/salary/transaction/{id}/attachment/list" : { + "post" : { + "tags" : [ "salary/transaction" ], + "summary" : "Upload multiple attachments to a salary transaction", + "operationId" : "SalaryTransactionAttachmentList_uploadAttachments", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Salary Transaction Id to upload attachments to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Upload multiple files", + "content" : { + "multipart/form-data" : { + "schema" : { + "type" : "object", + "properties" : { + "file" : { + "type" : "array", + "items" : { + "type" : "string", + "format" : "binary" + } + } + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperLong" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplier/{id}" : { + "get" : { + "tags" : [ "supplier" ], + "summary" : "Get supplier by ID.", + "operationId" : "Supplier_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplier" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "supplier" ], + "summary" : "Update supplier. ", + "operationId" : "Supplier_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Supplier" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplier" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "supplier" ], + "summary" : "Delete supplier by ID", + "operationId" : "Supplier_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplier" : { + "get" : { + "tags" : [ "supplier" ], + "summary" : "Find suppliers corresponding with sent data.", + "operationId" : "Supplier_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "supplierNumber", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "organizationNumber", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "email", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceEmail", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "accountManagerId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "changedSince", + "in" : "query", + "description" : "Only return elements that have changed since this date and time", + "schema" : { + "type" : "string" + } + }, { + "name" : "isWholesaler", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "showProducts", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplier" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "supplier" ], + "summary" : "Create supplier. Related supplier addresses may also be created.", + "operationId" : "Supplier_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Supplier" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplier" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplier/list" : { + "put" : { + "tags" : [ "supplier" ], + "summary" : "Update multiple suppliers. Addresses can also be updated.", + "operationId" : "SupplierList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Supplier" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplier" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "supplier" ], + "summary" : "Create multiple suppliers. Related supplier addresses may also be created.", + "operationId" : "SupplierList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Supplier" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplier" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{invoiceId}/:addPayment" : { + "post" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Register payment, paymentType == 0 finds the last paymentType for this vendor.Use of this method requires setup done by Tripletex.", + "operationId" : "SupplierInvoiceAddPayment_addPayment", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "Invoice ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "paymentType", + "in" : "query", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "amount", + "in" : "query", + "schema" : { + "type" : "number" + } + }, { + "name" : "kidOrReceiverReference", + "in" : "query", + "schema" : { + "type" : "string" + } + }, { + "name" : "bban", + "in" : "query", + "schema" : { + "type" : "string" + } + }, { + "name" : "paymentDate", + "in" : "query", + "schema" : { + "type" : "string" + } + }, { + "name" : "useDefaultPaymentType", + "in" : "query", + "description" : "Set paymentType to last type for vendor, autopay, nets or first available other type", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "partialPayment", + "in" : "query", + "description" : "Set to true to allow multiple payments registered.", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{invoiceId}/:addRecipient" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Add recipient to supplier invoices.", + "operationId" : "SupplierInvoiceAddRecipient_addRecipient", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "Invoice ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "comment", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/:addRecipient" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Add recipient.", + "operationId" : "SupplierInvoiceAddRecipient_addRecipientToMany", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "invoiceIds", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "comment", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{invoiceId}/:approve" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Approve supplier invoice.", + "operationId" : "SupplierInvoiceApprove_approve", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "ID of the elements", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "comment", + "schema" : { + "type" : "string" + } + }, { + "name" : "overrideApprovalFlow", + "in" : "query", + "description" : "Finalize the attestation flow without going through the remaining levels. Requires the company-attestant role.", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/:approve" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Approve supplier invoices.", + "operationId" : "SupplierInvoiceApprove_approveMany", + "parameters" : [ { + "name" : "invoiceIds", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "comment", + "schema" : { + "type" : "string" + } + }, { + "name" : "overrideApprovalFlow", + "in" : "query", + "description" : "Finalize the attestation flow without going through the remaining levels. Requires the company-attestant role.", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{invoiceId}/:changeDimension" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Change dimension on a supplier invoice.", + "operationId" : "SupplierInvoiceChangeDimension_changeDimensionMany", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "Invoice ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "debitPostingIds", + "in" : "query", + "description" : "The list of IDs of the debit postings that you want to change dimensions for", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dimension", + "in" : "query", + "description" : "Dimension", + "required" : true, + "schema" : { + "type" : "string", + "enum" : [ "PROJECT", "DEPARTMENT", "EMPLOYEE", "PRODUCT", "FREE_DIMENSION_1", "FREE_DIMENSION_2", "FREE_DIMENSION_3" ] + } + }, { + "name" : "dimensionId", + "in" : "query", + "description" : "DimensionID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{invoiceId}/pdf" : { + "get" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Get supplierInvoice document by invoice ID.", + "operationId" : "SupplierInvoicePdf_downloadPdf", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "Invoice ID from which document is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "Returns the PDF document of the supplier invoice.", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{id}" : { + "get" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Get supplierInvoice by ID.", + "operationId" : "SupplierInvoice_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/forApproval" : { + "get" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Get supplierInvoices for approval", + "operationId" : "SupplierInvoiceForApproval_getApprovalInvoices", + "parameters" : [ { + "name" : "searchText", + "in" : "query", + "description" : "Search for department, employee, project and more", + "schema" : { + "type" : "string" + } + }, { + "name" : "showAll", + "in" : "query", + "description" : "Show all or just your own", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Default is logged in employee", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice" : { + "get" : { + "tags" : [ "supplierInvoice" ], + "summary" : "Find supplierInvoices corresponding with sent data.", + "operationId" : "SupplierInvoice_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceDateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceNumber", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "kid", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "voucherId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "supplierId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/voucher/{id}/postings" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "[BETA] Put debit postings.", + "operationId" : "SupplierInvoiceVoucherPostings_putPostings", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Voucher id", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "sendToLedger", + "in" : "query", + "description" : "Use of this parameter with value 'true' requires setup done by Tripletex.", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "voucherDate", + "in" : "query", + "description" : "If set, the date of the voucher and the supplier invoice will be changed to this date. If empty, date will not be changed", + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "description" : "Postings", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/OrderLinePosting" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/{invoiceId}/:reject" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "reject supplier invoice.", + "operationId" : "SupplierInvoiceReject_reject", + "parameters" : [ { + "name" : "invoiceId", + "in" : "path", + "description" : "Invoice ID.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "comment", + "in" : "query", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierInvoice/:reject" : { + "put" : { + "tags" : [ "supplierInvoice" ], + "summary" : "reject supplier invoices.", + "operationId" : "SupplierInvoiceReject_rejectMany", + "parameters" : [ { + "name" : "comment", + "in" : "query", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "invoiceIds", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierInvoice" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/voucherApprovalListElement/{id}" : { + "get" : { + "tags" : [ "voucherApprovalListElement" ], + "summary" : "Get by ID.", + "operationId" : "VoucherApprovalListElement_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucherApprovalListElement" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supplierCustomer/search" : { + "get" : { + "tags" : [ "supplierCustomer" ], + "summary" : "Find all active suppliers and customers.", + "operationId" : "SupplierCustomerSearch_search", + "parameters" : [ { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupplierCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supportDashboard/export" : { + "get" : { + "tags" : [ "supportDashboard" ], + "summary" : "Export the customers table to a specific format", + "operationId" : "SupportDashboardExport_export", + "parameters" : [ { + "name" : "type", + "in" : "query", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "filter", + "in" : "query", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "startDateRange", + "in" : "query", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "endDateRange", + "in" : "query", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "The filtered customers table", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/supportDashboard/bankruptAndExcludedCustomers" : { + "get" : { + "tags" : [ "supportDashboard" ], + "summary" : "Returns the customers for support dashboard.", + "operationId" : "SupportDashboardBankruptAndExcludedCustomers_getBankruptAndExcludedCustomers", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseSupportDashboardCustomer" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated/{id}/:approve" : { + "put" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Only for allocated hours on the company's internal holiday/vacation activity. Mark the allocated hour entry as approved. The hours will be copied to the time sheet if the relevant week/month is not approved, and there are no interfering time clocks that are active. A notification will be sent to the entry's employee if the entry's approval status or comment has changed.", + "operationId" : "TimesheetAllocatedApprove_approve", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "managerComment", + "in" : "query", + "description" : "Comment to be added to the approved hour entry.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated/:approveList" : { + "put" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Only for allocated hours on the company's internal holiday/vacation activity. Mark the allocated hour entry/entries as approved. The hours will be copied to the time sheet if the relevant weeks/months are not approved, and there are no interfering time clocks that are active. Notifications will be sent to the entries' employees if the entries' approval statuses or comments have changed. If IDs are provided, the other args are ignored.", + "operationId" : "TimesheetAllocatedApproveList_approveList", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "List of allocated hour entry IDs.", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "managerComment", + "in" : "query", + "description" : "Comment to be added to all approved hour entries.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated/{id}" : { + "get" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Find allocated hour entry by ID.", + "operationId" : "TimesheetAllocated_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Update allocated hour entry by ID. Note: Allocated hour entry object fields which are present but not set, or set to 0, will be nulled. Only holiday/vacation hours can receive comments. A notification will be sent to the entry's employee if the entry's comment has changed.", + "operationId" : "TimesheetAllocated_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetAllocated" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Delete allocated hour entry by ID.", + "operationId" : "TimesheetAllocated_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated/list" : { + "put" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Update allocated hour entry. Multiple objects for different users can be sent in the same request. Note: Allocated hour entry object fields which are present but not set, or set to 0, will be nulled. Only holiday/vacation hours can receive comments. Notifications will be sent to the entries' employees if the entries' comments have changed.", + "operationId" : "TimesheetAllocatedList_putList", + "requestBody" : { + "description" : "List of allocated hour entry objects to update. Should have ID set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TimesheetAllocated" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Add new allocated hour entry. Multiple objects for several users can be sent in the same request. Only holiday/vacation hours can receive comments. Notifications will be sent to the entries' employees if the entries have comments.", + "operationId" : "TimesheetAllocatedList_postList", + "requestBody" : { + "description" : "JSON representing a list of new objects to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TimesheetAllocated" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated" : { + "get" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Find allocated hour entries corresponding with sent data.", + "operationId" : "TimesheetAllocated_search", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "activityIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Add new allocated hour entry. Only one entry per employee/date/activity/project combination is supported. Only holiday/vacation hours can receive comments. A notification will be sent to the entry's employee if the entry has a comment.", + "operationId" : "TimesheetAllocated_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetAllocated" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated/{id}/:unapprove" : { + "put" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Only for allocated hours on the company's internal holiday/vacation activity. Mark the allocated hour entry as unapproved. A notification will be sent to the entry's employee if the entry's approval status or comment has changed.", + "operationId" : "TimesheetAllocatedUnapprove_unapprove", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "managerComment", + "in" : "query", + "description" : "Comment to be added to the unapproved hour entry.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/allocated/:unapproveList" : { + "put" : { + "tags" : [ "timesheet/allocated" ], + "summary" : "Only for allocated hours on the company's internal holiday/vacation activity. Mark the allocated hour entry/entries as unapproved. Notifications will be sent to the entries' employees if the entries' approval statuses or comments have changed. If IDs are provided, the other args are ignored.", + "operationId" : "TimesheetAllocatedUnapproveList_unapproveList", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "List of allocated hour entry IDs.", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "managerComment", + "in" : "query", + "description" : "Comment to be added to all unapproved hour entries.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetAllocated" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/companyHoliday/{id}" : { + "get" : { + "tags" : [ "timesheet/companyHoliday" ], + "summary" : "[BETA] Get company holiday by its ID", + "operationId" : "TimesheetCompanyHoliday_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyHolidays" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "timesheet/companyHoliday" ], + "summary" : "[BETA] Update a company holiday", + "operationId" : "TimesheetCompanyHoliday_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CompanyHolidays" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyHolidays" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "timesheet/companyHoliday" ], + "summary" : "[BETA] Delete a company holiday", + "operationId" : "TimesheetCompanyHoliday_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/companyHoliday" : { + "get" : { + "tags" : [ "timesheet/companyHoliday" ], + "summary" : "[BETA] Search for company holidays by id or year.", + "operationId" : "TimesheetCompanyHoliday_search", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + }, { + "name" : "years", + "in" : "query", + "description" : "A year `2020` for instance", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCompanyHolidays" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/companyHoliday" ], + "summary" : "[BETA] Create a company holiday", + "operationId" : "TimesheetCompanyHoliday_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CompanyHolidays" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCompanyHolidays" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/entry/{id}" : { + "get" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Find timesheet entry by ID.", + "operationId" : "TimesheetEntry_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetEntry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Update timesheet entry by ID. Note: Timesheet entry object fields which are present but not set, or set to 0, will be nulled.", + "operationId" : "TimesheetEntry_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetEntry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Delete timesheet entry by ID.", + "operationId" : "TimesheetEntry_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "version", + "in" : "query", + "description" : "Number of current version", + "schema" : { + "type" : "integer", + "format" : "int32" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/entry/list" : { + "put" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Update timesheet entry. Multiple objects for different users can be sent in the same request.", + "operationId" : "TimesheetEntryList_putList", + "requestBody" : { + "description" : "List of timesheet entry objects to update", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetEntry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Add new timesheet entry. Multiple objects for several users can be sent in the same request.", + "operationId" : "TimesheetEntryList_postList", + "requestBody" : { + "description" : "List of timesheet entry objects", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetEntry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/entry" : { + "get" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Find timesheet entry corresponding with sent data.", + "operationId" : "TimesheetEntry_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "activityId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetEntrySearchResponse" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Add new timesheet entry. Only one entry per employee/date/activity/project combination is supported.", + "operationId" : "TimesheetEntry_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetEntry" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/entry/>recentActivities" : { + "get" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Find recently used timesheet activities.", + "operationId" : "TimesheetEntryRecentActivities_getRecentActivities", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "ID of employee to find activities for. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "ID of project to find activities for", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseActivity" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/entry/>recentProjects" : { + "get" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Find projects with recent activities (timesheet entry registered).", + "operationId" : "TimesheetEntryRecentProjects_getRecentProjects", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "ID of employee with recent project hours Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseProject" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/entry/>totalHours" : { + "get" : { + "tags" : [ "timesheet/entry" ], + "summary" : "Find total hours registered on an employee in a specific period.", + "operationId" : "TimesheetEntryTotalHours_getTotalHours", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "ID of employee to find hours for. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "startDate", + "in" : "query", + "description" : "Format is yyyy-MM-dd (from and incl.). Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "endDate", + "in" : "query", + "description" : "Format is yyyy-MM-dd (to and excl.). Defaults to tomorrow.", + "schema" : { + "type" : "string" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperBigDecimal" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/:approve" : { + "put" : { + "tags" : [ "timesheet/month" ], + "summary" : "approve month(s). If id is provided the other args are ignored", + "operationId" : "TimesheetMonthApprove_approve", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Element ID", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "schema" : { + "type" : "string" + } + }, { + "name" : "monthYear", + "in" : "query", + "description" : "2020-01", + "schema" : { + "type" : "string" + } + }, { + "name" : "approvedUntilDate", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.. Defaults to end of month", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/:complete" : { + "put" : { + "tags" : [ "timesheet/month" ], + "summary" : "complete month(s). If id is provided the other args are ignored", + "operationId" : "TimesheetMonthComplete_complete", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Element ID", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "schema" : { + "type" : "string" + } + }, { + "name" : "monthYear", + "in" : "query", + "description" : "2020-01", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/{id}" : { + "get" : { + "tags" : [ "timesheet/month" ], + "summary" : "Find monthly status entry by ID.", + "operationId" : "TimesheetMonth_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/byMonthNumber" : { + "get" : { + "tags" : [ "timesheet/month" ], + "summary" : "Find monthly status for given month.", + "operationId" : "TimesheetMonthByMonthNumber_getByMonthNumber", + "parameters" : [ { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "monthYear", + "in" : "query", + "description" : "2020-01", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMonthlyStatus" + } + } + } + } + }, + "deprecated" : true, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/byMonthNumberList" : { + "get" : { + "tags" : [ "timesheet/month" ], + "summary" : "Find monthly status for given month list.", + "operationId" : "TimesheetMonthByMonthNumberList_getByMonthNumberList", + "parameters" : [ { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "monthYearList", + "in" : "query", + "description" : "2020-01,2020-02", + "required" : true, + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/:reopen" : { + "put" : { + "tags" : [ "timesheet/month" ], + "summary" : "reopen month(s). If id is provided the other args are ignored", + "operationId" : "TimesheetMonthReopen_reopen", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Element ID", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "schema" : { + "type" : "string" + } + }, { + "name" : "monthYear", + "in" : "query", + "description" : "2020-01", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/month/:unapprove" : { + "put" : { + "tags" : [ "timesheet/month" ], + "summary" : "unapprove month(s). If id is provided the other args are ignored", + "operationId" : "TimesheetMonthUnapprove_unapprove", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Element ID", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs. Defaults to ID of token owner.", + "schema" : { + "type" : "string" + } + }, { + "name" : "monthYear", + "in" : "query", + "description" : "2020-01", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMonthlyStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/salaryProjectTypeSpecification/{id}" : { + "get" : { + "tags" : [ "timesheet/salaryProjectTypeSpecification" ], + "summary" : "Get timesheet ProjectSalaryType specification for a specific ID", + "operationId" : "TimesheetSalaryProjectTypeSpecification_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetProjectSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "timesheet/salaryProjectTypeSpecification" ], + "summary" : "Update a timesheet ProjectSalaryType specification", + "operationId" : "TimesheetSalaryProjectTypeSpecification_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "JSON representing the object to be updated. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetProjectSalaryTypeSpecification" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetProjectSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "timesheet/salaryProjectTypeSpecification" ], + "summary" : "Delete a timesheet SalaryType specification", + "operationId" : "TimesheetSalaryProjectTypeSpecification_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/salaryProjectTypeSpecification" : { + "get" : { + "tags" : [ "timesheet/salaryProjectTypeSpecification" ], + "summary" : "Get list of time sheet ProjectSalaryType specifications", + "operationId" : "TimesheetSalaryProjectTypeSpecification_search", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "activityId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "includeNotConnectedToActivities", + "in" : "query", + "description" : "If true and activity ID is set, specifications not yet connected to activities will be included.", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetProjectSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/salaryProjectTypeSpecification" ], + "summary" : "Create a timesheet ProjectSalaryType specification", + "operationId" : "TimesheetSalaryProjectTypeSpecification_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetProjectSalaryTypeSpecification" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetProjectSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/salaryTypeSpecification/{id}" : { + "get" : { + "tags" : [ "timesheet/salaryTypeSpecification" ], + "summary" : "[BETA] Get timesheet SalaryType Specification for a specific ID", + "operationId" : "TimesheetSalaryTypeSpecification_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "timesheet/salaryTypeSpecification" ], + "summary" : "[BETA] Update a timesheet SalaryType Specification", + "operationId" : "TimesheetSalaryTypeSpecification_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetSalaryTypeSpecification" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "timesheet/salaryTypeSpecification" ], + "summary" : "[BETA] Delete a timesheet SalaryType Specification", + "operationId" : "TimesheetSalaryTypeSpecification_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/salaryTypeSpecification" : { + "get" : { + "tags" : [ "timesheet/salaryTypeSpecification" ], + "summary" : "[BETA] Get list of timesheet SalaryType Specifications", + "operationId" : "TimesheetSalaryTypeSpecification_search", + "parameters" : [ { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimesheetSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "timesheet/salaryTypeSpecification" ], + "summary" : "[BETA] Create a timesheet SalaryType Specification. Only one entry per employee/date/SalaryType", + "operationId" : "TimesheetSalaryTypeSpecification_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TimesheetSalaryTypeSpecification" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetSalaryTypeSpecification" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/settings" : { + "get" : { + "tags" : [ "timesheet/settings" ], + "summary" : "[BETA] Get timesheet settings of logged in company.", + "operationId" : "TimesheetSettings_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimesheetSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/timeClock/{id}" : { + "get" : { + "tags" : [ "timesheet/timeClock" ], + "summary" : "Find time clock entry by ID.", + "operationId" : "TimesheetTimeClock_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimeClock" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "timesheet/timeClock" ], + "summary" : "Update time clock by ID.", + "operationId" : "TimesheetTimeClock_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TimeClock" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimeClock" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/timeClock" : { + "get" : { + "tags" : [ "timesheet/timeClock" ], + "summary" : "Find time clock entries corresponding with sent data.", + "operationId" : "TimesheetTimeClock_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "activityId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "hourId", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isRunning", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTimeClock" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/timeClock/present" : { + "get" : { + "tags" : [ "timesheet/timeClock" ], + "summary" : "Find a user’s present running time clock.", + "operationId" : "TimesheetTimeClockPresent_getPresent", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimeClock" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/timeClock/:start" : { + "put" : { + "tags" : [ "timesheet/timeClock" ], + "summary" : "Start time clock.", + "operationId" : "TimesheetTimeClockStart_start", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Employee ID. Defaults to ID of token owner.", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Project ID", + "schema" : { + "type" : "integer", + "format" : "int64", + "default" : 0 + } + }, { + "name" : "activityId", + "in" : "query", + "description" : "Activity ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "date", + "in" : "query", + "description" : "Optional. Default is today’s date", + "schema" : { + "type" : "string" + } + }, { + "name" : "lunchBreakDuration", + "in" : "query", + "description" : "Equals", + "schema" : { + "minimum" : 0, + "type" : "number" + } + }, { + "name" : "comment", + "in" : "query", + "description" : "Optional. Will be added to this time clock's time sheet entry. If this value is set, and the time clock is started on an existing time sheet entry, the entry's comment will be overwritten.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTimeClock" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/timeClock/{id}/:stop" : { + "put" : { + "tags" : [ "timesheet/timeClock" ], + "summary" : "Stop time clock.", + "operationId" : "TimesheetTimeClockStop_stop", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "version", + "in" : "query", + "description" : "Number of current version", + "schema" : { + "type" : "integer", + "format" : "int32", + "default" : 0 + } + }, { + "name" : "comment", + "in" : "query", + "description" : "A comment that will be added to this time clock's time sheet entry. Optional unless comments are mandatory and a comment has not already been added to the time clock when starting it or to the time sheet entry. If this value is set, and the time clock is stopped on an existing time sheet entry, the entry's comment will be overwritten.", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/week/:approve" : { + "put" : { + "tags" : [ "timesheet/week" ], + "summary" : "Approve week. By ID or (ISO-8601 week and employeeId combination).", + "operationId" : "TimesheetWeekApprove_approve", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "weekYear", + "in" : "query", + "description" : "ISO-8601 week-year", + "schema" : { + "type" : "string" + }, + "example" : "2018-12" + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperWeek" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/week/:complete" : { + "put" : { + "tags" : [ "timesheet/week" ], + "summary" : "Complete week. By ID or (ISO-8601 week and employeeId combination).", + "operationId" : "TimesheetWeekComplete_complete", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "weekYear", + "in" : "query", + "description" : "ISO-8601 week-year", + "schema" : { + "type" : "string" + }, + "example" : "2018-12" + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperWeek" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/week/:reopen" : { + "put" : { + "tags" : [ "timesheet/week" ], + "summary" : "Reopen week. By ID or (ISO-8601 week and employeeId combination).", + "operationId" : "TimesheetWeekReopen_reopen", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "weekYear", + "in" : "query", + "description" : "ISO-8601 week-year", + "schema" : { + "type" : "string" + }, + "example" : "2018-12" + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperWeek" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/week" : { + "get" : { + "tags" : [ "timesheet/week" ], + "summary" : "Find weekly status By ID, week/year combination, employeeId or an approver", + "operationId" : "TimesheetWeek_search", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "employeeIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "weekYear", + "in" : "query", + "description" : "ISO-8601 week-year", + "schema" : { + "type" : "string" + }, + "example" : "2018-12" + }, { + "name" : "approvedBy", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseWeek" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/timesheet/week/:unapprove" : { + "put" : { + "tags" : [ "timesheet/week" ], + "summary" : "Unapprove week. By ID or (ISO-8601 week and employeeId combination).", + "operationId" : "TimesheetWeekUnapprove_unapprove", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "weekYear", + "in" : "query", + "description" : "ISO-8601 week-year", + "schema" : { + "type" : "string" + }, + "example" : "2018-12" + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperWeek" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/accommodationAllowance/{id}" : { + "get" : { + "tags" : [ "travelExpense/accommodationAllowance" ], + "summary" : "Get travel accommodation allowance by ID.", + "operationId" : "TravelExpenseAccommodationAllowance_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccommodationAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "travelExpense/accommodationAllowance" ], + "summary" : "Update accommodation allowance.", + "operationId" : "TravelExpenseAccommodationAllowance_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AccommodationAllowance" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccommodationAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/accommodationAllowance" ], + "summary" : "Delete accommodation allowance.", + "operationId" : "TravelExpenseAccommodationAllowance_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/accommodationAllowance" : { + "get" : { + "tags" : [ "travelExpense/accommodationAllowance" ], + "summary" : "Find accommodation allowances corresponding with sent data.", + "operationId" : "TravelExpenseAccommodationAllowance_search", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateTypeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateCategoryId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "rateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "countFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "countTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "amountFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "amountTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "location", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "address", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseAccommodationAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense/accommodationAllowance" ], + "summary" : "Create accommodation allowance.", + "operationId" : "TravelExpenseAccommodationAllowance_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/AccommodationAllowance" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperAccommodationAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/cost/{id}" : { + "get" : { + "tags" : [ "travelExpense/cost" ], + "summary" : "Get cost by ID.", + "operationId" : "TravelExpenseCost_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCost" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "travelExpense/cost" ], + "summary" : "Update cost.", + "operationId" : "TravelExpenseCost_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Cost" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCost" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/cost" ], + "summary" : "Delete cost.", + "operationId" : "TravelExpenseCost_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/cost" : { + "get" : { + "tags" : [ "travelExpense/cost" ], + "summary" : "Find costs corresponding with sent data.", + "operationId" : "TravelExpenseCost_search", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "vatTypeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "currencyId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "rateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "countFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "countTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "amountFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "amountTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "location", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "address", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCost" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense/cost" ], + "summary" : "Create cost.", + "operationId" : "TravelExpenseCost_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Cost" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCost" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/cost/list" : { + "put" : { + "tags" : [ "travelExpense/cost" ], + "summary" : "Update costs.", + "operationId" : "TravelExpenseCostList_putList", + "requestBody" : { + "description" : "JSON representing updates to objects. Should have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Cost" + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCost" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costParticipant/createCostParticipantAdvanced" : { + "post" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Create participant on cost using explicit parameters", + "operationId" : "TravelExpenseCostParticipantCreateCostParticipantAdvanced_createCostParticipantAdvanced", + "parameters" : [ { + "name" : "displayName", + "in" : "query", + "description" : "The name of the participant", + "schema" : { + "type" : "string" + } + }, { + "name" : "costId", + "in" : "query", + "description" : "ID of cost", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "employeeId", + "in" : "query", + "description" : "ID of the employee if it is participant. 0 is allowed if the participant is not an employee", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCostParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costParticipant/{id}" : { + "get" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Get cost participant by ID.", + "operationId" : "TravelExpenseCostParticipant_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCostParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Delete cost participant.", + "operationId" : "TravelExpenseCostParticipant_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costParticipant/list" : { + "post" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Create participants on cost.", + "operationId" : "TravelExpenseCostParticipantList_postList", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CostParticipant" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCostParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Delete cost participants.", + "operationId" : "TravelExpenseCostParticipantList_deleteList", + "requestBody" : { + "description" : "JSON representing objects to delete. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CostParticipant" + } + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costParticipant/{costId}/costParticipants" : { + "get" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Get cost's participants by costId.", + "operationId" : "TravelExpenseCostParticipantCostParticipants_getCostParticipants", + "parameters" : [ { + "name" : "costId", + "in" : "path", + "description" : "ID of cost", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseCostParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costParticipant" : { + "post" : { + "tags" : [ "travelExpense/costParticipant" ], + "summary" : "Create participant on cost.", + "operationId" : "TravelExpenseCostParticipant_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/CostParticipant" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperCostParticipant" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/drivingStop/{id}" : { + "get" : { + "tags" : [ "travelExpense/drivingStop" ], + "summary" : "Get driving stop by ID.", + "operationId" : "TravelExpenseDrivingStop_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDrivingStop" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/drivingStop" ], + "summary" : "Delete mileage allowance stops.", + "operationId" : "TravelExpenseDrivingStop_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/drivingStop" : { + "post" : { + "tags" : [ "travelExpense/drivingStop" ], + "summary" : "Create mileage allowance driving stop.", + "operationId" : "TravelExpenseDrivingStop_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/DrivingStop" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperDrivingStop" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/mileageAllowance/{id}" : { + "get" : { + "tags" : [ "travelExpense/mileageAllowance" ], + "summary" : "Get mileage allowance by ID.", + "operationId" : "TravelExpenseMileageAllowance_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMileageAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "travelExpense/mileageAllowance" ], + "summary" : "Update mileage allowance.", + "operationId" : "TravelExpenseMileageAllowance_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMileageAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/mileageAllowance" ], + "summary" : "Delete mileage allowance.", + "operationId" : "TravelExpenseMileageAllowance_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/mileageAllowance" : { + "get" : { + "tags" : [ "travelExpense/mileageAllowance" ], + "summary" : "Find mileage allowances corresponding with sent data.", + "operationId" : "TravelExpenseMileageAllowance_search", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateTypeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateCategoryId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "kmFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "kmTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "rateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "rateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "amountFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "amountTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "departureLocation", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "destination", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "isCompanyCar", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseMileageAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense/mileageAllowance" ], + "summary" : "Create mileage allowance.", + "operationId" : "TravelExpenseMileageAllowance_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperMileageAllowance" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/passenger/{id}" : { + "get" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Get passenger by ID.", + "operationId" : "TravelExpensePassenger_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPassenger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Update passenger.", + "operationId" : "TravelExpensePassenger_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Passenger" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPassenger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Delete passenger.", + "operationId" : "TravelExpensePassenger_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/passenger/list" : { + "post" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Create passengers.", + "operationId" : "TravelExpensePassengerList_postList", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Passenger" + } + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePassenger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Delete passengers.", + "operationId" : "TravelExpensePassengerList_deleteList", + "requestBody" : { + "description" : "JSON representing objects to delete. Should have ID and version set.", + "content" : { + "application/json" : { + "schema" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Passenger" + } + } + } + }, + "required" : true + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/passenger" : { + "get" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Find passengers corresponding with sent data.", + "operationId" : "TravelExpensePassenger_search", + "parameters" : [ { + "name" : "mileageAllowance", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePassenger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense/passenger" ], + "summary" : "Create passenger.", + "operationId" : "TravelExpensePassenger_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/Passenger" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPassenger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/perDiemCompensation/{id}" : { + "get" : { + "tags" : [ "travelExpense/perDiemCompensation" ], + "summary" : "Get per diem compensation by ID.", + "operationId" : "TravelExpensePerDiemCompensation_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPerDiemCompensation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "travelExpense/perDiemCompensation" ], + "summary" : "Update per diem compensation.", + "operationId" : "TravelExpensePerDiemCompensation_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PerDiemCompensation" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPerDiemCompensation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense/perDiemCompensation" ], + "summary" : "Delete per diem compensation.", + "operationId" : "TravelExpensePerDiemCompensation_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/perDiemCompensation" : { + "get" : { + "tags" : [ "travelExpense/perDiemCompensation" ], + "summary" : "Find per diem compensations corresponding with sent data.", + "operationId" : "TravelExpensePerDiemCompensation_search", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateTypeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "rateCategoryId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "overnightAccommodation", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "NONE", "HOTEL", "BOARDING_HOUSE_WITHOUT_COOKING", "BOARDING_HOUSE_WITH_COOKING" ] + } + }, { + "name" : "countFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "countTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "rateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "rateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "amountFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "number" + } + }, { + "name" : "amountTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "number" + } + }, { + "name" : "location", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "address", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isDeductionForBreakfast", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isLunchDeduction", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isDinnerDeduction", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponsePerDiemCompensation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense/perDiemCompensation" ], + "summary" : "Create per diem compensation.", + "operationId" : "TravelExpensePerDiemCompensation_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/PerDiemCompensation" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperPerDiemCompensation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/:approve" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Approve travel expenses.", + "operationId" : "TravelExpenseApprove_approve", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + }, { + "name" : "overrideApprovalFlow", + "in" : "query", + "description" : "Override approval flow", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/{id}/convert" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Convert travel to/from employee expense.", + "operationId" : "TravelExpenseConvert_convert", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/:copy" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Copy travel expense.", + "operationId" : "TravelExpenseCopy_copy", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/:createVouchers" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Create vouchers", + "operationId" : "TravelExpenseCreateVouchers_createVouchers", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "required" : true, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/{id}" : { + "get" : { + "tags" : [ "travelExpense" ], + "summary" : "Get travel expense by ID.", + "operationId" : "TravelExpense_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Update travel expense.", + "operationId" : "TravelExpense_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TravelExpense" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense" ], + "summary" : "Delete travel expense.", + "operationId" : "TravelExpense_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/{travelExpenseId}/attachment" : { + "get" : { + "tags" : [ "travelExpense" ], + "summary" : "Get attachment by travel expense ID.", + "operationId" : "TravelExpenseAttachment_downloadAttachment", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "path", + "description" : "Travel Expense ID from which PDF is downloaded.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "200" : { + "description" : "Returns the PDF attachment of the travel expense.", + "content" : { + "application/pdf" : { + "schema" : { + "type" : "string", + "format" : "binary" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense" ], + "summary" : "Upload attachment to travel expense.", + "operationId" : "TravelExpenseAttachment_uploadAttachment", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "path", + "description" : "Travel Expense ID to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "createNewCost", + "in" : "query", + "description" : "Create new cost row when you add the attachment", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "requestBody" : { + "content" : { + "multipart/form-data" : { + "schema" : { + "required" : [ "file" ], + "type" : "object", + "properties" : { + "file" : { + "type" : "string", + "description" : "The file", + "format" : "binary" + } + } + } + } + } + }, + "responses" : { + "200" : { + "description" : "Returns the updated travel expense with the new attachment.", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "travelExpense" ], + "summary" : "Delete attachment.", + "operationId" : "TravelExpenseAttachment_deleteAttachment", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "path", + "description" : "ID of attachment containing the attachment to delete.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "version", + "in" : "query", + "description" : "Version of voucher containing the attachment to delete.", + "schema" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + }, { + "name" : "sendToInbox", + "in" : "query", + "description" : "Should the attachment be sent to inbox rather than deleted?", + "schema" : { + "type" : "boolean", + "default" : false + } + }, { + "name" : "split", + "in" : "query", + "description" : "If sendToInbox is true, should the attachment be split into one voucher per page?", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/:deliver" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Deliver travel expenses.", + "operationId" : "TravelExpenseDeliver_deliver", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense" : { + "get" : { + "tags" : [ "travelExpense" ], + "summary" : "Find travel expenses corresponding with sent data.", + "operationId" : "TravelExpense_search", + "parameters" : [ { + "name" : "employeeId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "departmentId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "projectManagerId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "departureDateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "returnDateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "state", + "in" : "query", + "description" : "category", + "schema" : { + "type" : "string", + "enum" : [ "ALL", "REJECTED", "OPEN", "APPROVED", "SALARY_PAID", "DELIVERED" ], + "default" : "ALL" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "travelExpense" ], + "summary" : "Create travel expense.", + "operationId" : "TravelExpense_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/TravelExpense" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/:unapprove" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Unapprove travel expenses.", + "operationId" : "TravelExpenseUnapprove_unapprove", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/:undeliver" : { + "put" : { + "tags" : [ "travelExpense" ], + "summary" : "Undeliver travel expenses.", + "operationId" : "TravelExpenseUndeliver_undeliver", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/TravelExpense" + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpense" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/{travelExpenseId}/attachment/list" : { + "post" : { + "tags" : [ "travelExpense" ], + "summary" : "Upload multiple attachments to travel expense.", + "operationId" : "TravelExpenseAttachmentList_uploadAttachments", + "parameters" : [ { + "name" : "travelExpenseId", + "in" : "path", + "description" : "Travel Expense ID to upload attachment to.", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "createNewCost", + "in" : "query", + "description" : "Create new cost row when you add the attachment", + "schema" : { + "type" : "boolean", + "default" : false + } + } ], + "requestBody" : { + "description" : "Upload multiple files", + "content" : { + "multipart/form-data" : { + "schema" : { + "type" : "object", + "properties" : { + "file" : { + "type" : "array", + "items" : { + "type" : "string", + "format" : "binary" + } + } + } + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "Returns the updated travel expense with the new attachments.", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/rate/{id}" : { + "get" : { + "tags" : [ "travelExpense/rate" ], + "summary" : "Get travel expense rate by ID.", + "operationId" : "TravelExpenseRate_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpenseRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/rate" : { + "get" : { + "tags" : [ "travelExpense/rate" ], + "summary" : "Find rates corresponding with sent data.", + "operationId" : "TravelExpenseRate_search", + "parameters" : [ { + "name" : "rateCategoryId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "type", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "PER_DIEM", "ACCOMMODATION_ALLOWANCE", "MILEAGE_ALLOWANCE" ] + } + }, { + "name" : "isValidDayTrip", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isValidAccommodation", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isValidDomestic", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isValidForeignTravel", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "requiresZone", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "requiresOvernightAccommodation", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpenseRate" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/rateCategory/{id}" : { + "get" : { + "tags" : [ "travelExpense/rateCategory" ], + "summary" : "Get travel expense rate category by ID.", + "operationId" : "TravelExpenseRateCategory_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpenseRateCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/rateCategory" : { + "get" : { + "tags" : [ "travelExpense/rateCategory" ], + "summary" : "Find rate categories corresponding with sent data.", + "operationId" : "TravelExpenseRateCategory_search", + "parameters" : [ { + "name" : "type", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "PER_DIEM", "ACCOMMODATION_ALLOWANCE", "MILEAGE_ALLOWANCE" ] + } + }, { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "travelReportRateCategoryGroupId", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "ameldingWageCode", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "wageCodeNumber", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "isValidDayTrip", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isValidAccommodation", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isValidDomestic", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "requiresZone", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "isRequiresOvernightAccommodation", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpenseRateCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/rateCategoryGroup/{id}" : { + "get" : { + "tags" : [ "travelExpense/rateCategoryGroup" ], + "summary" : "Get travel report rate category group by ID.", + "operationId" : "TravelExpenseRateCategoryGroup_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpenseRateCategoryGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/rateCategoryGroup" : { + "get" : { + "tags" : [ "travelExpense/rateCategoryGroup" ], + "summary" : "Find rate categoriy groups corresponding with sent data.", + "operationId" : "TravelExpenseRateCategoryGroup_search", + "parameters" : [ { + "name" : "name", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isForeignTravel", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "dateFrom", + "in" : "query", + "description" : "From and including", + "schema" : { + "type" : "string" + } + }, { + "name" : "dateTo", + "in" : "query", + "description" : "To and excluding", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpenseRateCategoryGroup" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costCategory/{id}" : { + "get" : { + "tags" : [ "travelExpense/costCategory" ], + "summary" : "Get cost category by ID.", + "operationId" : "TravelExpenseCostCategory_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelCostCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/costCategory" : { + "get" : { + "tags" : [ "travelExpense/costCategory" ], + "summary" : "Find cost category corresponding with sent data.", + "operationId" : "TravelExpenseCostCategory_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "showOnEmployeeExpenses", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelCostCategory" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/paymentType/{id}" : { + "get" : { + "tags" : [ "travelExpense/paymentType" ], + "summary" : "Get payment type by ID.", + "operationId" : "TravelExpensePaymentType_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelPaymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/paymentType" : { + "get" : { + "tags" : [ "travelExpense/paymentType" ], + "summary" : "Find payment type corresponding with sent data.", + "operationId" : "TravelExpensePaymentType_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "description", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "isInactive", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "showOnEmployeeExpenses", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelPaymentType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/settings" : { + "get" : { + "tags" : [ "travelExpense/settings" ], + "summary" : "Get travel expense settings of logged in company.", + "operationId" : "TravelExpenseSettings_get", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpenseSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/zone/{id}" : { + "get" : { + "tags" : [ "travelExpense/zone" ], + "summary" : "Get travel expense zone by ID.", + "operationId" : "TravelExpenseZone_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperTravelExpenseZone" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/travelExpense/zone" : { + "get" : { + "tags" : [ "travelExpense/zone" ], + "summary" : "Find travel expense zones corresponding with sent data.", + "operationId" : "TravelExpenseZone_search", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "code", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "isDisabled", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "boolean" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "date", + "in" : "query", + "description" : "yyyy-MM-dd. Defaults to today.", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseTravelExpenseZone" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/userLicense/export" : { + "post" : { + "tags" : [ "userLicense" ], + "summary" : "Export the user licenses table to a specific format", + "operationId" : "UserLicenseExport_export", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/UserLicenseExport" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/octet-stream" : { + "schema" : { + "type" : "string" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/vatReturns/comment/>all" : { + "get" : { + "tags" : [ "vatReturns/comment" ], + "summary" : "[BETA] - Get all structured comments available", + "operationId" : "VatReturnsCommentAll_all", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVatReturnsComment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/vatReturns/comment" : { + "get" : { + "tags" : [ "vatReturns/comment" ], + "summary" : "[BETA] - Get all structured comments related to a given vatCode", + "operationId" : "VatReturnsComment_query", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVatReturnsVatCodeComment" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/vatTermSizeSettings/{id}" : { + "get" : { + "tags" : [ "vatTermSizeSettings" ], + "summary" : "Get VatTermSizeSettings by ID. VatTermSizeSettings is used to define VAT term lengths.", + "operationId" : "VatTermSizeSettings_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatTermSizeSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "put" : { + "tags" : [ "vatTermSizeSettings" ], + "summary" : "Update VatTermSizeSettings.", + "operationId" : "VatTermSizeSettings_put", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/VatTermSizeSettings" + } + } + }, + "required" : true + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatTermSizeSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "vatTermSizeSettings" ], + "summary" : "Delete VatTermSizeSettings", + "operationId" : "VatTermSizeSettings_delete", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + } ], + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/vatTermSizeSettings" : { + "get" : { + "tags" : [ "vatTermSizeSettings" ], + "summary" : "Search for VatTermSizeSettings", + "operationId" : "VatTermSizeSettings_query", + "parameters" : [ { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVatTermSizeSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "vatTermSizeSettings" ], + "summary" : "Create VatTermSizeSettings", + "operationId" : "VatTermSizeSettings_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/VatTermSizeSettings" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVatTermSizeSettings" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/voucherInbox/emailAddress" : { + "get" : { + "tags" : [ "voucherInbox" ], + "summary" : "Get the email address for sending invoices and vouchers to the voucher inbox.", + "operationId" : "VoucherInboxEmailAddress_getEmailAddress", + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperString" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/voucherInbox/inboxCount" : { + "get" : { + "tags" : [ "voucherInbox" ], + "summary" : "Get count of items in the Voucher Inbox", + "operationId" : "VoucherInboxInboxCount_getInboxCount", + "parameters" : [ { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperInteger" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/voucherMessage" : { + "get" : { + "tags" : [ "voucherMessage" ], + "summary" : "[BETA] Find voucherMessage (or a comment) put on a voucher by inputting voucher ids", + "operationId" : "VoucherMessage_search", + "parameters" : [ { + "name" : "voucherIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucherMessage" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "voucherMessage" ], + "summary" : "[BETA] Post new voucherMessage.", + "operationId" : "VoucherMessage_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/VoucherMessage" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucherMessage" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/voucherStatus/{id}" : { + "get" : { + "tags" : [ "voucherStatus" ], + "summary" : "Get voucherStatus by ID.", + "operationId" : "VoucherStatus_get", + "parameters" : [ { + "name" : "id", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucherStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/voucherStatus" : { + "get" : { + "tags" : [ "voucherStatus" ], + "summary" : "Find voucherStatus corresponding with sent data. The voucherStatus is used to coordinate integration processes. Requires setup done by Tripletex, currently supports debt collection.", + "operationId" : "VoucherStatus_search", + "parameters" : [ { + "name" : "ids", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "voucherIds", + "in" : "query", + "description" : "List of IDs", + "schema" : { + "type" : "string" + } + }, { + "name" : "status", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "WAITING", "DONE", "SKIPPED", "ERROR", "NONE", "PROCESSING", "RECLAIMED" ] + } + }, { + "name" : "type", + "in" : "query", + "description" : "Equals", + "schema" : { + "type" : "string", + "enum" : [ "TRIPLETEX", "SUPPLIERINVOICE_EXTERNAL", "DEBT_COLLECTION" ] + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseVoucherStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "voucherStatus" ], + "summary" : "Post new voucherStatus.", + "operationId" : "VoucherStatus_post", + "requestBody" : { + "description" : "JSON representing the new object to be created. Should not have ID and version set.", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/VoucherStatus" + } + } + }, + "required" : true + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperVoucherStatus" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/enumType/businessActivityTypes" : { + "get" : { + "tags" : [ "yearEnd/enumType" ], + "summary" : "Get business activity types", + "operationId" : "YearEndEnumTypeBusinessActivityTypes_getBusinessActivityTypes", + "parameters" : [ { + "name" : "id", + "in" : "query", + "description" : "ID of the elements", + "schema" : { + "type" : "string" + } + }, { + "name" : "query", + "in" : "query", + "description" : "Containing", + "schema" : { + "type" : "string" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseBusinessActivityType" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/enterpriseDebtDistributions" : { + "put" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Update enterprise debt distribution", + "operationId" : "YearEndEnterpriseDebtDistributions_putEnterpriseDebtDistributions", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EnterpriseDebtDistribution" + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEnterpriseDebtDistribution" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Create enterprise debt distribution", + "operationId" : "YearEndEnterpriseDebtDistributions_postEnterpriseDebtDistributions", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EnterpriseDebtDistribution" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEnterpriseDebtDistribution" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Delete enterprise debt distribution", + "operationId" : "YearEndEnterpriseDebtDistributions_deleteEnterpriseDebtDistributions", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EnterpriseDebtDistribution" + } + } + } + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/{yearEndReportId}/enterpriseDebtDistributions" : { + "get" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Get enterprise debt distributions for year-end report", + "operationId" : "YearEndEnterpriseDebtDistributions_get", + "parameters" : [ { + "name" : "yearEndReportId", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*, allocations(*)" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEnterpriseDebtDistribution" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/enterpriseOtherInterestAllocations" : { + "put" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Update other-interest allocation", + "operationId" : "YearEndEnterpriseOtherInterestAllocations_putEnterpriseOtherInterestAllocations", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EnterpriseOtherInterestAllocation" + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEnterpriseOtherInterestAllocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Create other-interest allocation", + "operationId" : "YearEndEnterpriseOtherInterestAllocations_postEnterpriseOtherInterestAllocations", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EnterpriseOtherInterestAllocation" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperEnterpriseOtherInterestAllocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Delete other-interest allocation", + "operationId" : "YearEndEnterpriseOtherInterestAllocations_deleteEnterpriseOtherInterestAllocations", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/EnterpriseOtherInterestAllocation" + } + } + } + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/{yearEndReportId}/enterpriseOtherInterestAllocations" : { + "get" : { + "tags" : [ "internal", "enterpriseDebtDistribution", "yearEnd" ], + "summary" : "Get other-interest allocations for year-end report", + "operationId" : "YearEndEnterpriseOtherInterestAllocations_get", + "parameters" : [ { + "name" : "yearEndReportId", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseEnterpriseOtherInterestAllocation" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/researchAndDevelopment2024" : { + "put" : { + "tags" : [ "internal", "researchAndDevelopment2024", "yearEnd" ], + "summary" : "Update ResearchAndDevelopment 2024", + "operationId" : "YearEndResearchAndDevelopment2024_putResearchAndDevelopment2024", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment2024" + } + } + } + }, + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperResearchAndDevelopment2024" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "post" : { + "tags" : [ "internal", "researchAndDevelopment2024", "yearEnd" ], + "summary" : "Create ResearchAndDevelopment 2024", + "operationId" : "YearEndResearchAndDevelopment2024_postResearchAndDevelopment2024", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment2024" + } + } + } + }, + "responses" : { + "201" : { + "description" : "successfully created", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ResponseWrapperResearchAndDevelopment2024" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + }, + "delete" : { + "tags" : [ "internal", "researchAndDevelopment2024", "yearEnd" ], + "summary" : "Delete ResearchAndDevelopment 2024", + "operationId" : "YearEndResearchAndDevelopment2024_deleteResearchAndDevelopment2024", + "requestBody" : { + "description" : "Partial object describing what should be updated", + "content" : { + "application/json; charset=utf-8" : { + "schema" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment2024" + } + } + } + }, + "responses" : { + "204" : { + "description" : "successful operation", + "content" : { + "application/json" : { } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + }, + "/yearEnd/{yearEndReportId}/researchAndDevelopment2024" : { + "get" : { + "tags" : [ "internal", "researchAndDevelopment2024", "yearEnd" ], + "summary" : "Get ResearchAndDevelopment by corresponding data 2024", + "operationId" : "YearEndResearchAndDevelopment2024_get", + "parameters" : [ { + "name" : "yearEndReportId", + "in" : "path", + "description" : "Element ID", + "required" : true, + "schema" : { + "type" : "integer", + "format" : "int64" + } + }, { + "name" : "fields", + "in" : "query", + "description" : "Fields filter pattern", + "schema" : { + "type" : "string", + "default" : "*, collaborativeBusinesses(*), workPackages(*), otherPublicSupportList(*)" + } + }, { + "name" : "from", + "in" : "query", + "description" : "From index", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "0" + } + }, { + "name" : "count", + "in" : "query", + "description" : "Number of elements to return", + "required" : false, + "schema" : { + "type" : "integer", + "default" : "1000" + } + }, { + "name" : "sorting", + "in" : "query", + "description" : "Sorting pattern", + "required" : false, + "schema" : { + "type" : "string", + "default" : "" + } + } ], + "responses" : { + "200" : { + "description" : "successful operation", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/ListResponseResearchAndDevelopment2024" + } + } + } + } + }, + "security" : [ { + "tokenAuthScheme" : [ ] + } ] + } + } + }, + "components" : { + "schemas" : { + "Address" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "addressLine1" : { + "type" : "string" + }, + "addressLine2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "city" : { + "type" : "string" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "addressAsString" : { + "type" : "string", + "readOnly" : true + }, + "displayNameInklMatrikkel" : { + "type" : "string", + "readOnly" : true + }, + "knr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "gnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "bnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "fnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "snr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "unitNumber" : { + "type" : "string" + } + }, + "description" : "Address tied to the employee" + }, + "Change" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "timestamp" : { + "type" : "string", + "readOnly" : true + }, + "changeType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "CREATE", "UPDATE", "DELETE", "LOCKED", "REOPENED", "DO_NOT_SHOW" ] + } + }, + "readOnly" : true + }, + "Company" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "faxNumber" : { + "type" : "string" + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "type" : { + "type" : "string", + "enum" : [ "NONE", "ENK", "AS", "NUF", "ANS", "DA", "PRE", "KS", "ASA", "BBL", "BRL", "GFS", "SPA", "SF", "IKS", "KF_FKF", "FCD", "EOFG", "BA", "STI", "ORG", "ESEK", "SA", "SAM", "BO", "VPFO", "OS", "FLI", "Other" ] + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "accountantOrSimilar" : { + "type" : "boolean", + "readOnly" : true + }, + "companyMigration" : { + "type" : "string", + "description" : "If the company was migrated from another system, this field will contain the name of the system it was migrated from.", + "readOnly" : true, + "enum" : [ "NONE", "AGRO" ] + }, + "invoiceShowDeliveryDate" : { + "type" : "boolean", + "readOnly" : true + } + }, + "description" : "Vendor of the product", + "readOnly" : true + }, + "Country" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "isoAlpha2Code" : { + "type" : "string", + "description" : "The ISO 3166-1 Alpha2 code of the country (2 letters). https://en.wikipedia.org/wiki/ISO_3166-1", + "readOnly" : true + }, + "isoAlpha3Code" : { + "type" : "string", + "description" : "The ISO 3166-1 Alpha3 code of the country (3 letters). https://en.wikipedia.org/wiki/ISO_3166-1", + "readOnly" : true + }, + "isoNumericCode" : { + "type" : "string", + "description" : "The ISO 3166-1 numeric code of the country (3 digits). https://en.wikipedia.org/wiki/ISO_3166-1", + "readOnly" : true + } + } + }, + "Currency" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "code" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "factor" : { + "maximum" : 100, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "displayName" : { + "type" : "string" + }, + "isDisabled" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "Department" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "departmentNumber" : { + "type" : "string" + }, + "departmentManager" : { + "$ref" : "#/components/schemas/Employee" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "isInactive" : { + "type" : "boolean" + }, + "businessActivityTypeId" : { + "type" : "integer", + "description" : "The business activity type for this department. Business activity types can be used to separate between different tax categories, and between general and primary VAT reports. A posting done with a given departmentId, will belong to the business activity type defined on the department.", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "The department for this account. If multiple industries are activated, all postings on this account will be towards this department. If multiple industries are not activated, it is ignored." + }, + "Division" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "municipalityDate" : { + "type" : "string" + }, + "municipality" : { + "$ref" : "#/components/schemas/Municipality" + } + } + }, + "Employee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "employeeNumber" : { + "type" : "string" + }, + "dateOfBirth" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumberMobileCountry" : { + "$ref" : "#/components/schemas/Country" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "phoneNumberHome" : { + "type" : "string" + }, + "phoneNumberWork" : { + "type" : "string" + }, + "nationalIdentityNumber" : { + "type" : "string" + }, + "dnumber" : { + "type" : "string" + }, + "internationalId" : { + "$ref" : "#/components/schemas/InternationalId" + }, + "bankAccountNumber" : { + "type" : "string" + }, + "iban" : { + "type" : "string", + "description" : "IBAN field" + }, + "bic" : { + "type" : "string", + "description" : "Bic (swift) field" + }, + "creditorBankCountryId" : { + "type" : "integer", + "description" : "Country of creditor bank field", + "format" : "int32" + }, + "usesAbroadPayment" : { + "type" : "boolean", + "description" : "UsesAbroadPayment field. Determines if we should use domestic or abroad remittance. To be able to use abroad remittance, one has to: 1: have Autopay 2: have valid combination of the fields Iban, Bic (swift) and Country of creditor bank. " + }, + "userType" : { + "type" : "string", + "description" : "Define the employee's user type.
STANDARD: Reduced access. Users with limited system entitlements.
EXTENDED: Users can be given all system entitlements.
NO_ACCESS: User with no log on access.
Users with access to Tripletex must confirm the email address.", + "enum" : [ "STANDARD", "EXTENDED", "NO_ACCESS" ] + }, + "allowInformationRegistration" : { + "type" : "boolean", + "description" : "Determines if salary information can be registered on the user including hours, travel expenses and employee expenses. The user may also be selected as a project member on projects.", + "readOnly" : true + }, + "isContact" : { + "type" : "boolean", + "description" : "Determines if the employee is a contact (external) in the company." + }, + "isProxy" : { + "type" : "boolean", + "description" : "True if this Employee object represents an accounting or auditor office", + "readOnly" : true + }, + "comments" : { + "type" : "string" + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "employments" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Employment" + } + }, + "holidayAllowanceEarned" : { + "$ref" : "#/components/schemas/HolidayAllowanceEarned" + }, + "employeeCategory" : { + "$ref" : "#/components/schemas/EmployeeCategory" + }, + "isAuthProjectOverviewURL" : { + "type" : "boolean", + "readOnly" : true + }, + "pictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "vismaConnect2FAactive" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "EmployeeCategory" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "description" : { + "type" : "string" + } + } + }, + "Employment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "employmentId" : { + "type" : "string", + "description" : "Existing employment ID used by the current accounting system" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "employmentEndReason" : { + "type" : "string", + "description" : "Define the employment end reason.", + "enum" : [ "EMPLOYMENT_END_EXPIRED", "EMPLOYMENT_END_EMPLOYEE", "EMPLOYMENT_END_EMPLOYER", "EMPLOYMENT_END_WRONGLY_REPORTED", "EMPLOYMENT_END_SYSTEM_OR_ACCOUNTANT_CHANGE", "EMPLOYMENT_END_INTERNAL_CHANGE" ] + }, + "division" : { + "$ref" : "#/components/schemas/Division" + }, + "lastSalaryChangeDate" : { + "type" : "string" + }, + "noEmploymentRelationship" : { + "type" : "boolean", + "description" : "Activate pensions and other benefits with no employment relationship." + }, + "isMainEmployer" : { + "type" : "boolean", + "description" : "Determines if company is main employer for the employee. Default value is true.
Some values will be default set if not sent upon creation of employment:
If isMainEmployer is NOT sent and tax deduction code loennFraHovedarbeidsgiver is sent, isMainEmployer will be set to true.
If isMainEmployer is NOT sent and tax deduction code loennFraBiarbeidsgiver is sent, isMainEmployer will be set to false.
If true and deduction code is NOT sent, value of tax deduction code will be set to loennFraHovedarbeidsgiver.
If false and deduction code is NOT sent, value of tax deduction code will be set to loennFraBiarbeidsgiver.
For other types of Tax Deduction Codes, isMainEmployer does not influence anything." + }, + "taxDeductionCode" : { + "type" : "string", + "description" : "EMPTY - represents that a tax deduction code is not set on the employment. It is illegal to set the field to this value.
Default value of this field is loennFraHovedarbeidsgiver or loennFraBiarbeidsgiver depending on boolean isMainEmployer", + "enum" : [ "loennFraHovedarbeidsgiver", "loennFraBiarbeidsgiver", "pensjon", "loennTilUtenrikstjenestemann", "loennKunTrygdeavgiftTilUtenlandskBorger", "loennKunTrygdeavgiftTilUtenlandskBorgerSomGrensegjenger", "introduksjonsstoenad", "ufoereytelserFraAndre", "" ] + }, + "employmentDetails" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EmploymentDetails" + } + }, + "isRemoveAccessAtEmploymentEnded" : { + "type" : "boolean", + "description" : "If true, access to the employee will be removed when the employment ends.
This field is part of the Employee object, therefore changing it for one Employment affects all Employments." + }, + "latestSalary" : { + "$ref" : "#/components/schemas/EmploymentDetails" + } + }, + "description" : "Employments tied to the employee" + }, + "EmploymentDetails" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employment" : { + "$ref" : "#/components/schemas/Employment" + }, + "date" : { + "type" : "string" + }, + "employmentType" : { + "type" : "string", + "description" : "Define the employment type.", + "enum" : [ "ORDINARY", "MARITIME", "FREELANCE", "NOT_CHOSEN" ] + }, + "employmentForm" : { + "type" : "string", + "description" : "Define the employment form.", + "enum" : [ "PERMANENT", "TEMPORARY", "PERMANENT_AND_HIRED_OUT", "TEMPORARY_AND_HIRED_OUT", "TEMPORARY_ON_CALL", "NOT_CHOSEN" ] + }, + "maritimeEmployment" : { + "$ref" : "#/components/schemas/MaritimeEmployment" + }, + "remunerationType" : { + "type" : "string", + "description" : "Define the remuneration type.", + "enum" : [ "MONTHLY_WAGE", "HOURLY_WAGE", "COMMISION_PERCENTAGE", "FEE", "NOT_CHOSEN", "PIECEWORK_WAGE" ] + }, + "workingHoursScheme" : { + "type" : "string", + "description" : "Define the working hours scheme type. If you enter a value for SHIFT WORK, you must also enter value for shiftDurationHours", + "enum" : [ "NOT_SHIFT", "ROUND_THE_CLOCK", "SHIFT_365", "OFFSHORE_336", "CONTINUOUS", "OTHER_SHIFT", "NOT_CHOSEN" ] + }, + "shiftDurationHours" : { + "type" : "number" + }, + "occupationCode" : { + "$ref" : "#/components/schemas/OccupationCode" + }, + "percentageOfFullTimeEquivalent" : { + "type" : "number" + }, + "annualSalary" : { + "type" : "number" + }, + "hourlyWage" : { + "type" : "number" + }, + "payrollTaxMunicipalityId" : { + "$ref" : "#/components/schemas/Municipality" + }, + "monthlySalary" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Employment types tied to the employment" + }, + "HolidayAllowanceEarned" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "format" : "int32" + }, + "amount" : { + "type" : "number" + }, + "basis" : { + "type" : "number" + }, + "amountExtraHolidayWeek" : { + "type" : "number" + } + } + }, + "InternationalId" : { + "type" : "object", + "properties" : { + "intAmeldingType" : { + "type" : "string", + "description" : "Define the employee's International Identificator.
PASSPORT_NO
NATIONAL_INSURANCE_NO
TAX_IDENTIFICATION_NO
VALUE_ADDED_TAX_IDENTIFICATION_NO", + "enum" : [ "PASSPORT_NO", "NATIONAL_INSURANCE_NO", "TAX_IDENTIFICATION_NO", "VALUE_ADDED_TAX_IDENTIFICATION_NO" ] + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "number" : { + "type" : "string" + } + } + }, + "ListResponseRoleAssignment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RoleAssignment" + } + } + } + }, + "MaritimeEmployment" : { + "type" : "object", + "properties" : { + "fartoeyId" : { + "type" : "string", + "description" : "Define the vessel ID" + }, + "paamoenstringsdato" : { + "type" : "string", + "description" : "Define the date for boarding the vessel" + }, + "avmoenstringsdato" : { + "type" : "string", + "description" : "Define the date for disemarking the vessel" + }, + "antallTimerPerYrkeskodePerMoenstring" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of hours per profession code per boarding", + "format" : "int32" + }, + "shipRegister" : { + "type" : "string", + "description" : "Define the ship register. NIS: Norwegian International Ship Register, NOR: Norwegian Ordinary Ship Register, FOREIGN: Foreign Ship Register. ", + "enum" : [ "NIS", "NOR", "FOREIGN" ] + }, + "shipType" : { + "type" : "string", + "description" : "Define the ship type.", + "enum" : [ "OTHER", "DRILLING_PLATFORM", "TOURIST" ] + }, + "tradeArea" : { + "type" : "string", + "description" : "Define the trade area.", + "enum" : [ "DOMESTIC", "FOREIGN" ] + } + } + }, + "Municipality" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "county" : { + "type" : "string", + "readOnly" : true + }, + "payrollTaxZone" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + } + }, + "OccupationCode" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "nameNO" : { + "type" : "string" + }, + "code" : { + "type" : "string" + } + }, + "description" : "To find the right value to enter in this field, you could go to GET /employee/employment/occupationCode to get a list of valid ID's." + }, + "RoleAssignment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Role identifier", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "Role display name", + "readOnly" : true + }, + "subject" : { + "$ref" : "#/components/schemas/Employee" + }, + "context" : { + "$ref" : "#/components/schemas/Company" + } + }, + "readOnly" : true + }, + "ResponseWrapperRoleMetadataAggregate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RoleMetadataAggregate" + } + } + }, + "RoleCategoryMetadata" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "parentCategoryId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "nameTextKey" : { + "type" : "string", + "readOnly" : true + }, + "descriptionTextKey" : { + "type" : "string", + "readOnly" : true + }, + "tableTitleTextKey" : { + "type" : "string", + "readOnly" : true + }, + "tableInfoTextKey" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "RoleMetadata" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "nameTextKey" : { + "type" : "string", + "readOnly" : true + }, + "groupNameTextKey" : { + "type" : "string", + "readOnly" : true + }, + "boundary" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "Company", "Department", "Employee", "Customer" ] + }, + "exclusivity" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "None", "Tripletex", "Reseller" ] + }, + "changeRequirement" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EmployeeAdministrator", "BankIdVerification", "SystemAdministrator" ] + }, + "infoTextKey" : { + "type" : "string", + "readOnly" : true + }, + "categoryId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "dependencies" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "readOnly" : true + }, + "RoleMetadataAggregate" : { + "type" : "object", + "properties" : { + "roles" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/RoleMetadata" + }, + "readOnly" : true + }, + "categories" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/RoleCategoryMetadata" + }, + "readOnly" : true + } + } + }, + "ListResponseRoleTemplate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RoleTemplate" + } + } + } + }, + "RoleTemplate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "parentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "roles" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RoleMetadata" + } + } + }, + "readOnly" : true + }, + "AccountantDashboardAdminNewsArticle" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the article", + "format" : "int64" + }, + "translations" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleTranslation" + } + }, + "tags" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleTag" + } + }, + "links" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleLink" + } + }, + "published" : { + "type" : "boolean", + "description" : "Whether the article is published" + }, + "publishedDate" : { + "type" : "string", + "description" : "The date the article was published", + "readOnly" : true + } + }, + "description" : "News article with all tags, links and translations" + }, + "AccountantDashboardAdminNewsArticleLink" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the link", + "format" : "int64" + }, + "url" : { + "type" : "string", + "description" : "The URL of the link" + }, + "translations" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleLinkTranslation" + } + } + }, + "description" : "Link on a news article" + }, + "AccountantDashboardAdminNewsArticleLinkTranslation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the translation", + "format" : "int64" + }, + "language" : { + "type" : "string", + "description" : "The language of the translation" + }, + "text" : { + "type" : "string", + "description" : "The text of the translation" + } + }, + "description" : "Translation of a link on a news article" + }, + "AccountantDashboardAdminNewsArticleTag" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the tag", + "format" : "int64" + }, + "translations" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleTagTranslation" + } + } + }, + "description" : "Tag on a news article" + }, + "AccountantDashboardAdminNewsArticleTagTranslation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the translation", + "format" : "int64" + }, + "language" : { + "type" : "string", + "description" : "The language of the translation" + }, + "name" : { + "type" : "string", + "description" : "The name of the translation" + } + }, + "description" : "Translation of a tag on a news article" + }, + "AccountantDashboardAdminNewsArticleTranslation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the translation", + "format" : "int64" + }, + "language" : { + "type" : "string", + "description" : "The language of the translation" + }, + "title" : { + "type" : "string", + "description" : "The title of the translation" + }, + "content" : { + "type" : "string", + "description" : "The content of the translation" + } + }, + "description" : "Translation of a news article" + }, + "ListResponseAccountantDashboardAdminNewsArticle" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticle" + } + } + } + }, + "ListResponseAccountantDashboardAdminNewsArticleTag" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleTag" + } + } + } + }, + "ResponseWrapperAccountantDashboardAdminNewsArticle" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticle" + } + } + }, + "ResponseWrapperAccountantDashboardAdminNewsArticleTag" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountantDashboardAdminNewsArticleTag" + } + } + }, + "AccountantDashboardContext" : { + "type" : "object", + "properties" : { + "contextId" : { + "minimum" : 1, + "type" : "integer", + "description" : "The id of the company", + "format" : "int32" + }, + "companyName" : { + "type" : "string", + "description" : "The name of the company" + } + }, + "description" : "Context for the accountant dashboard frontend client" + }, + "ResponseWrapperAccountantDashboardContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountantDashboardContext" + } + } + }, + "AccountantDashboardPublicNewsArticle" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "description" : "The title of the article", + "readOnly" : true + }, + "content" : { + "type" : "string", + "description" : "The text content of the article", + "readOnly" : true + }, + "tags" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "The tags of the article", + "readOnly" : true + } + }, + "links" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardPublicNewsArticleLink" + } + }, + "publishedDate" : { + "type" : "string", + "description" : "The date the article was published", + "readOnly" : true + } + }, + "readOnly" : true + }, + "AccountantDashboardPublicNewsArticleLink" : { + "type" : "object", + "properties" : { + "url" : { + "type" : "string", + "description" : "The URL of the link" + }, + "text" : { + "type" : "string", + "description" : "The text of the link" + } + }, + "description" : "The links of the article", + "readOnly" : true + }, + "ListResponseAccountantDashboardPublicNewsArticle" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardPublicNewsArticle" + } + } + } + }, + "AccountantDashboardTag" : { + "type" : "object", + "properties" : { + "id" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "displayName" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseAccountantDashboardTag" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantDashboardTag" + } + } + } + }, + "ClientsModulesModuleInfo" : { + "type" : "object", + "properties" : { + "module" : { + "type" : "string", + "description" : "Module", + "readOnly" : true, + "enum" : [ "SMART_WAGE", "API_V2", "REMIT", "AUTOPAY", "ZTL", "CASH_CREDIT_APRILA", "VOUCHER_SCANNING", "SMART_SCAN", "INVOICE_OPTION_AVTALEGIRO", "INVOICE_OPTION_EFAKTURA", "INVOICE_OPTION_VIPPS", "INVOICE_OPTION_PAPER", "OCR", "INVOICE_OPTION_AUTOINVOICE_OUTBOUND_EHF", "INVOICE_OPTION_AUTOINVOICE_INCOMING_EHF", "SMS_NOTIFICATION", "NETS_PRINT", "SMART_TIME_TRACKING", "ENCRYPTED_PAYSLIP", "BASIS", "DIYPACKAGE", "SMART", "KOMPLETT", "OCR_AUTOPAY", "LOGISTICS", "RACKBEAT", "MIKRO", "VVS_ELECTRO", "ACCOUNT_OFFICE", "SMART_PROJECT", "READ_ONLY_ACCESS", "READ_ONLY_ACCESS_FREE", "PRO", "BILAG_0_500_AUTOMATION", "BILAG_501_1000_AUTOMATION", "BILAG_1001_2000_AUTOMATION", "BILAG_2001_3500_AUTOMATION", "BILAG_3501_5000_AUTOMATION", "BILAG_5001_10001_AUTOMATION", "UBEGRENSET_BILAG_AUTOMATION", "BILAG_0_100_MIKRO_AUTOMATION", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "ACCOUNTING", "MINI", "MEDIUM", "TOTAL", "AGRO_LICENCE", "AGRO_CLIENT", "MAMUT", "MAMUT_WITH_WAGE", "AUTPLUS_MINI", "AUTPLUS_STOR", "INTEGRATION_PARTNER", "FIXED_ASSETS_REGISTER", "STICOS", "RECONCILIATION", "DIGITAL_SIGNING", "TRIPLETEX_MCP_BETA" ] + }, + "title" : { + "type" : "string", + "description" : "Title", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description", + "readOnly" : true + }, + "descriptionLong1" : { + "type" : "string", + "description" : "Description long 1", + "readOnly" : true + }, + "descriptionLong2" : { + "type" : "string", + "description" : "Description long 2", + "readOnly" : true + }, + "priceInfos" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "Price lines", + "readOnly" : true + } + }, + "licenseUrl" : { + "type" : "string", + "description" : "License", + "readOnly" : true + } + } + }, + "ResponseWrapperMapCategoryListClientsModulesModuleInfo" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientsModulesModuleInfo" + } + } + } + } + }, + "Client" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "faxNumber" : { + "type" : "string" + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "type" : { + "type" : "string", + "enum" : [ "NONE", "ENK", "AS", "NUF", "ANS", "DA", "PRE", "KS", "ASA", "BBL", "BRL", "GFS", "SPA", "SF", "IKS", "KF_FKF", "FCD", "EOFG", "BA", "STI", "ORG", "ESEK", "SA", "SAM", "BO", "VPFO", "OS", "FLI", "Other" ] + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "accountantOrSimilar" : { + "type" : "boolean", + "readOnly" : true + }, + "companyMigration" : { + "type" : "string", + "description" : "If the company was migrated from another system, this field will contain the name of the system it was migrated from.", + "readOnly" : true, + "enum" : [ "NONE", "AGRO" ] + }, + "invoiceShowDeliveryDate" : { + "type" : "boolean", + "readOnly" : true + }, + "customerCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperClient" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Client" + } + } + }, + "ListResponseEmployee" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employee" + } + } + } + }, + "ListResponseClient" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Client" + } + } + } + }, + "AccountingOfficeEmployeeOverview" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "partnerAccountManager" : { + "$ref" : "#/components/schemas/PartnerAccountManager" + }, + "certifications" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Certification" + } + }, + "roles" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountingOfficeEmployeeRole" + } + } + } + }, + "AccountingOfficeEmployeeRole" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id", + "format" : "int32", + "readOnly" : true + }, + "role" : { + "type" : "string", + "description" : "Role", + "readOnly" : true + }, + "info" : { + "type" : "string", + "description" : "Info", + "readOnly" : true + } + }, + "description" : "Roles", + "readOnly" : true + }, + "Certification" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "Certification name", + "readOnly" : true + }, + "certificationDate" : { + "type" : "string", + "description" : "Certification date", + "readOnly" : true + }, + "expirationDate" : { + "type" : "string", + "description" : "Certification expiration date", + "readOnly" : true + } + }, + "description" : "Tripletex certified", + "readOnly" : true + }, + "PartnerAccountManager" : { + "type" : "object", + "properties" : { + "fullName" : { + "type" : "string", + "description" : "Full name", + "readOnly" : true + }, + "email" : { + "type" : "string", + "description" : "email", + "readOnly" : true + }, + "phoneNumber" : { + "type" : "string", + "description" : "Phone number", + "readOnly" : true + } + }, + "description" : "Partner account manager", + "readOnly" : true + }, + "ResponseWrapperAccountingOfficeEmployeeOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountingOfficeEmployeeOverview" + } + } + }, + "Account" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "numberPretty" : { + "type" : "string", + "description" : "number pretty", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "type" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ASSETS", "EQUITY", "LIABILITIES", "OPERATING_REVENUES", "OPERATING_EXPENSES", "INVESTMENT_INCOME", "COST_OF_CAPITAL", "TAX_ON_ORDINARY_ACTIVITIES", "EXTRAORDINARY_INCOME", "EXTRAORDINARY_COST", "TAX_ON_EXTRAORDINARY_ACTIVITIES", "ANNUAL_RESULT", "TRANSFERS_AND_ALLOCATIONS" ] + }, + "legalVatTypes" : { + "type" : "array", + "description" : "List of legal vat types for this account.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatType" + } + }, + "ledgerType" : { + "type" : "string", + "description" : "Supported ledger types, default is GENERAL. Only available for customers with the module multiple ledgers.", + "enum" : [ "GENERAL", "CUSTOMER", "VENDOR", "EMPLOYEE", "ASSET" ] + }, + "balanceGroup" : { + "type" : "string", + "description" : "The balance group for this account.", + "readOnly" : true + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "vatLocked" : { + "type" : "boolean", + "description" : "True if all entries on this account must have the vat type given by vatType." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "isCloseable" : { + "type" : "boolean", + "description" : "True if it should be possible to close entries on this account and it is possible to filter on open entries." + }, + "isApplicableForSupplierInvoice" : { + "type" : "boolean", + "description" : "True if this account is applicable for supplier invoice registration." + }, + "requireReconciliation" : { + "type" : "boolean", + "description" : "True if this account must be reconciled before the accounting period closure." + }, + "isInactive" : { + "type" : "boolean", + "description" : "Inactive accounts will not show up in UI lists." + }, + "isBankAccount" : { + "type" : "boolean" + }, + "isInvoiceAccount" : { + "type" : "boolean" + }, + "bankAccountNumber" : { + "type" : "string" + }, + "bankAccountCountry" : { + "$ref" : "#/components/schemas/Country" + }, + "bankName" : { + "type" : "string" + }, + "bankAccountIBAN" : { + "type" : "string" + }, + "bankAccountSWIFT" : { + "type" : "string" + }, + "saftCode" : { + "type" : "string", + "description" : "SAF-T 1.0 standard account ID for account. It will be given a default value based on account number if empty." + }, + "groupingCode" : { + "type" : "string", + "description" : "SAF-T 1.3 groupingCode for the account. It will be given a default value based on account number if empty." + }, + "displayName" : { + "type" : "string" + }, + "requiresDepartment" : { + "type" : "boolean", + "description" : "Posting against this account requires department." + }, + "requiresProject" : { + "type" : "boolean", + "description" : "Posting against this account requires project." + }, + "invoicingDepartment" : { + "$ref" : "#/components/schemas/Department" + }, + "isPostingsExist" : { + "type" : "boolean" + }, + "quantityType1" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "quantityType2" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "requiresFreeDimension1" : { + "type" : "boolean", + "description" : "Posting against this account requires free dimension 1." + }, + "requiresFreeDimension2" : { + "type" : "boolean", + "description" : "Posting against this account requires free dimension 2." + }, + "requiresFreeDimension3" : { + "type" : "boolean", + "description" : "Posting against this account requires free dimension 3." + } + } + }, + "ClientModuleStatus" : { + "type" : "object", + "properties" : { + "module" : { + "type" : "string", + "description" : "Module", + "readOnly" : true, + "enum" : [ "SMART_WAGE", "API_V2", "REMIT", "AUTOPAY", "ZTL", "CASH_CREDIT_APRILA", "VOUCHER_SCANNING", "SMART_SCAN", "INVOICE_OPTION_AVTALEGIRO", "INVOICE_OPTION_EFAKTURA", "INVOICE_OPTION_VIPPS", "INVOICE_OPTION_PAPER", "OCR", "INVOICE_OPTION_AUTOINVOICE_OUTBOUND_EHF", "INVOICE_OPTION_AUTOINVOICE_INCOMING_EHF", "SMS_NOTIFICATION", "NETS_PRINT", "SMART_TIME_TRACKING", "ENCRYPTED_PAYSLIP", "BASIS", "DIYPACKAGE", "SMART", "KOMPLETT", "OCR_AUTOPAY", "LOGISTICS", "RACKBEAT", "MIKRO", "VVS_ELECTRO", "ACCOUNT_OFFICE", "SMART_PROJECT", "READ_ONLY_ACCESS", "READ_ONLY_ACCESS_FREE", "PRO", "BILAG_0_500_AUTOMATION", "BILAG_501_1000_AUTOMATION", "BILAG_1001_2000_AUTOMATION", "BILAG_2001_3500_AUTOMATION", "BILAG_3501_5000_AUTOMATION", "BILAG_5001_10001_AUTOMATION", "UBEGRENSET_BILAG_AUTOMATION", "BILAG_0_100_MIKRO_AUTOMATION", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "ACCOUNTING", "MINI", "MEDIUM", "TOTAL", "AGRO_LICENCE", "AGRO_CLIENT", "MAMUT", "MAMUT_WITH_WAGE", "AUTPLUS_MINI", "AUTPLUS_STOR", "INTEGRATION_PARTNER", "FIXED_ASSETS_REGISTER", "STICOS", "RECONCILIATION", "DIGITAL_SIGNING", "TRIPLETEX_MCP_BETA" ] + }, + "status" : { + "type" : "string", + "description" : "Status", + "readOnly" : true, + "enum" : [ "UNKNOWN", "ACTIVATED", "PENDING_ACTIVATION", "FAILED_ACTIVATION", "NOT_ACTIVATED", "NOT_AVAILABLE" ] + } + }, + "description" : "Client modules", + "readOnly" : true + }, + "ClientModules" : { + "type" : "object", + "properties" : { + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "modules" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientModuleStatus" + } + } + }, + "readOnly" : true + }, + "CompanyBankAccountPresentation" : { + "type" : "object", + "properties" : { + "iban" : { + "type" : "string", + "description" : "Iban-number" + }, + "bban" : { + "type" : "string", + "description" : "Bban-number" + }, + "bic" : { + "type" : "string", + "description" : "BIC/SWIFT for this bankaccount" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "provider" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NETS", "AUTOPAY" ] + } + }, + "description" : "List of bankAccount for this supplier" + }, + "Customer" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "globalLocationNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "supplierNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "customerNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "isSupplier" : { + "type" : "boolean", + "description" : "Defines if the customer is also a supplier." + }, + "isCustomer" : { + "type" : "boolean", + "readOnly" : true + }, + "isInactive" : { + "type" : "boolean" + }, + "accountManager" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "email" : { + "type" : "string" + }, + "invoiceEmail" : { + "type" : "string" + }, + "overdueNoticeEmail" : { + "type" : "string", + "description" : "The email address of the customer where the noticing emails are sent in case of an overdue" + }, + "bankAccounts" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "[DEPRECATED] List of the bank account numbers for this customer. Norwegian bank account numbers only." + } + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "language" : { + "type" : "string", + "enum" : [ "NO", "EN" ] + }, + "displayName" : { + "type" : "string" + }, + "isPrivateIndividual" : { + "type" : "boolean" + }, + "singleCustomerInvoice" : { + "type" : "boolean", + "description" : "Enables various orders on one customer invoice." + }, + "invoiceSendMethod" : { + "type" : "string", + "description" : "Define the invoicing method for the customer.
EMAIL: Send invoices as email.
EHF: Send invoices as EHF.
EFAKTURA: Send invoices as EFAKTURA.
AVTALEGIRO: Send invoices as AVTALEGIRO.
VIPPS: Send invoices through VIPPS.
PAPER: Send invoices as paper invoice.
MANUAL: User will have to send invocie manually.
", + "enum" : [ "EMAIL", "EHF", "EFAKTURA", "AVTALEGIRO", "VIPPS", "PAPER", "MANUAL" ] + }, + "emailAttachmentType" : { + "type" : "string", + "description" : "Define the invoice attachment type for emailing to the customer.
LINK: Send invoice as link in email.
ATTACHMENT: Send invoice as attachment in email.
", + "enum" : [ "LINK", "ATTACHMENT" ] + }, + "postalAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "physicalAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "deliveryAddress" : { + "$ref" : "#/components/schemas/DeliveryAddress" + }, + "category1" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "category2" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "category3" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "invoicesDueIn" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "Number of days/months in which invoices created from this customer is due", + "format" : "int32" + }, + "invoicesDueInType" : { + "type" : "string", + "description" : "Set the time unit of invoicesDueIn. The special case RECURRING_DAY_OF_MONTH enables the due date to be fixed to a specific day of the month, in this case the fixed due date will automatically be set as standard on all invoices created from this customer. Note that when RECURRING_DAY_OF_MONTH is set, the due date will be set to the last day of month if \"31\" is set in invoicesDueIn.", + "enum" : [ "DAYS", "MONTHS", "RECURRING_DAY_OF_MONTH" ] + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "bankAccountPresentation" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CompanyBankAccountPresentation" + } + }, + "ledgerAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "isFactoring" : { + "type" : "boolean", + "description" : "If true; send this customers invoices to factoring (if factoring is turned on in account)." + }, + "invoiceSendSMSNotification" : { + "type" : "boolean", + "description" : "Is sms-notification on/off" + }, + "invoiceSMSNotificationNumber" : { + "type" : "string", + "description" : "Send SMS-notification to this number. Must be a norwegian phone number" + }, + "isAutomaticSoftReminderEnabled" : { + "type" : "boolean", + "description" : "Has automatic soft reminders enabled for this customer." + }, + "isAutomaticReminderEnabled" : { + "type" : "boolean", + "description" : "Has automatic reminders enabled for this customer." + }, + "isAutomaticNoticeOfDebtCollectionEnabled" : { + "type" : "boolean", + "description" : "Has automatic notice of debt collection enabled for this customer." + }, + "discountPercentage" : { + "type" : "number", + "description" : "Default discount percentage for this customer." + }, + "website" : { + "type" : "string" + } + } + }, + "CustomerCategory" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "type" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "displayName" : { + "type" : "string" + } + }, + "description" : "Category 3 of this supplier" + }, + "DeliveryAddress" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "addressLine1" : { + "type" : "string" + }, + "addressLine2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "city" : { + "type" : "string" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "addressAsString" : { + "type" : "string", + "readOnly" : true + }, + "displayNameInklMatrikkel" : { + "type" : "string", + "readOnly" : true + }, + "knr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "gnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "bnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "fnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "snr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "unitNumber" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "customerVendor" : { + "$ref" : "#/components/schemas/Company" + } + }, + "description" : "Delivery address of this order. This can be a new or existing address\n(useful to know, especially if the delivery is to a private person: if 'deliveryAddress.name' is set, we ignore the state of 'customer.id')" + }, + "ProductUnit" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "displayNameShort" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "nameEN" : { + "type" : "string" + }, + "nameShort" : { + "type" : "string" + }, + "nameShortEN" : { + "type" : "string" + }, + "commonCode" : { + "type" : "string" + }, + "isDeletable" : { + "type" : "boolean" + } + }, + "description" : "The quantity type 2 that has been associated to this account" + }, + "ResponseWrapperClientModules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ClientModules" + } + } + }, + "VatType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "percentage" : { + "type" : "number" + }, + "deductionPercentage" : { + "type" : "number", + "description" : "Percentage of the VAT amount that is deducted. Always 100% for all predefined VAT types, but can be lower for custom types for relative VAT." + }, + "parentType" : { + "$ref" : "#/components/schemas/VatType" + } + }, + "description" : "The default vat type for this account." + }, + "ListResponseClientModules" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientModules" + } + } + } + }, + "ClientModuleActivationRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "Customer ID", + "format" : "int64" + }, + "module" : { + "type" : "string", + "description" : "Module", + "enum" : [ "SMART_WAGE", "API_V2", "REMIT", "AUTOPAY", "ZTL", "CASH_CREDIT_APRILA", "VOUCHER_SCANNING", "SMART_SCAN", "INVOICE_OPTION_AVTALEGIRO", "INVOICE_OPTION_EFAKTURA", "INVOICE_OPTION_VIPPS", "INVOICE_OPTION_PAPER", "OCR", "INVOICE_OPTION_AUTOINVOICE_OUTBOUND_EHF", "INVOICE_OPTION_AUTOINVOICE_INCOMING_EHF", "SMS_NOTIFICATION", "NETS_PRINT", "SMART_TIME_TRACKING", "ENCRYPTED_PAYSLIP", "BASIS", "DIYPACKAGE", "SMART", "KOMPLETT", "OCR_AUTOPAY", "LOGISTICS", "RACKBEAT", "MIKRO", "VVS_ELECTRO", "ACCOUNT_OFFICE", "SMART_PROJECT", "READ_ONLY_ACCESS", "READ_ONLY_ACCESS_FREE", "PRO", "BILAG_0_500_AUTOMATION", "BILAG_501_1000_AUTOMATION", "BILAG_1001_2000_AUTOMATION", "BILAG_2001_3500_AUTOMATION", "BILAG_3501_5000_AUTOMATION", "BILAG_5001_10001_AUTOMATION", "UBEGRENSET_BILAG_AUTOMATION", "BILAG_0_100_MIKRO_AUTOMATION", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "ACCOUNTING", "MINI", "MEDIUM", "TOTAL", "AGRO_LICENCE", "AGRO_CLIENT", "MAMUT", "MAMUT_WITH_WAGE", "AUTPLUS_MINI", "AUTPLUS_STOR", "INTEGRATION_PARTNER", "FIXED_ASSETS_REGISTER", "STICOS", "RECONCILIATION", "DIGITAL_SIGNING", "TRIPLETEX_MCP_BETA" ] + } + } + }, + "ListResponseClientModuleActivationRequest" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientModuleActivationRequest" + } + } + } + }, + "Activity" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "activityType" : { + "type" : "string", + "description" : "PROJECT_SPECIFIC_ACTIVITY are made via project/projectActivity, as they must be part of a project.", + "enum" : [ "GENERAL_ACTIVITY", "PROJECT_GENERAL_ACTIVITY", "PROJECT_SPECIFIC_ACTIVITY", "TASK" ] + }, + "isProjectActivity" : { + "type" : "boolean", + "description" : "Manipulate these with ActivityType", + "readOnly" : true + }, + "isGeneral" : { + "type" : "boolean", + "description" : "Manipulate these with ActivityType", + "readOnly" : true + }, + "isTask" : { + "type" : "boolean", + "description" : "Manipulate these with ActivityType", + "readOnly" : true + }, + "isDisabled" : { + "type" : "boolean", + "readOnly" : true + }, + "isChargeable" : { + "type" : "boolean" + }, + "rate" : { + "type" : "number" + }, + "costPercentage" : { + "type" : "number" + }, + "displayName" : { + "type" : "string" + }, + "deletable" : { + "type" : "boolean", + "readOnly" : true + } + }, + "description" : "Add existing project activity or create new project specific activity" + }, + "ResponseWrapperActivity" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Activity" + } + } + }, + "ListResponseActivity" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Activity" + } + } + } + }, + "ResponseWrapperString" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string" + } + } + }, + "ResponseWrapperAddonStatusType" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "IN_DEVELOPMENT", "PENDING", "REJECTED", "APPROVED" ] + } + } + }, + "Addon" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "shortDescription" : { + "type" : "string" + }, + "redirectUrl" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "enum" : [ "IN_DEVELOPMENT", "PENDING", "REJECTED", "APPROVED" ] + }, + "isPublic" : { + "type" : "boolean" + }, + "apiConsumerId" : { + "type" : "integer", + "format" : "int64" + }, + "visibility" : { + "type" : "string", + "enum" : [ "COMPANY_WIDE", "PERSONAL", "INTERNAL" ] + }, + "linkToInfo" : { + "type" : "string" + }, + "partnerName" : { + "type" : "string" + }, + "categories" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "OTHER", "YEAR_END", "BANK", "STAFF", "BOOKING_AND_CHECKOUT", "CRM", "DEBT_COLLECTION", "ONLINE_STORE", "HRM", "REPORTING", "TRAVEL_AND_EXPENSES", "RECONCILLIATION", "PAYMENT_SERVICES", "CHECKOUT", "FAG_SYSTEMER", "APRILA_CASH_CREDIT", "PROJECT", "MILAGE", "WAREHOUSE_LOGISTICS", "TIMESHEET", "BOARD_WORK" ] + } + }, + "logo" : { + "$ref" : "#/components/schemas/AddonLogo" + }, + "active" : { + "type" : "boolean" + }, + "recommended" : { + "type" : "boolean" + }, + "free" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "AddonLogo" : { + "type" : "object", + "properties" : { + "documentId" : { + "type" : "integer", + "format" : "int64" + }, + "content" : { + "type" : "string", + "format" : "byte", + "readOnly" : true + } + } + }, + "ResponseWrapperAddon" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Addon" + } + } + }, + "ListResponseAddon" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Addon" + } + } + } + }, + "ResponseWrapperDeliveryAddress" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DeliveryAddress" + } + } + }, + "ListResponseDeliveryAddress" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DeliveryAddress" + } + } + } + }, + "LegacyAddress" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "addressLine1" : { + "type" : "string" + }, + "addressLine2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "city" : { + "type" : "string" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "addressAsString" : { + "type" : "string", + "readOnly" : true + }, + "displayNameInklMatrikkel" : { + "type" : "string", + "readOnly" : true + }, + "knr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "gnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "bnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "fnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "snr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "unitNumber" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "customerVendor" : { + "$ref" : "#/components/schemas/Company" + } + }, + "readOnly" : true + }, + "ResponseWrapperLegacyAddress" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LegacyAddress" + } + } + }, + "ListResponseLegacyAddress" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LegacyAddress" + } + } + } + }, + "ResponseWrapperInteger" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperObject" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object" + } + } + }, + "ResponseWrapperBoolean" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "boolean" + } + } + }, + "AdvancedPaymentWidget" : { + "type" : "object", + "properties" : { + "paymentTypes" : { + "type" : "array", + "description" : "List of payment types used in this Advanced Payment Widget", + "items" : { + "$ref" : "#/components/schemas/PaymentWidgetPaymentType" + } + }, + "selectedPaymentType" : { + "$ref" : "#/components/schemas/PaymentWidgetPaymentType" + }, + "isAutoPay" : { + "type" : "boolean", + "description" : "Flag for an AutoPay payment" + }, + "isZtl" : { + "type" : "boolean", + "description" : "Flag for a ZTL payment" + }, + "isForeignPayment" : { + "type" : "boolean", + "description" : "Flag for an AutoPay foreign payment" + }, + "creditorBankIdentificator" : { + "type" : "integer", + "description" : "AutoPay's SWIFT or bank code type for an abroad payment", + "format" : "int32" + }, + "creditorName" : { + "type" : "string", + "description" : "AutoPay's creditor name for an abroad payment" + }, + "creditorAddress" : { + "type" : "string", + "description" : "AutoPay's creditor address for an abroad payment" + }, + "creditorPostalCode" : { + "type" : "string", + "description" : "AutoPay's creditor postal code for an abroad payment" + }, + "creditorPostalCity" : { + "type" : "string", + "description" : "AutoPay's creditor postal city for an abroad payment" + }, + "creditorCountryId" : { + "type" : "integer", + "description" : "AutoPay's creditor country id for an abroad payment", + "format" : "int32" + }, + "creditorBankCountryId" : { + "type" : "integer", + "description" : "AutoPay's creditor bank country id for an abroad bank code payment", + "format" : "int32" + }, + "creditorBankName" : { + "type" : "string", + "description" : "AutoPay's creditor bank name for an abroad bank code payment" + }, + "creditorBankAddress" : { + "type" : "string", + "description" : "AutoPay's creditor bank address for an abroad bank code payment" + }, + "creditorBankPostalCode" : { + "type" : "string", + "description" : "AutoPay's creditor bank postal code for an abroad bank code payment" + }, + "creditorBankPostalCity" : { + "type" : "string", + "description" : "AutoPay's creditor bank postal city for an abroad bank code payment" + }, + "creditorBankCode" : { + "type" : "string", + "description" : "AutoPay's creditor bank code for an abroad bank code payment" + }, + "creditorBic" : { + "type" : "string", + "description" : "AutoPay's SWIFT code for an abroad payment" + }, + "accountNumber" : { + "type" : "string", + "description" : "Payment type's account number" + }, + "smartScanMapping" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean", + "description" : "Autofilled using smart scan" + }, + "description" : "Autofilled using smart scan" + }, + "customerVendorIbanOrBban" : { + "type" : "array", + "description" : "Account numbers for this vendor", + "items" : { + "type" : "string", + "description" : "Account numbers for this vendor" + } + }, + "creditorClearingCode" : { + "type" : "string", + "description" : "AutoPay's creditor bank code" + }, + "kid" : { + "type" : "string", + "description" : "Kid or receiver's reference value" + }, + "amount" : { + "type" : "number", + "description" : "Amount value in invoice currency" + }, + "prepaidAmount" : { + "type" : "number", + "description" : "Prepaid Amount value in invoice currency" + }, + "oppositeAmount" : { + "type" : "number", + "description" : "Amount value in payment type currency" + }, + "date" : { + "type" : "string", + "description" : "Payment's date value" + }, + "regulatoryReportingCode" : { + "type" : "string", + "description" : "AutoPay's regulatory reporting code" + }, + "regulatoryReportingInfo" : { + "type" : "string", + "description" : "AutoPay's regulatory reporting info" + }, + "currencyCode" : { + "type" : "string", + "description" : "Invoice currency code or default" + }, + "currencyId" : { + "type" : "integer", + "description" : "Invoice currency id or default", + "format" : "int32" + }, + "lastUsedVendorIbanOrBban" : { + "type" : "string", + "description" : "Last used account for a vendor" + }, + "invoiceIbanOrBban" : { + "type" : "string", + "description" : "Vendor IBAN or BBAN on invoice" + } + } + }, + "PaymentWidgetPaymentType" : { + "type" : "object", + "properties" : { + "uniqueId" : { + "type" : "string", + "description" : "Id corresponding to a Dropdown Type used in the Payment Widget's dropdown elements" + }, + "paymentTypeId" : { + "type" : "integer", + "description" : "Posting rule id or autoPay agreement id or ztl account id", + "format" : "int32" + }, + "paymentTypeValue" : { + "type" : "string", + "description" : "Value of a Dropdown Type used in the Payment Widget's dropdown elements" + }, + "paymentIntegration" : { + "type" : "string", + "description" : "The Payment Type (NETS, AUTOPAY, POSTING_RULE)", + "enum" : [ "NONE", "NOT_PAID", "NETS", "AUTOPAY", "POSTING_RULE", "ZTL" ] + }, + "currencyId" : { + "type" : "integer", + "description" : "Payment type's currency id", + "format" : "int32" + }, + "currencyCode" : { + "type" : "string", + "description" : "Payment type's currency code" + }, + "isDefault" : { + "type" : "boolean", + "description" : "Is the default payment type " + }, + "accountNumber" : { + "type" : "string", + "description" : "Account number" + }, + "paymentTypeDescription" : { + "type" : "string", + "description" : "Payment type description (agreement/posting rule/ztl account description)" + }, + "bankAccount" : { + "type" : "string", + "description" : "Bank account number" + } + }, + "description" : "Default payment type for this Advanced Payment Widget" + }, + "AccommodationAllowance" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "travelExpense" : { + "$ref" : "#/components/schemas/TravelExpense" + }, + "rateType" : { + "$ref" : "#/components/schemas/TravelExpenseRate" + }, + "rateCategory" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + }, + "zone" : { + "type" : "string" + }, + "location" : { + "type" : "string" + }, + "address" : { + "type" : "string" + }, + "count" : { + "type" : "integer", + "format" : "int32" + }, + "rate" : { + "type" : "number" + }, + "amount" : { + "type" : "number" + } + }, + "description" : "Link to individual accommodation allowances.", + "readOnly" : true + }, + "AccountingDimensionValue" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "The name of the value." + }, + "nameAndNumber" : { + "type" : "string", + "description" : "The name and number of the value.", + "readOnly" : true + }, + "dimensionIndex" : { + "minimum" : 0, + "type" : "integer", + "description" : "The index of the dimension this value belongs to.", + "format" : "int32" + }, + "active" : { + "type" : "boolean", + "description" : "Indicates if the value is active." + }, + "number" : { + "type" : "string", + "description" : "The number of the value, which can consist of letters and numbers." + }, + "showInVoucherRegistration" : { + "type" : "boolean", + "description" : "Indicates if the value should be shown in voucher registration." + }, + "position" : { + "minimum" : 0, + "type" : "integer", + "description" : "The position of the value in the list of values for the dimension.", + "format" : "int32" + } + }, + "description" : "Free dimensions for the project connected to the order.", + "readOnly" : true + }, + "ArchiveRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "document" : { + "$ref" : "#/components/schemas/DocumentArchive" + }, + "archiveObjectId" : { + "type" : "integer", + "description" : "Archive object ID", + "format" : "int64" + }, + "archiveObjectType" : { + "type" : "string", + "description" : "Archive object type" + }, + "addToInvoice" : { + "maximum" : 2, + "minimum" : 0, + "type" : "integer", + "description" : "Include this attachment on invoices for the related order. 0 = not included, 1 = next invoice only (legacy), 2 = all invoices from this order.", + "format" : "int32" + }, + "addToOffer" : { + "maximum" : 2, + "minimum" : 0, + "type" : "integer", + "description" : "Include this attachment on offers for the related order. 0 = not included, 1 = next offer only (legacy), 2 = all offers from this order.", + "format" : "int32" + }, + "addToOrder" : { + "maximum" : 2, + "minimum" : 0, + "type" : "integer", + "description" : "Include this attachment on order confirmations for the related order. 0 = not included, 1 = next order confirmation only (legacy), 2 = all order confirmations from this order.", + "format" : "int32" + } + }, + "description" : "[BETA] Archive relations for the attachments on this order — carries the per-attachment addToInvoice / addToOrder flags plus the archive object type (5 = standard attachment from invoice settings).", + "readOnly" : true + }, + "Asset" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "dateOfAcquisition" : { + "type" : "string" + }, + "acquisitionCost" : { + "type" : "number", + "description" : "Acquisition cost." + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "incomingBalance" : { + "type" : "number", + "description" : "Incoming balance for the asset." + }, + "lifetime" : { + "minimum" : 0, + "type" : "integer", + "description" : "Lifetime in months for the asset.", + "format" : "int32" + }, + "status" : { + "type" : "string", + "description" : "Status", + "readOnly" : true, + "enum" : [ "UNKNOWN", "MANUAL", "NO_DEPRECIATION", "INVALID_DATE", "MISSING_TRANS_TYPE", "MISSING_INFO", "READY_TO_DEPRECIATE", "CORRECTION_NEEDED", "COMPLETED", "REST_VALUE", "NOTHING_TO_DEPRECIATE" ] + }, + "depreciationRemainingValue" : { + "type" : "number" + }, + "depreciationAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "hasHistoryFromExternalSystem" : { + "type" : "boolean" + }, + "externalLastDepreciation" : { + "type" : "string" + }, + "externalLastAccountedValue" : { + "type" : "number" + }, + "externalAccumulatedDepreciation" : { + "type" : "number" + }, + "depreciationMethod" : { + "type" : "string", + "description" : "Depreciation method", + "enum" : [ "MANUAL", "TAX_RELATED", "STRAIGHT_LINE", "CUSTOMIZED_AMOUNT", "NO_DEPRECIATION" ] + }, + "depreciationFrom" : { + "type" : "string" + }, + "accumulatedDepreciation" : { + "type" : "number" + }, + "depreciationRate" : { + "type" : "number" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "startingBalance" : { + "type" : "number", + "readOnly" : true + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "readOnly" : true + }, + "balanceChange" : { + "type" : "number", + "readOnly" : true + }, + "depreciationBasis" : { + "type" : "number", + "readOnly" : true + }, + "numberOfMonths" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "annualDepreciation" : { + "type" : "number", + "readOnly" : true + }, + "depreciationDiscrepancy" : { + "type" : "number", + "readOnly" : true + }, + "depreciationAmount" : { + "type" : "number", + "readOnly" : true + }, + "totalDepreciationAmount" : { + "type" : "number", + "readOnly" : true + }, + "improvements" : { + "type" : "number", + "description" : "Improvements", + "readOnly" : true + }, + "newHires" : { + "type" : "number", + "description" : "New hires", + "readOnly" : true + }, + "salesAndOtherRealizations" : { + "type" : "number", + "description" : "Sales and other realizations", + "readOnly" : true + }, + "saleDate" : { + "type" : "string" + }, + "accountingRelatedProfitOrLoss" : { + "type" : "number", + "description" : "Accounting related profit or loss", + "readOnly" : true + } + }, + "description" : "The asset ('anleggsmiddel' / 'eiendel') connected to this posting" + }, + "Attestation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + }, + "levels" : { + "type" : "array", + "description" : "Levels tied to this Attestation.", + "items" : { + "$ref" : "#/components/schemas/AttestationLevel" + } + } + }, + "description" : "[PILOT] Attestation associated with the attestation object" + }, + "AttestationApprover" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "attestationLevel" : { + "$ref" : "#/components/schemas/AttestationLevel" + }, + "enumRole" : { + "type" : "string", + "enum" : [ "NO_ROLE", "PROJECT_MANAGER", "DEPARTMENT_MANAGER", "EMPLOYEE_APPROVER", "PROJECT_APPROVER", "SUPPLIER_ATTESTANT", "COMPANY_ATTESTANT" ] + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "description" : "Approvers tied to this Attestation Level." + }, + "AttestationLevel" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "attestation" : { + "$ref" : "#/components/schemas/Attestation" + }, + "sequence" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "requiredApproverCount" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "minAmount" : { + "minimum" : 0, + "type" : "number" + }, + "attestationApprovers" : { + "type" : "array", + "description" : "Approvers tied to this Attestation Level.", + "items" : { + "$ref" : "#/components/schemas/AttestationApprover" + } + } + }, + "description" : "Levels tied to this Attestation." + }, + "AttestationStep" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "requiredApproverCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SKIPPED", "REJECTED", "NEITHER", "APPROVED", "CURRENT" ] + }, + "attestationStepApprovers" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AttestationStepApprover" + } + }, + "notificationDate" : { + "type" : "string", + "description" : "When the next automatic notification will be sent for this step" + } + }, + "description" : "[PILOT] List of attestation steps associated with the attestation object" + }, + "AttestationStepApprover" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "attestationApproverActionType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "REJECTION", "NEITHER", "APPROVAL", "OVERRIDE_APPROVAL" ] + }, + "comment" : { + "type" : "string", + "readOnly" : true + }, + "timeStamp" : { + "type" : "string" + }, + "strikethrough" : { + "type" : "boolean" + }, + "role" : { + "type" : "string", + "description" : "The role that resolves this approver. Present even when 'employee' is omitted because the viewer may not see the cost carrier.", + "readOnly" : true, + "enum" : [ "NO_ROLE", "PROJECT_MANAGER", "DEPARTMENT_MANAGER", "EMPLOYEE_APPROVER", "PROJECT_APPROVER", "SUPPLIER_ATTESTANT", "COMPANY_ATTESTANT" ] + } + }, + "description" : "DTO for Attestation Step Approver" + }, + "CloseGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "postings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + } + } + }, + "Contact" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumberMobileCountry" : { + "$ref" : "#/components/schemas/Country" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "phoneNumberWork" : { + "type" : "string" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "isInactive" : { + "type" : "boolean" + } + }, + "description" : "If the contact is not an employee" + }, + "Cost" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "travelExpense" : { + "$ref" : "#/components/schemas/TravelExpense" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "costCategory" : { + "$ref" : "#/components/schemas/TravelCostCategory" + }, + "paymentType" : { + "$ref" : "#/components/schemas/TravelPaymentType" + }, + "category" : { + "type" : "string" + }, + "comments" : { + "type" : "string" + }, + "rate" : { + "type" : "number" + }, + "amountCurrencyIncVat" : { + "type" : "number" + }, + "amountNOKInclVAT" : { + "type" : "number" + }, + "amountNOKInclVATLow" : { + "type" : "number", + "readOnly" : true + }, + "amountNOKInclVATMedium" : { + "type" : "number", + "readOnly" : true + }, + "amountNOKInclVATHigh" : { + "type" : "number", + "readOnly" : true + }, + "isPaidByEmployee" : { + "type" : "boolean", + "readOnly" : true + }, + "isChargeable" : { + "type" : "boolean" + }, + "date" : { + "type" : "string" + }, + "participants" : { + "type" : "array", + "description" : "Link to individual expense participant.", + "items" : { + "$ref" : "#/components/schemas/CostParticipant" + } + }, + "predictions" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/Prediction" + } + } + }, + "description" : "Link to individual costs." + }, + "CostParticipant" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + }, + "employeeId" : { + "type" : "integer", + "description" : "Optional employee id in case the participant is an employee", + "format" : "int32" + }, + "cost" : { + "$ref" : "#/components/schemas/Cost" + } + }, + "description" : "Link to individual expense participant." + }, + "DiscountGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "nameAndNumber" : { + "type" : "string", + "readOnly" : true + } + } + }, + "Document" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "fileName" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "The name of the document." + }, + "size" : { + "minimum" : 0, + "type" : "integer", + "description" : "The size of the document in bytes.", + "format" : "int32", + "readOnly" : true + }, + "mimeType" : { + "type" : "string", + "description" : "Type of the document", + "readOnly" : true, + "example" : "type/subtype of resource. E.g. application/pdf" + } + }, + "description" : "[BETA] Attachments belonging to this order", + "readOnly" : true + }, + "DocumentArchive" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "fileName" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "The name of the document." + }, + "size" : { + "minimum" : 0, + "type" : "integer", + "description" : "The size of the document in readable format.", + "format" : "int32", + "readOnly" : true + }, + "archiveDate" : { + "type" : "string" + }, + "mimeType" : { + "maxLength" : 100, + "minLength" : 0, + "type" : "string", + "description" : "Type of the document" + } + }, + "description" : "Attached document", + "readOnly" : true + }, + "DrivingStop" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "locationName" : { + "type" : "string" + }, + "latitude" : { + "type" : "number" + }, + "longitude" : { + "type" : "number" + }, + "sortIndex" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "type" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "mileageAllowance" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + }, + "description" : "Link to individual mileage stops.", + "readOnly" : true + }, + "Inventory" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "isMainInventory" : { + "type" : "boolean" + }, + "isInactive" : { + "type" : "boolean" + }, + "description" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phone" : { + "type" : "string" + }, + "deletable" : { + "type" : "boolean" + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "lastStocking" : { + "type" : "string" + }, + "status" : { + "type" : "string" + }, + "hasLocations" : { + "type" : "boolean" + } + } + }, + "InventoryLocation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "inventory" : { + "$ref" : "#/components/schemas/Inventory" + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "isInactive" : { + "type" : "boolean" + }, + "isDeletable" : { + "type" : "boolean", + "readOnly" : true + }, + "canDeactivate" : { + "type" : "boolean", + "description" : "Indicates whether the location can be deactivated based on current stock and usage.", + "readOnly" : true + } + }, + "description" : "Inventory location field -- beta program" + }, + "Invoice" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "invoiceNumber" : { + "minimum" : 0, + "type" : "integer", + "description" : "If value is set to 0, the invoice number will be generated.", + "format" : "int32" + }, + "invoiceDate" : { + "type" : "string" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "creditedInvoice" : { + "type" : "integer", + "description" : "The id of the original invoice if this is a credit note.", + "format" : "int64", + "readOnly" : true + }, + "isCredited" : { + "type" : "boolean", + "readOnly" : true + }, + "invoiceDueDate" : { + "type" : "string" + }, + "kid" : { + "type" : "string", + "description" : "KID - Kundeidentifikasjonsnummer." + }, + "invoiceComment" : { + "type" : "string", + "description" : "Comment text for the invoice. This was specified on the order as invoiceComment.", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Comment text for the specific invoice." + }, + "orders" : { + "type" : "array", + "description" : "Related orders. Only one order per invoice is supported at the moment.", + "items" : { + "$ref" : "#/components/schemas/Order" + } + }, + "orderLines" : { + "type" : "array", + "description" : "Orderlines connected to the invoice.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OrderLine" + } + }, + "travelReports" : { + "type" : "array", + "description" : "Travel reports connected to the invoice.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpense" + } + }, + "projectInvoiceDetails" : { + "type" : "array", + "description" : "ProjectInvoiceDetails contains additional information about the invoice, in particular invoices for projects. It contains information about the charged project, the fee amount, extra percent and amount, extra costs, travel expenses, invoice and project comments, akonto amount and values determining if extra costs, akonto and hours should be included. ProjectInvoiceDetails is an object which represents the relation between an invoice and a Project, Orderline and OrderOut object.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectInvoiceDetails" + } + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "deliveryDate" : { + "type" : "string", + "description" : "The delivery date.", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "description" : "In the company’s currency, typically NOK.", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "In the specified currency.", + "readOnly" : true + }, + "amountExcludingVat" : { + "type" : "number", + "description" : "Amount excluding VAT (NOK).", + "readOnly" : true + }, + "amountExcludingVatCurrency" : { + "type" : "number", + "description" : "Amount excluding VAT in the specified currency.", + "readOnly" : true + }, + "amountRoundoff" : { + "type" : "number", + "description" : "Amount of round off to nearest integer.", + "readOnly" : true + }, + "amountRoundoffCurrency" : { + "type" : "number", + "description" : "Amount of round off to nearest integer in the specified currency.", + "readOnly" : true + }, + "amountOutstanding" : { + "type" : "number", + "description" : "The amount outstanding based on the history collection, excluding reminders and any existing remits, in the invoice currency.", + "readOnly" : true + }, + "amountCurrencyOutstanding" : { + "type" : "number", + "description" : "The amountCurrency outstanding based on the history collection, excluding reminders and any existing remits, in the invoice currency.", + "readOnly" : true + }, + "amountOutstandingTotal" : { + "type" : "number", + "description" : "The amount outstanding based on the history collection and including the last reminder and any existing remits. This is the total invoice balance including reminders and remittances, in the invoice currency.", + "readOnly" : true + }, + "amountCurrencyOutstandingTotal" : { + "type" : "number", + "description" : "The amountCurrency outstanding based on the history collection and including the last reminder and any existing remits. This is the total invoice balance including reminders and remittances, in the invoice currency.", + "readOnly" : true + }, + "sumRemits" : { + "type" : "number", + "description" : "The sum of all open remittances of the invoice. Remittances are reimbursement payments back to the customer and are therefore relevant to the bookkeeping of the invoice in the accounts.", + "readOnly" : true + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "isCreditNote" : { + "type" : "boolean", + "readOnly" : true + }, + "isCharged" : { + "type" : "boolean", + "readOnly" : true + }, + "isApproved" : { + "type" : "boolean", + "readOnly" : true + }, + "postings" : { + "type" : "array", + "description" : "The invoice postings, which includes a posting for the invoice with a positive amount, and one or more posting for the payments with negative amounts.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "reminders" : { + "type" : "array", + "description" : "Invoice debt collection and reminders.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Reminder" + } + }, + "invoiceRemarks" : { + "type" : "string", + "description" : "Deprecated Invoice remarks - please use the 'invoiceRemark' instead." + }, + "invoiceRemark" : { + "$ref" : "#/components/schemas/InvoiceRemark" + }, + "paymentTypeId" : { + "minimum" : 0, + "type" : "integer", + "description" : "[BETA] Optional. Used to specify payment type for prepaid invoices. Payment type can be specified here, or as a parameter to the /invoice API endpoint.", + "format" : "int32" + }, + "paidAmount" : { + "type" : "number", + "description" : "[BETA] Optional. Used to specify the prepaid amount of the invoice. The paid amount can be specified here, or as a parameter to the /invoice API endpoint." + }, + "isPeriodizationPossible" : { + "type" : "boolean", + "readOnly" : true + }, + "documentId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "ehfSendStatus" : { + "type" : "string", + "description" : "[Deprecated] EHF (Peppol) send status. This only shows status for historic EHFs.", + "enum" : [ "DO_NOT_SEND", "SEND", "SENT", "SEND_FAILURE_RECIPIENT_NOT_FOUND" ] + } + }, + "description" : "Invoicing plans tied to the project", + "readOnly" : true + }, + "InvoiceRemark" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "postponeRemindersTo" : { + "type" : "string" + } + }, + "description" : "Invoice remark - automatically stops reminder/notice of debt collection until specified date." + }, + "Link" : { + "type" : "object", + "properties" : { + "rel" : { + "type" : "string", + "enum" : [ "DELIVER", "APPROVE", "CREATE_VOUCHER", "SEE_ATTESTATION_FLOW", "UNDELIVER", "UNAPPROVE", "OVERRIDE_APPROVE", "REJECT", "GO_TO_INVOICE", "GO_TO_VOUCHER", "GO_TO_PAYSLIP", "COPY", "DELETE" ] + }, + "type" : { + "type" : "string", + "enum" : [ "POST", "PUT", "GET", "DELETE" ] + }, + "href" : { + "type" : "string" + }, + "id" : { + "type" : "integer", + "format" : "int64" + } + }, + "readOnly" : true + }, + "MileageAllowance" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "travelExpense" : { + "$ref" : "#/components/schemas/TravelExpense" + }, + "rateType" : { + "$ref" : "#/components/schemas/TravelExpenseRate" + }, + "rateCategory" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + }, + "date" : { + "type" : "string" + }, + "departureLocation" : { + "type" : "string" + }, + "destination" : { + "type" : "string" + }, + "km" : { + "type" : "number" + }, + "rate" : { + "type" : "number" + }, + "amount" : { + "type" : "number" + }, + "isCompanyCar" : { + "type" : "boolean" + }, + "vehicleType" : { + "minimum" : 0, + "type" : "integer", + "description" : "The corresponded number for the vehicleType. Default value = 0.", + "format" : "int32" + }, + "passengers" : { + "type" : "array", + "description" : "Link to individual passengers.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Passenger" + } + }, + "passengerSupplement" : { + "$ref" : "#/components/schemas/MileageAllowance" + }, + "trailerSupplement" : { + "$ref" : "#/components/schemas/MileageAllowance" + }, + "tollCost" : { + "$ref" : "#/components/schemas/Cost" + }, + "autoPass" : { + "type" : "boolean", + "description" : "Whether the toll cost was calculated with an AutoPASS discount. Only persisted when a toll cost is present." + }, + "rushHour" : { + "type" : "boolean", + "description" : "Whether the toll cost was calculated with rush hour pricing. Only persisted when a toll cost is present." + }, + "hourlyDiscount" : { + "type" : "boolean", + "description" : "Whether the toll cost was calculated with the 1881 hourly rule (free re-crossing within the grace period). Only persisted when a toll cost is present." + }, + "drivingStops" : { + "type" : "array", + "description" : "Link to individual mileage stops.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DrivingStop" + } + } + }, + "description" : "Link to individual mileage allowances.", + "readOnly" : true + }, + "Order" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "contact" : { + "$ref" : "#/components/schemas/Contact" + }, + "attn" : { + "$ref" : "#/components/schemas/Contact" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "receiverEmail" : { + "type" : "string" + }, + "overdueNoticeEmail" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "reference" : { + "type" : "string" + }, + "contractReference" : { + "type" : "string" + }, + "ourContact" : { + "$ref" : "#/components/schemas/Contact" + }, + "ourContactEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "orderDate" : { + "type" : "string" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "invoiceComment" : { + "type" : "string", + "description" : "Comment to be displayed in the invoice based on this order. Can be also found in Invoice.invoiceComment on Invoice objects." + }, + "internalComment" : { + "type" : "string", + "description" : "Internal comment to be displayed in order." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "invoicesDueIn" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "Number of days/months in which invoices created from this order is due", + "format" : "int32" + }, + "status" : { + "type" : "string", + "description" : "Logistics only", + "enum" : [ "NOT_CHOSEN", "NEW", "CONFIRMATION_SENT", "READY_FOR_PICKING", "PICKED", "PACKED", "READY_FOR_SHIPPING", "READY_FOR_INVOICING", "INVOICED", "CANCELLED" ] + }, + "invoicesDueInType" : { + "type" : "string", + "description" : "Set the time unit of invoicesDueIn. The special case RECURRING_DAY_OF_MONTH enables the due date to be fixed to a specific day of the month, in this case the fixed due date will automatically be set as standard on all invoices created from this order. Note that when RECURRING_DAY_OF_MONTH is set, the due date will be set to the last day of month if \"31\" is set in invoicesDueIn.", + "enum" : [ "DAYS", "MONTHS", "RECURRING_DAY_OF_MONTH" ] + }, + "isShowOpenPostsOnInvoices" : { + "type" : "boolean", + "description" : "Show account statement - open posts on invoices created from this order" + }, + "isClosed" : { + "type" : "boolean", + "description" : "Denotes if this order is closed. A closed order can no longer be invoiced unless it is opened again." + }, + "deliveryDate" : { + "type" : "string" + }, + "deliveryAddress" : { + "$ref" : "#/components/schemas/DeliveryAddress" + }, + "deliveryComment" : { + "type" : "string" + }, + "isPrioritizeAmountsIncludingVat" : { + "type" : "boolean" + }, + "orderLineSorting" : { + "type" : "string", + "enum" : [ "ID", "PRODUCT", "PRODUCT_DESCENDING", "CUSTOM" ] + }, + "orderGroups" : { + "type" : "array", + "description" : "Order line groups", + "items" : { + "$ref" : "#/components/schemas/OrderGroup" + } + }, + "orderLines" : { + "type" : "array", + "description" : "Order lines tied to the order. New OrderLines may be embedded here, in some endpoints.", + "items" : { + "$ref" : "#/components/schemas/OrderLine" + } + }, + "isSubscription" : { + "type" : "boolean", + "description" : "If true, the order is a subscription, which enables periodical invoicing of order lines. First, create an order with isSubscription=true, then approve it for subscription invoicing with the :approveSubscriptionInvoice method." + }, + "subscriptionDuration" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of months/years the subscription shall run", + "format" : "int32" + }, + "subscriptionDurationType" : { + "type" : "string", + "description" : "The time unit of subscriptionDuration", + "enum" : [ "MONTHS", "YEAR" ] + }, + "subscriptionPeriodsOnInvoice" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of periods on each invoice", + "format" : "int32" + }, + "subscriptionPeriodsOnInvoiceType" : { + "type" : "string", + "description" : "The time unit of subscriptionPeriodsOnInvoice", + "readOnly" : true, + "enum" : [ "MONTHS" ] + }, + "subscriptionInvoicingTimeInAdvanceOrArrears" : { + "type" : "string", + "description" : "Invoicing in advance/in arrears", + "enum" : [ "ADVANCE", "ARREARS" ] + }, + "subscriptionInvoicingTime" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of days/months invoicing in advance/in arrears", + "format" : "int32" + }, + "subscriptionInvoicingTimeType" : { + "type" : "string", + "description" : "The time unit of subscriptionInvoicingTime", + "enum" : [ "DAYS", "MONTHS" ] + }, + "isSubscriptionAutoInvoicing" : { + "type" : "boolean", + "description" : "Automatic invoicing. Starts when the subscription is approved" + }, + "preliminaryInvoice" : { + "$ref" : "#/components/schemas/Invoice" + }, + "attachment" : { + "type" : "array", + "description" : "[BETA] Attachments belonging to this order", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Document" + } + }, + "attachmentRelation" : { + "type" : "array", + "description" : "[BETA] Archive relations for the attachments on this order — carries the per-attachment addToInvoice / addToOrder flags plus the archive object type (5 = standard attachment from invoice settings).", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ArchiveRelation" + } + }, + "sendMethodDescription" : { + "type" : "string", + "description" : "Description of how this invoice will be sent" + }, + "canCreateBackorder" : { + "type" : "boolean", + "readOnly" : true + }, + "backorderParentId" : { + "type" : "integer", + "description" : "If this order is a backorder, this field contains the ID of the parent order. 0 if not a backorder.", + "format" : "int32", + "readOnly" : true + }, + "invoiceOnAccountVatHigh" : { + "type" : "boolean", + "description" : "Is the on account(a konto) amounts including vat " + }, + "totalInvoicedOnAccountAmountAbsoluteCurrency" : { + "type" : "number", + "description" : "Amount paid on account(a konto)", + "readOnly" : true + }, + "invoiceSendSMSNotification" : { + "type" : "boolean", + "description" : "Is sms-notification on/off", + "readOnly" : true + }, + "invoiceSMSNotificationNumber" : { + "type" : "string", + "description" : "The phone number of the receiver of sms notifications. Must be a norwegian phone number" + }, + "markUpOrderLines" : { + "type" : "number", + "description" : "Set mark-up (%) for order lines." + }, + "discountPercentage" : { + "type" : "number", + "description" : "Default discount percentage for order lines." + }, + "customerName" : { + "type" : "string", + "readOnly" : true + }, + "projectManagerNameAndNumber" : { + "type" : "string", + "readOnly" : true + }, + "travelReports" : { + "type" : "array", + "description" : "Travel reports connected to the order.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpense" + } + }, + "accountingDimensionValues" : { + "type" : "array", + "description" : "Free dimensions for the project connected to the order.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + }, + "description" : "Related orders. Only one order per invoice is supported at the moment." + }, + "OrderGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "order" : { + "$ref" : "#/components/schemas/Order" + }, + "title" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "sortIndex" : { + "minimum" : 0, + "type" : "integer", + "description" : "Defines the presentation order of the orderGroups. Does not need to be, and is often not continuous. Only applicable if parent order has orderLineSorting as CUSTOM.", + "format" : "int32" + }, + "orderLines" : { + "type" : "array", + "description" : "Order lines belonging to the OrderGroup. Order lines that does not belong to a group, can be posted on the orderLines field on the order.", + "items" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + }, + "description" : "Order line groups" + }, + "OrderLine" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "inventory" : { + "$ref" : "#/components/schemas/Inventory" + }, + "inventoryLocation" : { + "$ref" : "#/components/schemas/InventoryLocation" + }, + "description" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "description" : "Display name of order line", + "readOnly" : true + }, + "count" : { + "type" : "number" + }, + "unitCostCurrency" : { + "type" : "number", + "description" : "Unit price purchase (cost) excluding VAT in the order's currency" + }, + "unitPriceExcludingVatCurrency" : { + "type" : "number", + "description" : "Unit price of purchase excluding VAT in the order's currency. If only unit price Excl. VAT or unit price Inc. VAT is supplied, we will calculate and update the missing field." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "markup" : { + "type" : "number", + "description" : "Markup given as a percentage (%)" + }, + "discount" : { + "type" : "number", + "description" : "Discount given as a percentage (%)" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "amountExcludingVatCurrency" : { + "type" : "number", + "description" : "Total amount on order line excluding VAT in the order's currency", + "readOnly" : true + }, + "amountIncludingVatCurrency" : { + "type" : "number", + "description" : "Total amount on order line including VAT in the order's currency", + "readOnly" : true + }, + "vendor" : { + "$ref" : "#/components/schemas/Company" + }, + "order" : { + "$ref" : "#/components/schemas/Order" + }, + "unitPriceIncludingVatCurrency" : { + "type" : "number", + "description" : "Unit price of purchase including VAT in the order's currency. If only unit price Excl. VAT or unit price Inc. VAT is supplied, we will calculate and update the missing field." + }, + "isSubscription" : { + "type" : "boolean" + }, + "subscriptionPeriodStart" : { + "type" : "string" + }, + "subscriptionPeriodEnd" : { + "type" : "string" + }, + "orderGroup" : { + "$ref" : "#/components/schemas/OrderGroup" + }, + "sortIndex" : { + "minimum" : 0, + "type" : "integer", + "description" : "Defines the presentation order of the lines. Does not need to be, and is often not continuous. Only applicable if parent order has orderLineSorting as CUSTOM.", + "format" : "int32" + }, + "isPicked" : { + "type" : "boolean", + "description" : "Only used for Logistics customers who activated the available inventory functionality. Represents whether the line has been picked up or not." + }, + "pickedDate" : { + "type" : "string", + "description" : "Only used for Logistics customers who activated the available inventory functionality. Represents the pick date for an order line or null if the line was not picked." + }, + "orderedQuantity" : { + "type" : "number", + "description" : "Only used for Logistics customers who activated the Backorder functionality. Represents the quantity that was ordered. If nothing is specified, the ordered quantity will be the same as the delivered quantity." + }, + "isCharged" : { + "type" : "boolean", + "description" : "Flag indicating whether the order line is charged or not." + }, + "sourceOrderLineId" : { + "type" : "integer", + "description" : "For generated line instances — e.g. recurring-invoice period lines — the id of the source order line this line was created from. 0 for ordinary lines.", + "format" : "int32", + "readOnly" : true + }, + "originalOrderedQuantity" : { + "type" : "number", + "description" : "Only used for Logistics customers who activated the Backorder functionality. The originally ordered quantity from the root parent order. Only relevant for backorder lines.", + "readOnly" : true + }, + "deliveredQuantity" : { + "type" : "number", + "description" : "Only used for Logistics customers who activated the Backorder functionality. The quantity already delivered from the parent order. Only relevant for backorder lines.", + "readOnly" : true + } + }, + "description" : "Order lines tied to the order. New OrderLines may be embedded here, in some endpoints." + }, + "Passenger" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "mileageAllowance" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + }, + "description" : "Link to individual passengers.", + "readOnly" : true + }, + "Payslip" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "transaction" : { + "$ref" : "#/components/schemas/SalaryTransaction" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "date" : { + "type" : "string", + "description" : "Voucher date." + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "specifications" : { + "type" : "array", + "description" : "Link to salary specifications.", + "items" : { + "$ref" : "#/components/schemas/SalarySpecification" + } + }, + "vacationAllowanceAmount" : { + "type" : "number", + "readOnly" : true + }, + "grossAmount" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "department" : { + "$ref" : "#/components/schemas/Department" + } + }, + "readOnly" : true + }, + "PerDiemCompensation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "travelExpense" : { + "$ref" : "#/components/schemas/TravelExpense" + }, + "rateType" : { + "$ref" : "#/components/schemas/TravelExpenseRate" + }, + "rateCategory" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + }, + "countryCode" : { + "type" : "string" + }, + "travelExpenseZoneId" : { + "type" : "integer", + "description" : "Optional travel expense zone id. If not specified, the value from field zone will be used.", + "format" : "int32" + }, + "overnightAccommodation" : { + "type" : "string", + "description" : "Set what sort of accommodation was had overnight.", + "enum" : [ "NONE", "HOTEL", "BOARDING_HOUSE_WITHOUT_COOKING", "BOARDING_HOUSE_WITH_COOKING" ] + }, + "location" : { + "type" : "string" + }, + "address" : { + "type" : "string" + }, + "count" : { + "type" : "integer", + "format" : "int32" + }, + "rate" : { + "type" : "number" + }, + "amount" : { + "type" : "number" + }, + "isDeductionForBreakfast" : { + "type" : "boolean" + }, + "isDeductionForLunch" : { + "type" : "boolean" + }, + "isDeductionForDinner" : { + "type" : "boolean" + } + }, + "description" : "Link to individual per diem compensations." + }, + "Posting" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "date" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "amortizationAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "amortizationStartDate" : { + "type" : "string", + "description" : "Amortization start date. AmortizationAccountId, amortizationStartDate and amortizationEndDate should be provided." + }, + "amortizationEndDate" : { + "type" : "string" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "amount" : { + "type" : "number" + }, + "amountCurrency" : { + "type" : "number" + }, + "amountGross" : { + "type" : "number" + }, + "amountGrossCurrency" : { + "type" : "number" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "closeGroup" : { + "$ref" : "#/components/schemas/CloseGroup" + }, + "invoiceNumber" : { + "type" : "string" + }, + "termOfPayment" : { + "type" : "string" + }, + "row" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "type" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "INCOMING_PAYMENT", "INCOMING_PAYMENT_OPPOSITE", "INCOMING_INVOICE_CUSTOMER_POSTING", "INVOICE_EXPENSE", "OUTGOING_INVOICE_CUSTOMER_POSTING", "WAGE" ] + }, + "externalRef" : { + "type" : "string", + "description" : "External reference for identifying payment basis of the posting, e.g., KID, customer identification or credit note number.", + "readOnly" : true + }, + "systemGenerated" : { + "type" : "boolean", + "readOnly" : true + }, + "taxTransactionType" : { + "type" : "string", + "readOnly" : true + }, + "taxTransactionTypeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "matched" : { + "type" : "boolean", + "readOnly" : true + }, + "quantityAmount1" : { + "type" : "number", + "description" : "The quantity amount associated with the posting" + }, + "quantityType1" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "quantityAmount2" : { + "type" : "number", + "description" : "The quantity amount associated with the posting" + }, + "quantityType2" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "isVatReadonly" : { + "type" : "boolean", + "description" : "Is vat code readonly?", + "readOnly" : true + }, + "isAmountVatClosed" : { + "type" : "boolean", + "description" : "Is amount of this posting (for VAT purposes) changeable", + "readOnly" : true + }, + "postingRuleId" : { + "type" : "integer", + "description" : "The payment type id associated with the posting. This ID will only be set if the payment types used is an internal payment type like 'Nettbank' - it is not set if the payment is a bank payment like AutoPay or ZTL.", + "format" : "int32" + }, + "freeAccountingDimension1" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeAccountingDimension2" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeAccountingDimension3" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "asset" : { + "$ref" : "#/components/schemas/Asset" + } + } + }, + "Prediction" : { + "type" : "object", + "properties" : { + "predictedValue" : { + "type" : "string" + }, + "confidence" : { + "type" : "string" + } + } + }, + "Product" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "displayNumber" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "orderLineDescription" : { + "type" : "string" + }, + "ean" : { + "type" : "string" + }, + "elNumber" : { + "type" : "string", + "readOnly" : true + }, + "nrfNumber" : { + "type" : "string", + "readOnly" : true + }, + "costExcludingVatCurrency" : { + "type" : "number", + "description" : "Price purchase (cost) excluding VAT in the product's currency" + }, + "expenses" : { + "type" : "number" + }, + "expensesInPercent" : { + "type" : "number", + "readOnly" : true + }, + "costPrice" : { + "type" : "number", + "description" : "Cost price of purchase", + "readOnly" : true + }, + "profit" : { + "type" : "number", + "readOnly" : true + }, + "profitInPercent" : { + "type" : "number", + "readOnly" : true + }, + "priceExcludingVatCurrency" : { + "type" : "number", + "description" : "Price of purchase excluding VAT in the product's currency" + }, + "priceIncludingVatCurrency" : { + "type" : "number", + "description" : "Price of purchase including VAT in the product's currency" + }, + "isInactive" : { + "type" : "boolean" + }, + "discountGroup" : { + "$ref" : "#/components/schemas/DiscountGroup" + }, + "productUnit" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "isStockItem" : { + "type" : "boolean" + }, + "stockOfGoods" : { + "type" : "number", + "description" : "Available only on demand", + "readOnly" : true + }, + "availableStock" : { + "type" : "number", + "description" : "Available only on demand", + "readOnly" : true + }, + "incomingStock" : { + "type" : "number", + "description" : "Available only on demand", + "readOnly" : true + }, + "outgoingStock" : { + "type" : "number", + "description" : "Available only on demand", + "readOnly" : true + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "discountPrice" : { + "type" : "number", + "readOnly" : true + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "resaleProduct" : { + "$ref" : "#/components/schemas/Product" + }, + "isDeletable" : { + "type" : "boolean", + "description" : "For performance reasons, field is deprecated and it will always return false." + }, + "hasSupplierProductConnected" : { + "type" : "boolean" + }, + "weight" : { + "type" : "number" + }, + "weightUnit" : { + "type" : "string", + "enum" : [ "kg", "g", "hg" ] + }, + "volume" : { + "type" : "number" + }, + "volumeUnit" : { + "type" : "string", + "enum" : [ "cm3", "dm3", "m3" ] + }, + "hsnCode" : { + "type" : "string" + }, + "image" : { + "$ref" : "#/components/schemas/Document" + }, + "markupListPercentage" : { + "type" : "number", + "readOnly" : true + }, + "markupNetPercentage" : { + "type" : "number", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "mainSupplierProduct" : { + "$ref" : "#/components/schemas/SupplierProduct" + }, + "isRoundPriceIncVat" : { + "type" : "boolean", + "description" : "[BETA] Indicates whether the price incl. VAT is rounded off or not", + "readOnly" : true + }, + "disableDiscount" : { + "type" : "boolean", + "description" : "If true, no discounts can be applied to this product.", + "readOnly" : true + }, + "priceInTargetCurrency" : { + "type" : "number", + "description" : "Purchase Price converted in specific currency.", + "readOnly" : true + }, + "purchasePriceCurrency" : { + "type" : "number", + "description" : "Purchase Price in product currency. This affects only Supplier Products.", + "readOnly" : true + }, + "minStockLevel" : { + "type" : "number", + "description" : "Minimum available stock level for the product. Applicable only to stock items in the Logistics Basics module." + } + } + }, + "Project" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string", + "description" : "If NULL, a number is generated automatically." + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "projectManager" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "mainProject" : { + "$ref" : "#/components/schemas/Project" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "isClosed" : { + "type" : "boolean" + }, + "isReadyForInvoicing" : { + "type" : "boolean" + }, + "isInternal" : { + "type" : "boolean" + }, + "isOffer" : { + "type" : "boolean", + "description" : "If is Project Offer set to true, if is Project set to false. The default value is false." + }, + "isFixedPrice" : { + "type" : "boolean", + "description" : "Project is fixed price if set to true, hourly rate if set to false." + }, + "projectCategory" : { + "$ref" : "#/components/schemas/ProjectCategory" + }, + "deliveryAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "boligmappaAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "displayNameFormat" : { + "type" : "string", + "description" : "Defines project name presentation in overviews.", + "enum" : [ "NAME_STANDARD", "NAME_INCL_CUSTOMER_NAME", "NAME_INCL_PARENT_NAME", "NAME_INCL_PARENT_NUMBER", "NAME_INCL_PARENT_NAME_AND_NUMBER" ] + }, + "reference" : { + "type" : "string" + }, + "contractReference" : { + "type" : "string" + }, + "externalAccountsNumber" : { + "type" : "string" + }, + "discountPercentage" : { + "type" : "number", + "description" : "Project discount percentage.", + "readOnly" : true + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "fixedprice" : { + "type" : "number", + "description" : "Fixed price amount, in the project's currency." + }, + "contributionMarginPercent" : { + "type" : "number", + "readOnly" : true + }, + "numberOfSubProjects" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "numberOfProjectParticipants" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "orderLines" : { + "type" : "array", + "description" : "Order lines tied to the order", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectOrderLine" + } + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "markUpOrderLines" : { + "type" : "number", + "description" : "Set mark-up (%) for order lines." + }, + "markUpFeesEarned" : { + "type" : "number", + "description" : "Set mark-up (%) for fees earned." + }, + "isPriceCeiling" : { + "type" : "boolean", + "description" : "Set to true if an hourly rate project has a price ceiling." + }, + "priceCeilingAmount" : { + "type" : "number", + "description" : "Price ceiling amount, in the project's currency." + }, + "projectHourlyRates" : { + "type" : "array", + "description" : "Project Rate Types tied to the project.", + "items" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + }, + "forParticipantsOnly" : { + "type" : "boolean", + "description" : "Set to true if only project participants can register information on the project" + }, + "participants" : { + "type" : "array", + "description" : "Link to individual project participants.", + "items" : { + "$ref" : "#/components/schemas/ProjectParticipant" + } + }, + "contact" : { + "$ref" : "#/components/schemas/Contact" + }, + "attention" : { + "$ref" : "#/components/schemas/Contact" + }, + "invoiceComment" : { + "type" : "string", + "description" : "Comment for project invoices" + }, + "invoicingPlan" : { + "type" : "array", + "description" : "Invoicing plans tied to the project", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Invoice" + } + }, + "preliminaryInvoice" : { + "$ref" : "#/components/schemas/Invoice" + }, + "generalProjectActivitiesPerProjectOnly" : { + "type" : "boolean", + "description" : "Set to true if a general project activity must be linked to project to allow time tracking." + }, + "projectActivities" : { + "type" : "array", + "description" : "Project Activities", + "items" : { + "$ref" : "#/components/schemas/ProjectActivity" + } + }, + "hierarchyNameAndNumber" : { + "type" : "string", + "readOnly" : true + }, + "invoiceDueDate" : { + "type" : "integer", + "description" : "invoice due date", + "format" : "int32" + }, + "invoiceDueDateType" : { + "type" : "string", + "description" : "Set the time unit of invoiceDueDate. The special case RECURRING_DAY_OF_MONTH enables the due date to be fixed to a specific day of the month, in this case the fixed due date will automatically be set as standard on all invoices created from this project. Note that when RECURRING_DAY_OF_MONTH is set, the due date will be set to the last day of month if \"31\" is set in invoicesDueIn.", + "enum" : [ "DAYS", "MONTHS", "RECURRING_DAY_OF_MONTH" ] + }, + "invoiceReceiverEmail" : { + "type" : "string", + "description" : "Set the project's invoice receiver email. Will override the default invoice receiver email of any customer that may also be set in the request body." + }, + "overdueNoticeEmail" : { + "type" : "string", + "description" : "Set the project's overdue notice email. Will override the default overdue notice email of any customer that may also be set in the request body." + }, + "accessType" : { + "type" : "string", + "description" : "READ/WRITE access on project", + "enum" : [ "NONE", "READ", "WRITE" ] + }, + "useProductNetPrice" : { + "type" : "boolean" + }, + "ignoreCompanyProductDiscountAgreement" : { + "type" : "boolean" + }, + "customerName" : { + "type" : "string", + "readOnly" : true + }, + "hierarchyLevel" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "projectManagerNameAndNumber" : { + "type" : "string", + "readOnly" : true + }, + "totalInvoicedOnAccountAmountAbsoluteCurrency" : { + "type" : "number", + "description" : "Amount paid on account(a konto)", + "readOnly" : true + }, + "invoiceOnAccountVatHigh" : { + "type" : "boolean", + "description" : "The on account(a konto) amounts including VAT" + }, + "invoiceReserveTotalAmountCurrency" : { + "type" : "number", + "description" : "Total invoice reserve", + "readOnly" : true + }, + "accountingDimensionValues" : { + "type" : "array", + "description" : "[BETA - Requires pilot feature] Free dimensions for the project.", + "items" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + } + }, + "ProjectActivity" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "isClosed" : { + "type" : "boolean" + }, + "budgetHours" : { + "type" : "number", + "description" : "Set budget hours" + }, + "budgetHourlyRateCurrency" : { + "type" : "number", + "description" : "Set budget hourly rate" + }, + "budgetFeeCurrency" : { + "type" : "number", + "description" : "Set budget fee" + } + }, + "description" : "Project Activities" + }, + "ProjectCategory" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "isDeletable" : { + "type" : "boolean" + } + } + }, + "ProjectHourlyRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "startDate" : { + "type" : "string" + }, + "showInProjectOrder" : { + "type" : "boolean", + "description" : "Show on contract confirmation/offers" + }, + "hourlyRateModel" : { + "type" : "string", + "description" : "Defines the model used for the hourly rate.", + "enum" : [ "TYPE_PREDEFINED_HOURLY_RATES", "TYPE_PROJECT_SPECIFIC_HOURLY_RATES", "TYPE_FIXED_HOURLY_RATE" ] + }, + "projectSpecificRates" : { + "type" : "array", + "description" : "Project specific rates if hourlyRateModel is TYPE_PROJECT_SPECIFIC_HOURLY_RATES. ", + "items" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + }, + "fixedRate" : { + "type" : "number", + "description" : "Fixed Hourly rates if hourlyRateModel is TYPE_FIXED_HOURLY_RATE." + } + }, + "description" : "Project Rate Types tied to the project." + }, + "ProjectInvoiceDetails" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "feeAmount" : { + "type" : "number", + "description" : "Fee amount of the project. For example: 100 NOK.", + "readOnly" : true + }, + "feeAmountCurrency" : { + "type" : "number", + "description" : "Fee amount of the project in the invoice currency.", + "readOnly" : true + }, + "markupPercent" : { + "type" : "number", + "description" : "The percentage value of mark-up of amountFee. For example: 10%.", + "readOnly" : true + }, + "markupAmount" : { + "type" : "number", + "description" : "The amount value of mark-up of amountFee on the project invoice. For example: 10 NOK.", + "readOnly" : true + }, + "markupAmountCurrency" : { + "type" : "number", + "description" : "The amount value of mark-up of amountFee on the project invoice, in the invoice currency.", + "readOnly" : true + }, + "amountOrderLinesAndReinvoicing" : { + "type" : "number", + "description" : "The amount of chargeable manual order lines and vendor invoices on the project invoice.", + "readOnly" : true + }, + "amountOrderLinesAndReinvoicingCurrency" : { + "type" : "number", + "description" : "The amount of chargeable manual order lines and vendor invoices on the project invoice, in the invoice currency.", + "readOnly" : true + }, + "amountTravelReportsAndExpenses" : { + "type" : "number", + "description" : "The amount of travel costs and expenses on the project invoice.", + "readOnly" : true + }, + "amountTravelReportsAndExpensesCurrency" : { + "type" : "number", + "description" : "The amount of travel costs and expenses on the project invoice, in the invoice currency.", + "readOnly" : true + }, + "feeInvoiceText" : { + "type" : "string", + "description" : "The fee comment on the project invoice.", + "readOnly" : true + }, + "invoiceText" : { + "type" : "string", + "description" : "The comment on the project invoice.", + "readOnly" : true + }, + "includeOrderLinesAndReinvoicing" : { + "type" : "boolean", + "description" : "Determines if extra costs should be included on the project invoice.", + "readOnly" : true + }, + "includeHours" : { + "type" : "boolean", + "description" : "Determines if hours should be included on the project invoice.", + "readOnly" : true + }, + "includeOnAccountBalance" : { + "type" : "boolean", + "description" : "Determines if akonto should be included on the project invoice.", + "readOnly" : true + }, + "onAccountBalanceAmount" : { + "type" : "number", + "description" : "The akonto amount on the project invoice.", + "readOnly" : true + }, + "onAccountBalanceAmountCurrency" : { + "type" : "number", + "description" : "The akonto amount on the project invoice in the invoice currency.", + "readOnly" : true + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "invoice" : { + "$ref" : "#/components/schemas/Invoice" + } + }, + "description" : "ProjectInvoiceDetails contains additional information about the invoice, in particular invoices for projects. It contains information about the charged project, the fee amount, extra percent and amount, extra costs, travel expenses, invoice and project comments, akonto amount and values determining if extra costs, akonto and hours should be included. ProjectInvoiceDetails is an object which represents the relation between an invoice and a Project, Orderline and OrderOut object.", + "readOnly" : true + }, + "ProjectOrderLine" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "inventory" : { + "$ref" : "#/components/schemas/Inventory" + }, + "inventoryLocation" : { + "$ref" : "#/components/schemas/InventoryLocation" + }, + "description" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "description" : "Display name of order line", + "readOnly" : true + }, + "count" : { + "type" : "number" + }, + "unitCostCurrency" : { + "type" : "number", + "description" : "Unit price purchase (cost) excluding VAT in the order's currency" + }, + "unitPriceExcludingVatCurrency" : { + "type" : "number", + "description" : "Unit price of purchase excluding VAT in the order's currency. If only unit price Excl. VAT or unit price Inc. VAT is supplied, we will calculate and update the missing field." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "markup" : { + "type" : "number", + "description" : "Markup given as a percentage (%)" + }, + "discount" : { + "type" : "number", + "description" : "Discount given as a percentage (%)" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "amountExcludingVatCurrency" : { + "type" : "number", + "description" : "Total amount on order line excluding VAT in the order's currency", + "readOnly" : true + }, + "amountIncludingVatCurrency" : { + "type" : "number", + "description" : "Total amount on order line including VAT in the order's currency", + "readOnly" : true + }, + "vendor" : { + "$ref" : "#/components/schemas/Company" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "date" : { + "type" : "string" + }, + "isChargeable" : { + "type" : "boolean" + }, + "isBudget" : { + "type" : "boolean", + "readOnly" : true + }, + "invoice" : { + "$ref" : "#/components/schemas/Invoice" + }, + "customSortIndex" : { + "type" : "integer", + "format" : "int32" + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + } + }, + "description" : "Order lines tied to the order", + "readOnly" : true + }, + "ProjectParticipant" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "adminAccess" : { + "type" : "boolean" + } + }, + "description" : "Link to individual project participants." + }, + "ProjectSpecificRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "hourlyRate" : { + "type" : "number" + }, + "hourlyCostPercentage" : { + "type" : "number" + }, + "projectHourlyRate" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + } + }, + "description" : "Project specific rates if hourlyRateModel is TYPE_PROJECT_SPECIFIC_HOURLY_RATES. " + }, + "Reminder" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "invoiceId" : { + "type" : "integer", + "description" : "The invoice ID the reminder is connected to.", + "format" : "int64", + "readOnly" : true + }, + "reminderDate" : { + "type" : "string", + "description" : "Creation date of the invoice reminder.", + "readOnly" : true + }, + "charge" : { + "type" : "number", + "description" : "The fee part of the reminder, in the company's currency.", + "readOnly" : true + }, + "chargeCurrency" : { + "type" : "number", + "description" : "The fee part of the reminder, in the invoice currency.", + "readOnly" : true + }, + "totalCharge" : { + "type" : "number", + "description" : "The total fee part of all reminders, in the company's currency.", + "readOnly" : true + }, + "totalChargeCurrency" : { + "type" : "number", + "description" : "The total fee part of all reminders, in the invoice currency.", + "readOnly" : true + }, + "totalAmountCurrency" : { + "type" : "number", + "description" : "The total amount to pay in reminder's currency.", + "readOnly" : true + }, + "interests" : { + "type" : "number", + "description" : "The interests part of the reminder.", + "readOnly" : true + }, + "interestRate" : { + "type" : "number", + "description" : "The reminder interest rate.", + "readOnly" : true + }, + "termOfPayment" : { + "type" : "string", + "description" : "The reminder term of payment date." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "type" : { + "type" : "string", + "enum" : [ "SOFT_REMINDER", "REMINDER", "NOTICE_OF_DEBT_COLLECTION", "DEBT_COLLECTION" ] + }, + "comment" : { + "type" : "string" + }, + "kid" : { + "type" : "string", + "description" : "KID - Kundeidentifikasjonsnummer." + }, + "bankAccountNumber" : { + "type" : "string" + }, + "bankAccountIBAN" : { + "type" : "string" + }, + "bankAccountSWIFT" : { + "type" : "string" + }, + "bank" : { + "type" : "string" + } + }, + "description" : "Invoice debt collection and reminders.", + "readOnly" : true + }, + "ResponseWrapperSupplierInvoice" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SupplierInvoice" + } + } + }, + "SalarySpecification" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "rate" : { + "type" : "number" + }, + "count" : { + "type" : "number" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "salaryType" : { + "$ref" : "#/components/schemas/SalaryType" + }, + "payslip" : { + "$ref" : "#/components/schemas/Payslip" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "description" : { + "type" : "string" + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "amount" : { + "type" : "number" + }, + "specificationSupplement" : { + "$ref" : "#/components/schemas/SalarySpecificationSupplement" + } + }, + "description" : "Link to salary specifications." + }, + "SalarySpecificationSupplement" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "carRegNumber" : { + "type" : "string" + }, + "carListPrice" : { + "type" : "number" + } + }, + "description" : "Link to salary specification supplement info." + }, + "SalaryTransaction" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Voucher date." + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "isHistorical" : { + "type" : "boolean", + "description" : "With historical wage vouchers you can update the wage system with information dated before the opening balance." + }, + "paySlipsAvailableDate" : { + "type" : "string", + "description" : "The date payslips are made available to the employee. Defaults to voucherDate." + }, + "payslips" : { + "type" : "array", + "description" : "Link to individual payslip objects.", + "items" : { + "$ref" : "#/components/schemas/Payslip" + } + } + } + }, + "SalaryType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "showInTimesheet" : { + "type" : "boolean", + "readOnly" : true + }, + "isSickPayable" : { + "type" : "boolean", + "readOnly" : true + }, + "isVacationPayable" : { + "type" : "boolean", + "readOnly" : true + }, + "isTaxable" : { + "type" : "boolean", + "readOnly" : true + }, + "payStatementCodeCode" : { + "type" : "string", + "readOnly" : true + }, + "ameldingWageCode" : { + "type" : "string", + "readOnly" : true + }, + "accountNumberDebit" : { + "$ref" : "#/components/schemas/Account" + }, + "accountNumberCredit" : { + "$ref" : "#/components/schemas/Account" + }, + "isPayrollTaxable" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "Supplier" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "supplierNumber" : { + "type" : "integer", + "format" : "int32" + }, + "customerNumber" : { + "type" : "integer", + "format" : "int32" + }, + "isSupplier" : { + "type" : "boolean", + "readOnly" : true + }, + "isCustomer" : { + "type" : "boolean", + "description" : "Determine if the supplier is also a customer" + }, + "isInactive" : { + "type" : "boolean" + }, + "email" : { + "type" : "string" + }, + "bankAccounts" : { + "type" : "array", + "description" : "[DEPRECATED] List of the bank account numbers for this supplier. Norwegian bank account numbers only.", + "items" : { + "type" : "string", + "description" : "[DEPRECATED] List of the bank account numbers for this supplier. Norwegian bank account numbers only." + } + }, + "invoiceEmail" : { + "type" : "string" + }, + "overdueNoticeEmail" : { + "type" : "string", + "description" : "The email address of the customer where the noticing emails are sent in case of an overdue" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "isPrivateIndividual" : { + "type" : "boolean" + }, + "showProducts" : { + "type" : "boolean" + }, + "accountManager" : { + "$ref" : "#/components/schemas/Employee" + }, + "postalAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "physicalAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "deliveryAddress" : { + "$ref" : "#/components/schemas/DeliveryAddress" + }, + "category1" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "category2" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "category3" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "bankAccountPresentation" : { + "type" : "array", + "description" : "List of bankAccount for this supplier", + "items" : { + "$ref" : "#/components/schemas/CompanyBankAccountPresentation" + } + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "ledgerAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "language" : { + "type" : "string", + "enum" : [ "NO", "EN" ] + }, + "isWholesaler" : { + "type" : "boolean", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "locale" : { + "type" : "string", + "readOnly" : true + }, + "website" : { + "type" : "string" + } + } + }, + "SupplierInvoice" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "description" : "Invoice number" + }, + "invoiceDate" : { + "type" : "string" + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "invoiceDueDate" : { + "type" : "string" + }, + "kidOrReceiverReference" : { + "type" : "string", + "description" : "KID or message" + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "amount" : { + "type" : "number", + "description" : "In the company’s currency, typically NOK. Is 0 if value is missing.", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "In the specified currency." + }, + "amountExcludingVat" : { + "type" : "number", + "description" : "Amount excluding VAT (NOK). Is 0 if value is missing.", + "readOnly" : true + }, + "amountExcludingVatCurrency" : { + "type" : "number", + "description" : "Amount excluding VAT in the specified currency. Is 0 if value is missing.", + "readOnly" : true + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "isCreditNote" : { + "type" : "boolean", + "readOnly" : true + }, + "orderLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OrderLine" + } + }, + "payments" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "originalInvoiceDocumentId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "approvalListElements" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherApprovalListElement" + } + }, + "outstandingAmount" : { + "type" : "number", + "description" : "The amount outstanding on the invoice, in the invoice currency.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "SupplierProduct" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "ean" : { + "type" : "string" + }, + "costExcludingVatCurrency" : { + "type" : "number", + "description" : "Price purchase (cost) excluding VAT in the product's currency" + }, + "cost" : { + "type" : "number", + "description" : "Price purchase (cost) in the company's currency" + }, + "priceExcludingVatCurrency" : { + "type" : "number", + "description" : "Price of purchase excluding VAT in the product's currency" + }, + "priceIncludingVatCurrency" : { + "type" : "number", + "description" : "Price of purchase including VAT in the product's currency" + }, + "isInactive" : { + "type" : "boolean" + }, + "productUnit" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "isStockItem" : { + "type" : "boolean" + }, + "stockOfGoods" : { + "type" : "number", + "readOnly" : true + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "discountPrice" : { + "type" : "number", + "readOnly" : true + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "resaleProduct" : { + "$ref" : "#/components/schemas/Product" + }, + "isDeletable" : { + "type" : "boolean", + "readOnly" : true + }, + "vendorName" : { + "type" : "string", + "readOnly" : true + }, + "isEfoNelfoProduct" : { + "type" : "boolean", + "readOnly" : true + }, + "wholesalerId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isMainSupplierProduct" : { + "type" : "boolean", + "description" : "This feature is available only in pilot" + }, + "priceInTargetCurrency" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "This feature is available only in pilot" + }, + "TravelCostCategory" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "isVatLocked" : { + "type" : "boolean", + "readOnly" : true + }, + "showOnTravelExpenses" : { + "type" : "boolean", + "readOnly" : true + }, + "showOnEmployeeExpenses" : { + "type" : "boolean", + "readOnly" : true + }, + "isInactive" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + } + } + }, + "TravelDetails" : { + "type" : "object", + "properties" : { + "isForeignTravel" : { + "type" : "boolean" + }, + "isDayTrip" : { + "type" : "boolean" + }, + "isCompensationFromRates" : { + "type" : "boolean" + }, + "departureDate" : { + "type" : "string" + }, + "returnDate" : { + "type" : "string" + }, + "detailedJourneyDescription" : { + "type" : "string" + }, + "departureFrom" : { + "type" : "string" + }, + "destination" : { + "type" : "string" + }, + "departureTime" : { + "type" : "string" + }, + "returnTime" : { + "type" : "string" + }, + "purpose" : { + "type" : "string" + } + } + }, + "TravelExpense" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "attestationSteps" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AttestationStep" + } + }, + "attestation" : { + "$ref" : "#/components/schemas/Attestation" + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "urlDetails" : { + "type" : "string", + "description" : "[PILOT] Url to access the view in web", + "readOnly" : true + }, + "overviewUrl" : { + "type" : "string", + "description" : "[PILOT] Url to access the overview in web", + "readOnly" : true + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "approvedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "completedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "rejectedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "freeDimension1" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeDimension2" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeDimension3" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "payslip" : { + "$ref" : "#/components/schemas/Payslip" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "paymentCurrency" : { + "$ref" : "#/components/schemas/Currency" + }, + "travelDetails" : { + "$ref" : "#/components/schemas/TravelDetails" + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + }, + "isCompleted" : { + "type" : "boolean", + "readOnly" : true + }, + "isApproved" : { + "type" : "boolean", + "readOnly" : true + }, + "rejectedComment" : { + "type" : "string", + "readOnly" : true + }, + "isChargeable" : { + "type" : "boolean" + }, + "isFixedInvoicedAmount" : { + "type" : "boolean" + }, + "isMarkupInvoicedPercent" : { + "type" : "boolean" + }, + "isIncludeAttachedReceiptsWhenReinvoicing" : { + "type" : "boolean" + }, + "completedDate" : { + "type" : "string", + "readOnly" : true + }, + "approvedDate" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + }, + "travelAdvance" : { + "type" : "number" + }, + "fixedInvoicedAmount" : { + "type" : "number" + }, + "markupInvoicedPercent" : { + "type" : "number" + }, + "chargeableAmountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "paymentAmount" : { + "type" : "number", + "readOnly" : true + }, + "chargeableAmount" : { + "type" : "number", + "readOnly" : true + }, + "lowRateVAT" : { + "type" : "number", + "readOnly" : true + }, + "mediumRateVAT" : { + "type" : "number", + "readOnly" : true + }, + "highRateVAT" : { + "type" : "number", + "readOnly" : true + }, + "paymentAmountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "numberAsString" : { + "type" : "string", + "readOnly" : true + }, + "invoice" : { + "$ref" : "#/components/schemas/Invoice" + }, + "title" : { + "type" : "string" + }, + "displayNameWithoutNumber" : { + "type" : "string", + "readOnly" : true + }, + "perDiemCompensations" : { + "type" : "array", + "description" : "Link to individual per diem compensations.", + "items" : { + "$ref" : "#/components/schemas/PerDiemCompensation" + } + }, + "mileageAllowances" : { + "type" : "array", + "description" : "Link to individual mileage allowances.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + }, + "accommodationAllowances" : { + "type" : "array", + "description" : "Link to individual accommodation allowances.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccommodationAllowance" + } + }, + "costs" : { + "type" : "array", + "description" : "Link to individual costs.", + "items" : { + "$ref" : "#/components/schemas/Cost" + } + }, + "attachmentCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "state" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "REJECTED", "OPEN", "APPROVED", "SALARY_PAID", "DELIVERED" ] + }, + "stateName" : { + "type" : "string", + "readOnly" : true + }, + "actions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Link" + } + }, + "isSalaryAdmin" : { + "type" : "boolean", + "readOnly" : true + }, + "showPayslip" : { + "type" : "boolean", + "readOnly" : true + }, + "accountingPeriodClosed" : { + "type" : "boolean", + "readOnly" : true + }, + "accountingPeriodVATClosed" : { + "type" : "boolean", + "readOnly" : true + }, + "type" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "Travel reports connected to the order.", + "readOnly" : true + }, + "TravelExpenseRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "rateCategory" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + }, + "zone" : { + "type" : "string" + }, + "rate" : { + "type" : "number" + }, + "breakfastDeductionRate" : { + "type" : "number" + }, + "lunchDeductionRate" : { + "type" : "number" + }, + "dinnerDeductionRate" : { + "type" : "number" + } + } + }, + "TravelExpenseRateCategory" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "ameldingWageCode" : { + "type" : "integer", + "format" : "int32" + }, + "wageCodeNumber" : { + "type" : "string" + }, + "isValidDayTrip" : { + "type" : "boolean" + }, + "isValidAccommodation" : { + "type" : "boolean" + }, + "isValidDomestic" : { + "type" : "boolean" + }, + "isValidForeignTravel" : { + "type" : "boolean" + }, + "isRequiresZone" : { + "type" : "boolean" + }, + "isRequiresOvernightAccommodation" : { + "type" : "boolean" + }, + "fromDate" : { + "type" : "string" + }, + "toDate" : { + "type" : "string" + }, + "type" : { + "type" : "string", + "enum" : [ "PER_DIEM", "ACCOMMODATION_ALLOWANCE", "MILEAGE_ALLOWANCE" ] + } + } + }, + "TravelPaymentType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "showOnTravelExpenses" : { + "type" : "boolean", + "readOnly" : true + }, + "showOnEmployeeExpenses" : { + "type" : "boolean", + "readOnly" : true + }, + "isInactive" : { + "type" : "boolean", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + } + } + }, + "Voucher" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "description" : "System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "tempNumber" : { + "minimum" : 0, + "type" : "integer", + "description" : "Temporary voucher number.", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "minimum" : 0, + "type" : "integer", + "description" : "System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "voucherType" : { + "$ref" : "#/components/schemas/VoucherType" + }, + "reverseVoucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "postings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "document" : { + "$ref" : "#/components/schemas/Document" + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + }, + "externalVoucherNumber" : { + "type" : "string", + "description" : "External voucher number. Maximum 70 characters." + }, + "ediDocument" : { + "$ref" : "#/components/schemas/Document" + }, + "supplierVoucherType" : { + "type" : "string", + "description" : "Supplier voucher type - simple and detailed.", + "readOnly" : true, + "enum" : [ "TYPE_SUPPLIER_INVOICE_SIMPLE", "TYPE_SUPPLIER_INVOICE_DETAILED", "TYPE_INCOMING_INVOICE_UNIFIED" ] + }, + "wasAutoMatched" : { + "type" : "boolean", + "description" : "Voucher was auto matched", + "readOnly" : true + }, + "vendorInvoiceNumber" : { + "type" : "string", + "description" : "Vendor invoice number." + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "numberAsString" : { + "type" : "string", + "readOnly" : true + } + } + }, + "VoucherApprovalListElement" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "actionEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "status" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "organisationLevel" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isVendorAttestant" : { + "type" : "boolean", + "readOnly" : true + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "comment" : { + "type" : "string" + }, + "commentFromOriginator" : { + "type" : "string" + }, + "actionDate" : { + "type" : "string", + "readOnly" : true + }, + "actionEmployeeName" : { + "type" : "string", + "readOnly" : true + }, + "actionEmployeePictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "actionEmployeeIsAuthCompanyAttestor" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "VoucherType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + } + }, + "description" : "Voucher type. Must not be of type 'Utgående faktura' ('Outgoing Invoice') on new vouchers, instead use voucherType=null or use the Invoice endpoint." + }, + "FixImbalancedVouchersResult" : { + "type" : "object", + "properties" : { + "dryRun" : { + "type" : "boolean", + "readOnly" : true + }, + "restoredCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "vouchers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherResult" + } + } + } + }, + "ResponseWrapperFixImbalancedVouchersResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/FixImbalancedVouchersResult" + } + } + }, + "VoucherResult" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "restoredPostingIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "skippedPostingIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "ignoredPostingIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "balanced" : { + "type" : "boolean", + "readOnly" : true + }, + "balance" : { + "type" : "string", + "readOnly" : true + }, + "error" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "AutoPaySupport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "uploadNeeded" : { + "type" : "boolean" + }, + "isEikaType" : { + "type" : "boolean" + }, + "hasOrgNumber" : { + "type" : "boolean" + }, + "isPsd2Type" : { + "type" : "boolean" + }, + "hasApproveInOnlineBanking" : { + "type" : "boolean" + }, + "requiredBankFieldIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "description" : "The autoPay support for this bank", + "readOnly" : true + }, + "Bank" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Bank name", + "readOnly" : true + }, + "bankStatementFileFormatSupport" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "Bank statement file formats supported.", + "readOnly" : true, + "enum" : [ "DNB_CSV", "EIKA_TELEPAY", "SPAREBANK1_TELEPAY", "VISMA_ACCOUNT_STATEMENT", "HANDELSBANKEN_TELEPAY", "SPAREBANKEN_VEST_TELEPAY", "NORDEA_CSV", "TRANSFERWISE", "SPAREBANKEN_SOR_TELEPAY", "SPAREBANKEN_OST_TELEPAY", "DANSKE_BANK_CSV", "CULTURA_BANK_TELEPAY", "SBANKEN_PRIVAT_CSV", "HAUGESUND_SPAREBANK_CSV", "VISMA_ACCOUNT_STATEMENT_PSD2", "SBANKEN_BEDRIFT_CSV", "LANDKREDITT_TELEPAY", "ZTL", "VISMA_ACCOUNT_STATEMENT_PLATFORM_AGNOSTIC", "VISMA_ACCOUNT_STATEMENT_PDS2_PLATFORM_AGNOSTIC", "EXTERNAL_PSD2" ] + } + }, + "registerNumbers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "Register numbers belonging to bank.", + "format" : "int64", + "readOnly" : true + } + }, + "displayName" : { + "type" : "string", + "description" : "Bank name to comply with LoadableDropdown", + "readOnly" : true + }, + "autoPaySupport" : { + "$ref" : "#/components/schemas/AutoPaySupport" + }, + "platform" : { + "type" : "string", + "description" : "Bank platform", + "readOnly" : true, + "enum" : [ "UNKNOWN", "TIETO_EVRY", "SDC", "INDEPENDENT" ] + } + } + }, + "BankStatement" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "openingBalanceCurrency" : { + "type" : "number", + "description" : "Opening balance on the account.", + "readOnly" : true + }, + "closingBalanceCurrency" : { + "type" : "number", + "description" : "Closing balance on the account.", + "readOnly" : true + }, + "fileName" : { + "type" : "string", + "description" : "Bank statement file name.", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "fromDate" : { + "type" : "string", + "readOnly" : true + }, + "toDate" : { + "type" : "string", + "readOnly" : true + }, + "transactions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankTransaction" + } + } + } + }, + "BankTransaction" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "postedDate" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "amountCurrency" : { + "type" : "number" + }, + "bankStatement" : { + "$ref" : "#/components/schemas/BankStatement" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "groupedPostings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/BankTransactionPosting" + } + }, + "matchType" : { + "type" : "string", + "enum" : [ "ONE_TRANSACTION_TO_ONE_POSTING", "ONE_TRANSACTION_TO_MANY_POSTINGS", "MANY_TRANSACTIONS_TO_ONE_POSTING", "MANY_TRANSACTIONS_TO_MANY_POSTINGS", "NO_MATCH", "UNKNOWN" ] + }, + "companyId" : { + "type" : "integer", + "format" : "int32" + }, + "matched" : { + "type" : "boolean", + "readOnly" : true + }, + "bankReconciliationMatchSum" : { + "type" : "number", + "readOnly" : true + }, + "paymentId" : { + "type" : "string" + }, + "sourceVoucher" : { + "$ref" : "#/components/schemas/Voucher" + } + }, + "readOnly" : true + }, + "BankTransactionPosting" : { + "type" : "object", + "properties" : { + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "date" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "amount" : { + "type" : "number" + }, + "amountCurrency" : { + "type" : "number" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "invoiceNumber" : { + "type" : "string" + }, + "postingMatchType" : { + "type" : "string", + "enum" : [ "DEFAULT", "INTERNAL_TRANSFER", "WAGE", "TAX", "VAT" ] + } + } + }, + "ResponseWrapperBankStatement" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankStatement" + } + } + }, + "ResponseWrapperMapStringObject" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "object" + } + } + } + }, + "ResponseWrapperSystemMessage" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SystemMessage" + } + } + }, + "SystemMessage" : { + "type" : "object", + "properties" : { + "message" : { + "type" : "string" + } + } + }, + "AccountBlacklistDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Entry ID", + "format" : "int64", + "readOnly" : true + }, + "type" : { + "type" : "string", + "description" : "Entry type: ORG_NUMBER or EMAIL_PATTERN", + "enum" : [ "ORG_NUMBER", "EMAIL_PATTERN" ] + }, + "pattern" : { + "type" : "string", + "description" : "The blacklisted pattern (org number or email pattern)" + }, + "reason" : { + "type" : "string", + "description" : "Reason for blacklisting" + }, + "createdByEmployeeId" : { + "type" : "integer", + "description" : "ID of the employee who created this entry", + "format" : "int64", + "readOnly" : true + }, + "createdDate" : { + "type" : "string", + "description" : "Date when this entry was created", + "readOnly" : true + }, + "isActive" : { + "type" : "boolean", + "description" : "Whether this entry is currently active" + } + }, + "description" : "Account blacklist entry for organization numbers or email patterns" + }, + "ResponseWrapperAccountBlacklistDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountBlacklistDTO" + } + } + }, + "AccountBlacklistCreateDTO" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "Entry type: ORG_NUMBER or EMAIL_PATTERN", + "enum" : [ "ORG_NUMBER", "EMAIL_PATTERN" ] + }, + "pattern" : { + "type" : "string", + "description" : "The pattern to blacklist (org number or email pattern)" + }, + "reason" : { + "type" : "string", + "description" : "Reason for blacklisting" + } + }, + "description" : "Request to create a new account blacklist entry" + }, + "ResponseWrapperListAccountBlacklistDTO" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountBlacklistDTO" + } + } + } + }, + "Cluster" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "DatabaseMigrationGroup" : { + "type" : "object", + "properties" : { + "group" : { + "$ref" : "#/components/schemas/MigrationGroup" + }, + "migrations" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MigrationTypeSchemaVersion" + } + } + }, + "readOnly" : true + }, + "DatabaseMigrationSummary" : { + "type" : "object", + "properties" : { + "migrationGroups" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DatabaseMigrationGroup" + } + } + } + }, + "MigrationGroup" : { + "type" : "object", + "properties" : { + "migrationSource" : { + "type" : "string", + "enum" : [ "TripletexMigrations", "Tripletex" ] + }, + "migrationCategory" : { + "type" : "string", + "enum" : [ "Structure", "Data" ] + }, + "migrationScope" : { + "type" : "string", + "enum" : [ "Common", "Production", "Api", "Cactus", "BugBounty" ] + }, + "shardGroup" : { + "type" : "string", + "enum" : [ "GLOBAL", "COMPANY", "ARCHIVE" ] + }, + "displayName" : { + "type" : "string" + }, + "tableName" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "MigrationTypeSchemaVersion" : { + "type" : "object", + "properties" : { + "shardGroup" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "GLOBAL", "COMPANY", "ARCHIVE" ] + }, + "shard" : { + "$ref" : "#/components/schemas/Shard" + }, + "tableName" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "schemaVersions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SchemaVersion" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperDatabaseMigrationSummary" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DatabaseMigrationSummary" + } + } + }, + "SchemaVersion" : { + "type" : "object", + "properties" : { + "installedRank" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "version" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "script" : { + "type" : "string", + "readOnly" : true + }, + "checksum" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "installedBy" : { + "type" : "string", + "readOnly" : true + }, + "installedOn" : { + "type" : "string", + "readOnly" : true + }, + "executionTime" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "success" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "Shard" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "cluster" : { + "$ref" : "#/components/schemas/Cluster" + }, + "archive" : { + "type" : "boolean" + }, + "global" : { + "type" : "boolean" + }, + "allowConnections" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "KillSwitchDTO" : { + "type" : "object", + "properties" : { + "feature" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "AlwaysOn", "DummyTestSwitch", "SURVICATE", "LogEverythingJavascript", "SalesForceEmbeddedChat", "Zendesk", "ZendeskChatOpenInNewWindow", "IntroductionWizard", "AutoInvoiceValidatorIncoming", "AutoInvoiceValidatorOutgoing", "KillBillUseNewMailSender", "ElmaLookup", "UseLatestInvoicePdf", "ReportUriHeader", "CsrfValidation", "SendSubscriptionInvoicingError", "KillLargeRequestsNearOOM", "DeleteFromArchive", "ReadEmployeeLoginInfoFromArchive", "Sentry", "SendInvoicesToSmartScan", "UseSpringAIForDocumentScan", "AiExpenseScanBackfill", "AiExpenseScanLive", "GlobalCache", "AlwaysToggleGlobalCacheOutsideOfORM", "BeehiveAuthManagersJSONRPC", "ZendeskSso", "BlockClosedAccountsToUseAPI", "FabricAIIntegration", "TskUseGlobalCache", "TskUploadAttachmentsIndividually", "KillBillAllowLongInvoiceNumberInKID", "WholesalerFailedLoginNotifications", "KillBillEfakturaLookup", "KillBillKYCFeature", "DisableInfoFTPLogging", "ConstrainCompanyIdUpdates", "KillBillGlobalCacheForEhfAndEFakturaLookup", "KillBillSubscriptionInvoicingEvent", "KillBillRecurringInvoicingEvent", "TransactionTimeExceeded", "KillBillSequenceForNextInvoiceNumber", "Chat", "CreateCreditNoteJob", "NonCriticalExtremelySlowQueries", "FeeReserveJobEventProcessor", "UseOldResellerProvisioningLogic", "MamutImportRerun", "FeeReserveJobDeletePreExisting", "SyncLoginAccess", "ResilienceMetrics", "UseLoginAccessForEmployee", "UseLoginAccessForListOfEmployees", "UseLoginAccessForEmployeeLoginInfo", "SaveDocumentToDbInsteadOfS3", "VismaConnectTokenFlow", "VismaConnectTokenFlowInvalidateSession", "InvoiceInAdvanceMigration", "InvoiceProMigratedCustomers", "VismaConnectValidateEmailOnEveryRequest", "BoligmappaResilience", "VismaConnectResilience", "GlobalEventSystem", "SalesforceSupport", "SlowResponsesFromOpenAI", "SlowResponsesFromOpenAIWithoutHelpcenter", "NoResponsesFromOpenAI", "ZendeskNotAvailable", "MPSInvoiceOverviewBanner", "NewDashboardReminderWidget", "NewDashboardReminderWidgetIsVisible", "CustomerApiTripletexPagination", "ClearResellerProvisions", "OScoreFeedbackContactMeToggle", "CalculateHmacOnWebhook", "WebhookOutboundCalls", "AccountingOfficeServiceOptimization", "AccountingOfficeServiceOptimizationPart2", "AccountingOfficeClientAccessForm", "PilotFeatureRecordPatternQuery", "TimeBasedSessionInvalidation", "UserRateLimiting", "ValidDateStringRangeValidation", "ValidJsonRPCDateRangeValidation", "DebugVoucherFormStoreTransactions", "SticosCampaignRelease", "CacheRequestBodyFilter", "LoginVismaConnectMessageCode", "AddRequestIdToAllQueries", "ReminderWidgetWebhookListener", "DeleteAccountJobRun", "ChangedSinceRequestLogId", "AllowSendingInTripletexInvoiceJob", "ZTLResilience", "AutoPayResilience", "ArticleStartDateFiltering", "Inyett", "CopilotUserStats", "CopilotSurvey", "CopilotConversationHistory", "CopilotGeneralLLM", "DisablePSCacheForScatterGather", "TaskFoxBuildDraftOnImports", "NewTargetUrlValidation", "AutoPayMigrator", "Spotlight2FA", "PbcManyToOneEqualDateLimit", "TwoFAButtonOnMyProfile", "VismaConnectLogout", "RateLimitChangesEndpoints", "ReportEngineCellLimit", "ImpersonationToken", "OptimizedPostingAggregatesQuery", "PriceListCache", "UseFuturePricesInPriceList", "RemoveZendeskAndPointToHelpcenter", "ConsumerNameVisibilityTokenCreate", "CompanyIdModelLookup", "ChatModelGeminiFlashLite", "ChatModelGPT4o", "ChatModelGPT41", "ChatModelGPT5Nano", "ChatModelGPT5Mini", "ChatModelGPT5", "ChatModelClaudeSonnet4", "ChatModelBedrockSonnet45", "ChatModelBedrockOpus45", "ChatModelBedrockHaiku45", "ChatModelBedrockOpus46", "ChatModelBedrockSonnet46", "ChatModelBedrockOpus", "ChatModelBedrockSonnet", "ChatModelBedrockHaiku", "ChatModelFallbackOpenAI", "ChatModelFallbackAnthropic", "ChatModelHealthCheck", "TripletexInvoiceJobProcessor", "UseProperVCRedirectForSites", "useOldCalculationOfOutstandingInvoices", "ApiBatchCreate", "ApiBatchUpdate", "ApiBatchDelete", "SendChatNotifications", "OneTimePassword", "CheckForAccountantInWithLoginAccess", "EmailSuperRateLimitUnverifiedCompany", "PDFEmailRateLimit", "VismaConnectDanglingUserEvent", "AckResultCallBack", "ErrorRateLimiting", "ImmutableObjectCache", "DTOCache", "DomainReferenceCheck", "JwtSessionTokens", "AssistantInsightAgents", "AssistantSticosFreeViaInsight", "Enforce2FAUponLogin", "KillBillThrowAtVATCode7", "AssistantActionAgents", "AssistantExpenseAgentForUser", "TripletexAssistantMcp", "VoucherInboxPdfDedup", "CommissionOnExistingCustomers", "AutoPosting", "AutoPostingOutgoingInvoiceWithoutKid", "AutoPostingIncomingInvoiceManuallyPaid", "AutoPostingBankFees", "AutoPostingIntermediateAccount", "AutoPostingBankInterest", "AnomalyDetection", "ProactiveInsights", "ForceProMigration", "GeneralLedgerOptimizedFetch", "KrrGeneralLedgerBackendImprovements", "GeneralLedgerCustomerVendorIndexHint", "UseNewInternalChatQueries", "GlobalSearchCategoryFilters", "TRIP58841RunAll", "PreCacheDebtCollectorInReminderDetails", "ResolveMultipleDefaultLogins", "XxeProtection", "ZendeskMessagingEnabled", "LoginAccessDirectLookupInSearchForLoginContext", "CreditNoteTripletexIncomeSpecification", "PaymentStatusLog", "KillBillSmartSuggestion", "VismaConnectClientIdAllowList", "ProjectApiOrderLinePrefetch", "ProjectApiPickerSubProjectPrefetchGate", "StandardWorkingHoursBatch", "ProjectApiTravelReportChildrenPrefetch", "ProjectApiFeeReservePrefetch", "ProjectApiInvoiceReservePrefetch", "TskAltinn3Banner", "ProjectApiDeliveryAddressPrefetch", "ProjectCategoryApiIsDeletablePrefetch", "ProjectApiOrderLineIndexHints", "WagePdfsNotifySqlFilter", "TripletexMCPBeta", "TripletexMCPBetaEligible", "McpProxyLogin", "OrderApiOrderLinePrefetch", "ProjectOrderLineApiOrderLinePrefetch", "InvoiceApiOrderLinePrefetch", "InvoiceApiPostingAccountCloseGroupPrefetch", "InvoiceApiSumRemitsPrefetch", "SupplierInvoiceApiOrderLinePrefetch", "SkipProMigratedCustomersInOrderJob", "ProjectInvoicingOrderLineCascadePrefetch", "ProjectInvoicingDeferCustomerHydration", "InvoicePdfLogoRequestCache", "ZtlV1PaymentsAvailabilityCheck", "CompanyChooserFastPath", "CompanyChooserNormalLoginBatchChecks", "BankInAppVCLogin", "ProjectInvoicingOrderChildReservePrefetch", "ReportEngineStripEntityPrefetch", "InternalApiTokens", "HourlistReportBatchPreload", "FeeReserveArchiveJob", "PaymentOverviewMfe", "ListTripletexUsersPrefetch" ] + }, + "alive" : { + "type" : "boolean", + "readOnly" : true + }, + "teams" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "ANGRY_NERDS", "ANTS", "RELIONS", "ASTRO", "ATEAM", "BEEHIVE", "BOND", "DATA_STREAM", "FINX", "GOLDSHARK", "KILLBILL", "KRR", "OPTIMUS", "PBC", "PHOENIX", "SECURITY", "SHEET_STORM", "TASK_FOX", "TOOLKITTENS", "TSK", "TIME_TRAVELLERS", "PT", "ATTESTATION", "UNKNOWN" ] + } + } + } + }, + "ResponseWrapperKillSwitchDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/KillSwitchDTO" + } + } + }, + "ListResponseKillSwitchDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/KillSwitchDTO" + } + } + } + }, + "AltinnInstance" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "altinnId" : { + "type" : "string", + "description" : "The altinn archive reference" + }, + "partyId" : { + "type" : "string", + "description" : "The partyId in altinn - refering to the organization" + }, + "instanceGuid" : { + "type" : "string", + "description" : "The id of the instance in Altinn" + }, + "createdInfo" : { + "type" : "string", + "description" : "The initials and date of when the instance was created" + } + }, + "readOnly" : true + }, + "ResponseWrapperAltinnInstance" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AltinnInstance" + } + } + }, + "A07Details" : { + "type" : "object", + "properties" : { + "paymentInformation" : { + "$ref" : "#/components/schemas/A07DetailsPaymentInformation" + }, + "submissions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/A07DetailsSubmission" + } + }, + "businesses" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/A07DetailsBusiness" + } + } + }, + "readOnly" : true + }, + "A07DetailsBusiness" : { + "type" : "object", + "properties" : { + "payrollTax" : { + "$ref" : "#/components/schemas/A07DetailsBusinessPayrollTax" + } + }, + "readOnly" : true + }, + "A07DetailsBusinessPayrollTax" : { + "type" : "object", + "properties" : { + "wagesAndRemuneration" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/A07DetailsBusinessPayrollTaxBasis" + } + }, + "pensionContributionsAndPremiums" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/A07DetailsBusinessPayrollTaxBasis" + } + } + }, + "readOnly" : true + }, + "A07DetailsBusinessPayrollTaxBasis" : { + "type" : "object", + "properties" : { + "zone" : { + "type" : "string", + "readOnly" : true + }, + "basisAmount" : { + "type" : "number", + "readOnly" : true + }, + "percentageRate" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "A07DetailsPaymentInformation" : { + "type" : "object", + "properties" : { + "sumWithholdingTax" : { + "type" : "number", + "readOnly" : true + }, + "sumPayrollTax" : { + "type" : "number", + "readOnly" : true + }, + "sumFinanceTax" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "A07DetailsPaymentInformationSimplified" : { + "type" : "object", + "properties" : { + "sumWithholdingTax" : { + "type" : "number", + "readOnly" : true + }, + "sumPayrollTax" : { + "type" : "number", + "readOnly" : true + }, + "salaryPaymentDate" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "A07DetailsSubmission" : { + "type" : "object", + "properties" : { + "month" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "deliveryTimestamp" : { + "type" : "string", + "readOnly" : true + }, + "altinnTimestamp" : { + "type" : "string", + "readOnly" : true + }, + "taxAndWithholdingTotal" : { + "$ref" : "#/components/schemas/A07DetailsPaymentInformation" + }, + "taxAndWithholdingTotalSimplifiedScheme" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/A07DetailsPaymentInformationSimplified" + } + } + }, + "readOnly" : true + }, + "AmeldingReconciliationReport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "archiveReference" : { + "type" : "string", + "readOnly" : true + }, + "reconciliationTimestamp" : { + "type" : "string", + "readOnly" : true + }, + "from" : { + "type" : "string", + "readOnly" : true + }, + "to" : { + "type" : "string", + "readOnly" : true + }, + "details" : { + "$ref" : "#/components/schemas/A07Details" + } + } + }, + "ResponseWrapperAmeldingReconciliationReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AmeldingReconciliationReport" + } + } + }, + "AmeldingReconciliationReportRequest" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The income year of the requested report", + "format" : "int32", + "writeOnly" : true + }, + "monthFrom" : { + "maximum" : 12, + "minimum" : 1, + "type" : "integer", + "description" : "The start month of the requested report", + "format" : "int32", + "writeOnly" : true, + "example" : 9 + }, + "monthTo" : { + "maximum" : 12, + "minimum" : 1, + "type" : "integer", + "description" : "The end month of the requested report", + "format" : "int32", + "writeOnly" : true, + "example" : 10 + } + } + }, + "ListResponseAmeldingReconciliationReport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AmeldingReconciliationReport" + } + } + } + }, + "AggregateAnomaly" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "anomalyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "externalAnomalyKey" : { + "type" : "string", + "readOnly" : true + }, + "anomalyCheckId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "checkType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNKNOWN", "POSTING_AMOUNT", "VAT_NUMBER", "CUSTOMER_ID", "VENDOR_ID", "ACCOUNT_VENDOR_AGGREGATE_AMOUNT", "DUPLICATE_POSTINGS", "OLD_DATE", "NEW_SIGN_ON_ACCOUNT", "CUSTOMER_VAT_NUMBER", "VENDOR_VAT_NUMBER", "NEW_ACTIVITY_ON_ACCOUNT" ] + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNRESOLVED", "UNDER_REVIEW", "RESOLVED", "ARCHIVED" ] + }, + "timestamp" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "labels" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "labelDescription" : { + "type" : "string", + "description" : "Description shown on hover of a label chip; explains which accounts the check covers", + "readOnly" : true + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "actions" : { + "$ref" : "#/components/schemas/AnomalyActionLayout" + } + }, + "readOnly" : true + }, + "AnomalyAction" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "Discriminator the frontend uses to label and style the button", + "readOnly" : true, + "enum" : [ "VOUCHER", "GENERAL_LEDGER", "CUSTOMER_LEDGER", "VENDOR_LEDGER", "ARCHIVE", "REOPEN" ] + }, + "url" : { + "type" : "string", + "description" : "Navigation target, or null for non-navigation actions like ARCHIVE/REOPEN", + "readOnly" : true + } + }, + "readOnly" : true + }, + "AnomalyActionLayout" : { + "type" : "object", + "properties" : { + "primary" : { + "$ref" : "#/components/schemas/AnomalyAction" + }, + "secondary" : { + "$ref" : "#/components/schemas/AnomalyAction" + }, + "tertiary" : { + "$ref" : "#/components/schemas/AnomalyAction" + }, + "kebab" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnomalyAction" + } + } + }, + "description" : "Action button layout the frontend renders for this anomaly", + "readOnly" : true + }, + "ListResponseAggregateAnomaly" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AggregateAnomaly" + } + } + } + }, + "ResponseWrapperLong" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ResponseWrapperMapCheckTypeLong" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "integer", + "format" : "int64" + } + } + } + }, + "CheckPosting" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + }, + "companyId" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "accountNumber" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "string", + "readOnly" : true + }, + "vendorId" : { + "type" : "string", + "readOnly" : true + }, + "vatNumber" : { + "type" : "string", + "readOnly" : true + }, + "currencyId" : { + "type" : "string", + "readOnly" : true + }, + "closeGroupId" : { + "type" : "string", + "readOnly" : true + }, + "isCloseable" : { + "type" : "boolean", + "readOnly" : true + }, + "postingType" : { + "type" : "string", + "readOnly" : true + }, + "voucherType" : { + "type" : "string", + "readOnly" : true + }, + "accountName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseCheckPosting" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CheckPosting" + } + } + } + }, + "CheckStatus" : { + "type" : "object", + "properties" : { + "jobStatus" : { + "type" : "string", + "writeOnly" : true + }, + "succeeded" : { + "type" : "array", + "description" : "Succeeded companyIds", + "writeOnly" : true, + "items" : { + "type" : "string", + "description" : "Succeeded companyIds", + "writeOnly" : true + } + }, + "failed" : { + "type" : "array", + "description" : "Failed companyIds", + "writeOnly" : true, + "items" : { + "type" : "string", + "description" : "Failed companyIds", + "writeOnly" : true + } + }, + "totalCompanies" : { + "minimum" : 0, + "type" : "integer", + "description" : "Total company ids", + "format" : "int32", + "writeOnly" : true + } + } + }, + "CheckCompanyFilter" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "Whether to include or exclude the listed company IDs", + "enum" : [ "INCLUDE", "EXCLUDE" ] + }, + "companyIds" : { + "maxItems" : 2147483647, + "minItems" : 0, + "type" : "array", + "description" : "List of company IDs to include or exclude", + "items" : { + "type" : "integer", + "description" : "List of company IDs to include or exclude", + "format" : "int64" + } + } + } + }, + "AnomalyDisplayClient" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "anomalyCount" : { + "type" : "integer", + "description" : "Total number of anomalies for this client across all statuses (mirrors AnomalyJobTracker.anomalyCount). Null if no anomaly tracker exists.", + "format" : "int32", + "readOnly" : true + }, + "customerCompanyId" : { + "type" : "integer", + "description" : "The companyId of the customer company this client maps to. `id` is the customerId (the AO's customer record); this is the client's company id.", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseAnomalyDisplayClient" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnomalyDisplayClient" + } + } + } + }, + "AnomalyJobTracker" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "ID", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "description" : "Company ID", + "format" : "int32", + "readOnly" : true + }, + "createChecksStatus" : { + "type" : "string", + "description" : "Status of the create checks job", + "readOnly" : true, + "enum" : [ "FAILED", "SUCCESS", "UNKNOWN" ] + }, + "checkPostingsStatus" : { + "type" : "string", + "description" : "Status of the check postings job", + "readOnly" : true, + "enum" : [ "FAILED", "SUCCESS", "UNKNOWN" ] + }, + "createChecksDate" : { + "type" : "string", + "description" : "DateTime of the last create checks run", + "readOnly" : true + }, + "checkPostingsDate" : { + "type" : "string", + "description" : "DateTime of the last check postings run", + "readOnly" : true + }, + "anomalyCount" : { + "type" : "integer", + "description" : "Number of anomalies detected", + "format" : "int32", + "readOnly" : true + }, + "trainingStartDate" : { + "type" : "string", + "description" : "DateTime when training started", + "readOnly" : true + }, + "deactivatedAt" : { + "type" : "string", + "description" : "DateTime when anomaly detection was deactivated", + "readOnly" : true + } + }, + "description" : "Anomaly job tracker for the client, or null if none exists", + "readOnly" : true + }, + "AnomalyOverviewClient" : { + "type" : "object", + "properties" : { + "client" : { + "$ref" : "#/components/schemas/Client" + }, + "tracker" : { + "$ref" : "#/components/schemas/AnomalyJobTracker" + }, + "subscription" : { + "$ref" : "#/components/schemas/AnomalySubscription" + } + }, + "readOnly" : true + }, + "AnomalySubscription" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "ID", + "format" : "int32", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "description" : "Company ID of the subscribed client", + "format" : "int64", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "description" : "Date the subscription started", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "Date the subscription ends, or null if open-ended", + "readOnly" : true + }, + "activatedByEmployeeId" : { + "type" : "integer", + "description" : "ID of the employee who activated the subscription", + "format" : "int64", + "readOnly" : true + }, + "deactivatedByEmployeeId" : { + "type" : "integer", + "description" : "ID of the employee who deactivated the subscription, or null if still active", + "format" : "int64", + "readOnly" : true + } + }, + "description" : "Active anomaly subscription for the client, or null if the client is not subscribed", + "readOnly" : true + }, + "ListResponseAnomalyOverviewClient" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnomalyOverviewClient" + } + } + } + }, + "AnomaliesContext" : { + "type" : "object", + "properties" : { + "loggedInUserInfo" : { + "$ref" : "#/components/schemas/LoggedInUserInfo" + }, + "accountingOfficeContext" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "LoggedInUserInfo" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "language" : { + "type" : "string", + "readOnly" : true + }, + "loggedInWithConnect" : { + "type" : "boolean", + "readOnly" : true + }, + "employeeIsProxy" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperAnomaliesContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AnomaliesContext" + } + } + }, + "CreatePostingChecksResponse" : { + "type" : "object", + "properties" : { + "jobStatus" : { + "type" : "string", + "description" : "Status of the job", + "readOnly" : true, + "enum" : [ "STARTED" ] + }, + "description" : { + "type" : "string", + "description" : "Description of the job status", + "readOnly" : true + }, + "companyIds" : { + "type" : "array", + "description" : "Company IDs included in this check", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "Company IDs included in this check", + "format" : "int64", + "readOnly" : true + } + } + } + }, + "ResponseWrapperCreatePostingChecksResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CreatePostingChecksResponse" + } + } + }, + "Anomaly" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Anomaly ID", + "format" : "int64", + "readOnly" : true + }, + "checkType" : { + "type" : "string", + "description" : "Anomaly Check Type", + "readOnly" : true, + "enum" : [ "UNKNOWN", "POSTING_AMOUNT", "VAT_NUMBER", "CUSTOMER_ID", "VENDOR_ID", "ACCOUNT_VENDOR_AGGREGATE_AMOUNT", "DUPLICATE_POSTINGS", "OLD_DATE", "NEW_SIGN_ON_ACCOUNT", "CUSTOMER_VAT_NUMBER", "VENDOR_VAT_NUMBER", "NEW_ACTIVITY_ON_ACCOUNT" ] + }, + "title" : { + "type" : "string", + "description" : "Anomaly title", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Anomaly description", + "readOnly" : true + }, + "labels" : { + "type" : "array", + "description" : "Labels associated with the anomaly", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "Labels associated with the anomaly", + "readOnly" : true + } + }, + "labelDescription" : { + "type" : "string", + "description" : "Description shown on hover of a label chip; explains which accounts the check covers", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Date of the anomaly", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "Anomaly status", + "readOnly" : true, + "enum" : [ "UNRESOLVED", "UNDER_REVIEW", "RESOLVED", "ARCHIVED" ] + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "comments" : { + "type" : "array", + "description" : "Comments on the anomaly", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnomalyComment" + } + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "actions" : { + "$ref" : "#/components/schemas/AnomalyActionLayout" + } + }, + "readOnly" : true + }, + "AnomalyComment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "anomalyId" : { + "type" : "integer", + "description" : "The ID of the anomaly this comment is associated with", + "format" : "int64", + "readOnly" : true + }, + "createdAt" : { + "type" : "string", + "description" : "Created at timestamp in ISO 8601 format", + "readOnly" : true + }, + "authorCompanyId" : { + "type" : "integer", + "description" : "The ID of the company the author employee belongs to (may differ from companyId when an accounting office employee authored the comment)", + "format" : "int32", + "readOnly" : true + }, + "authorEmployeeId" : { + "type" : "integer", + "description" : "The ID of the employee who authored the comment (soft reference; may live on a different shard)", + "format" : "int32", + "readOnly" : true + }, + "authorName" : { + "type" : "string", + "description" : "Snapshot of the author's display name at the time the comment was created", + "readOnly" : true + }, + "comment" : { + "maxLength" : 1024, + "minLength" : 0, + "type" : "string", + "description" : "The comment text", + "example" : "Customer needs to verify this voucher." + } + } + }, + "ResponseWrapperAnomaly" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Anomaly" + } + } + }, + "ListResponseAnomaly" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Anomaly" + } + } + } + }, + "AnomalyStatusUpdate" : { + "type" : "object", + "properties" : { + "status" : { + "type" : "string", + "description" : "The new status to set on the anomalies", + "enum" : [ "UNRESOLVED", "UNDER_REVIEW", "RESOLVED", "ARCHIVED" ] + }, + "items" : { + "maxItems" : 2147483647, + "minItems" : 1, + "type" : "array", + "description" : "Anomaly IDs grouped by company to update", + "items" : { + "$ref" : "#/components/schemas/CompanyAnomalyIds" + } + } + } + }, + "CompanyAnomalyIds" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 1, + "type" : "integer", + "description" : "Company the anomalies belong to", + "format" : "int64" + }, + "anomalyIds" : { + "maxItems" : 2147483647, + "minItems" : 1, + "type" : "array", + "description" : " Anomaly ids (Anomaly.id, AggregateAnomaly.anomalyId) — within the company to update", + "items" : { + "type" : "integer", + "description" : " Anomaly ids (Anomaly.id, AggregateAnomaly.anomalyId) — within the company to update", + "format" : "int64" + } + } + }, + "description" : "Anomaly IDs grouped by company to update" + }, + "ListResponseAnomalyComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnomalyComment" + } + } + } + }, + "ResponseWrapperAnomalyComment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AnomalyComment" + } + } + }, + "AOReconciliationAttachment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation this attachment belongs to", + "format" : "int64" + }, + "uploadedAt" : { + "type" : "string", + "description" : "The date and time when the attachment was uploaded", + "readOnly" : true + }, + "uploadedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "referenceId" : { + "type" : "integer", + "description" : "The ID of the reference this attachment is related to", + "format" : "int64" + }, + "document" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "ListResponseAOReconciliationAttachment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AOReconciliationAttachment" + } + } + } + }, + "ResponseWrapperAOReconciliationAttachment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AOReconciliationAttachment" + } + } + }, + "AOReconciliationComment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation this comment is associated with", + "format" : "int64", + "readOnly" : true + }, + "createdAt" : { + "type" : "string", + "description" : "Created at timestamp in ISO 8601 format", + "readOnly" : true + }, + "createdBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "referenceId" : { + "type" : "integer", + "description" : "The reference of what this comment is associated with, e.g., a specific line in a VAT report", + "format" : "int64", + "example" : 1234567890 + }, + "comment" : { + "maxLength" : 1024, + "minLength" : 0, + "type" : "string", + "description" : "The comment text", + "example" : "This is a comment about the reconciliation." + } + } + }, + "ListResponseAOReconciliationComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AOReconciliationComment" + } + } + } + }, + "ResponseWrapperAOReconciliationComment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AOReconciliationComment" + } + } + }, + "Reconciliation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "year" : { + "type" : "integer", + "description" : "The year of the reconciliation", + "format" : "int32" + }, + "term" : { + "maximum" : 12, + "minimum" : 1, + "type" : "integer", + "description" : "The term of the reconciliation", + "format" : "int32" + }, + "document" : { + "$ref" : "#/components/schemas/Document" + }, + "type" : { + "type" : "string", + "description" : "The type of reconciliation, e.g., 'VAT', 'Bank', etc.", + "enum" : [ "UNKNOWN", "VAT_GENERAL_INDUSTRY", "VAT_PRIMARY_INDUSTRY", "SALARY", "BALANCE", "PAYROLL_TAX", "TAX_DEDUCTION", "MANDATORY_DEDUCTION", "HOLIDAY_ALLOWANCE", "FINANCE_TAX", "ANNUAL_BALANCE" ] + }, + "status" : { + "type" : "string", + "description" : "The status of the reconciliation", + "readOnly" : true, + "enum" : [ "DRAFT", "COMPLETED", "CONTROLLED", "ERROR", "WARNING" ] + }, + "startDate" : { + "type" : "string", + "description" : "The start date of the reconciliation period" + }, + "endDate" : { + "type" : "string", + "description" : "The end date of the reconciliation period" + }, + "modifiable" : { + "type" : "boolean", + "description" : "Indicates if the reconciliation is in a modifiable state", + "readOnly" : true + }, + "requiresControl" : { + "type" : "boolean", + "description" : "Indicates if the reconciliation requires an additional control step after completion" + } + }, + "description" : "The reconciliation status of this term", + "readOnly" : true, + "example" : "COMPLETED" + }, + "ResponseWrapperReconciliation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Reconciliation" + } + } + }, + "GenerateReconciliationPdfRequest" : { + "type" : "object", + "properties" : { + "orientation" : { + "type" : "string", + "description" : "Paper orientation. Defaults to LANDSCAPE for balance reconciliation; PORTRAIT is also supported.", + "writeOnly" : true, + "enum" : [ "LANDSCAPE", "PORTRAIT" ] + }, + "includeComments" : { + "type" : "boolean", + "description" : "Whether to include reconciliation comments. Default true preserves existing behavior.", + "writeOnly" : true + }, + "includeAttachments" : { + "type" : "boolean", + "description" : "Whether to include attachment files (vouchers and other attachments). Default true preserves existing behavior; false produces a 'PDF uten vedlegg' variant.", + "writeOnly" : true + }, + "accountIds" : { + "maxItems" : 1000, + "minItems" : 0, + "type" : "array", + "description" : "Account IDs to include in the report. If null, all reconciled accounts are included (current behavior). Empty list yields a report with no per-account content. Capped at 1000 entries to defang accidental abuse.", + "writeOnly" : true, + "items" : { + "type" : "integer", + "description" : "Account IDs to include in the report. If null, all reconciled accounts are included (current behavior). Empty list yields a report with no per-account content. Capped at 1000 entries to defang accidental abuse.", + "format" : "int64", + "writeOnly" : true + } + }, + "includeDecimals" : { + "type" : "boolean", + "description" : "Whether to format amounts with 2 decimals. Default false (amounts render as whole numbers). Auditors who need exact values can flip this on via the customize-modal.", + "writeOnly" : true + } + } + }, + "ListResponseReconciliation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Reconciliation" + } + } + } + }, + "ReconciliationLoggedInUserInfo" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "administrator" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperReconciliationLoggedInUserInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationLoggedInUserInfo" + } + } + }, + "AnnualBalanceContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + } + } + }, + "ResponseWrapperAnnualBalanceContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AnnualBalanceContext" + } + } + }, + "AnnualBalanceContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "AOReconciliationPeriod" : { + "type" : "object", + "properties" : { + "termNumber" : { + "type" : "integer", + "description" : "The term number for this period", + "format" : "int32", + "readOnly" : true, + "example" : 1 + }, + "startDate" : { + "type" : "string", + "description" : "The terms available for the given year", + "readOnly" : true, + "example" : "2025-01-01" + }, + "endDate" : { + "type" : "string", + "description" : "The terms available for the given year", + "readOnly" : true, + "example" : "2025-03-01" + }, + "pending" : { + "type" : "boolean", + "description" : "Whether or not this term is pending reconciliation", + "readOnly" : true, + "example" : true + }, + "reconciliation" : { + "$ref" : "#/components/schemas/Reconciliation" + }, + "reconciliationGroup" : { + "type" : "string", + "description" : "The reconciliation type predicted on this term", + "readOnly" : true, + "example" : "BALANCE", + "enum" : [ "VAT", "SALARY", "BALANCE", "ANNUAL" ] + } + }, + "description" : "The VAT period the data belongs to", + "readOnly" : true + }, + "BalanceReconciliationOverview" : { + "type" : "object", + "properties" : { + "period" : { + "$ref" : "#/components/schemas/AOReconciliationPeriod" + }, + "groups" : { + "type" : "array", + "description" : "The table groups", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationOverviewGroup" + } + }, + "inactiveAccounts" : { + "type" : "array", + "description" : "List of accounts not included in the overview", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationOverviewLine" + } + } + } + }, + "BalanceReconciliationOverviewGroup" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "description" : "The human readable name of the group", + "readOnly" : true + }, + "lines" : { + "type" : "array", + "description" : "The lines of data in the group", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationOverviewLine" + } + } + }, + "description" : "The table groups", + "readOnly" : true + }, + "BalanceReconciliationOverviewLine" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "description" : "The ID of the relevant account", + "format" : "int64" + }, + "displayName" : { + "type" : "string", + "description" : "The human-readable name of the account" + }, + "balanceIn" : { + "type" : "number", + "description" : "The ingoing balance of the account for the period" + }, + "balanceChange" : { + "type" : "number", + "description" : "The sum of movements on the account for the period" + }, + "balanceOut" : { + "type" : "number", + "description" : "The outgoing balance of the account for the period" + }, + "storedBalanceIn" : { + "type" : "number", + "description" : "The stored ingoing balance from when the entry was last saved", + "readOnly" : true + }, + "storedBalanceChange" : { + "type" : "number", + "description" : "The stored balance change from when the entry was last saved", + "readOnly" : true + }, + "storedBalanceOut" : { + "type" : "number", + "description" : "The stored outgoing balance from when the entry was last saved", + "readOnly" : true + }, + "documentedBalance" : { + "type" : "number", + "description" : "The documented balance of the account for the period" + }, + "difference" : { + "type" : "number", + "description" : "The difference between the outgoing balance and the documented balance" + }, + "status" : { + "type" : "string", + "description" : "The reconciliation status of the line", + "enum" : [ "NOT_RECONCILED", "RECONCILED", "REJECTED", "CONTROLLED", "IGNORED" ] + }, + "availableStatuses" : { + "uniqueItems" : true, + "type" : "array", + "description" : "The set of statuses the line can transition to from its current status", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "The set of statuses the line can transition to from its current status", + "readOnly" : true, + "enum" : [ "NOT_RECONCILED", "RECONCILED", "REJECTED", "CONTROLLED", "IGNORED" ] + } + }, + "reconciledAt" : { + "type" : "string", + "description" : "The date and time the line was marked as reconciled" + }, + "reconciledBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "controlledAt" : { + "type" : "string", + "description" : "The date and time the line was controlled" + }, + "controlledBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "errors" : { + "type" : "array", + "items" : { + "type" : "string", + "description" : "Validation errors" + } + }, + "attachedVouchers" : { + "type" : "array", + "description" : "List of vouchers attached to the line", + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationVoucher" + } + }, + "autoReconciled" : { + "type" : "boolean", + "description" : "Whether this account was auto-reconciled by completing a related reconciliation", + "readOnly" : true + }, + "autoReconciledFromTypeName" : { + "type" : "string", + "description" : "Localized display name of the reconciliation type that triggered the auto-reconciliation", + "readOnly" : true + } + } + }, + "BalanceReconciliationVoucher" : { + "type" : "object", + "properties" : { + "originalId" : { + "type" : "integer", + "description" : "Original ID of the voucher in the customers account", + "format" : "int64" + }, + "date" : { + "type" : "string", + "description" : "Date" + }, + "voucherNumber" : { + "type" : "string", + "description" : "Voucher number" + }, + "description" : { + "type" : "string", + "description" : "Description" + }, + "amount" : { + "type" : "number", + "description" : "Amount" + }, + "closed" : { + "type" : "boolean", + "description" : "Closed" + }, + "comments" : { + "type" : "array", + "description" : "Comments", + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationVoucherComment" + } + }, + "originalDocumentId" : { + "type" : "integer", + "description" : "Original document ID (main voucher document in customer company)", + "format" : "int64" + }, + "copyDocumentId" : { + "type" : "integer", + "description" : "Copy document ID (main voucher document copied to AO company)", + "format" : "int64" + }, + "attachments" : { + "type" : "array", + "description" : "Additional attachments", + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationVoucherAttachment" + } + } + }, + "description" : "List of vouchers attached to the line" + }, + "BalanceReconciliationVoucherAttachment" : { + "type" : "object", + "properties" : { + "originalDocumentId" : { + "type" : "integer", + "description" : "Document ID", + "format" : "int64" + }, + "copyDocumentId" : { + "type" : "integer", + "description" : "Document ID", + "format" : "int64" + } + }, + "description" : "Additional attachments" + }, + "BalanceReconciliationVoucherComment" : { + "type" : "object", + "properties" : { + "originalId" : { + "type" : "integer", + "description" : "Original ID of the comment in the customers account", + "format" : "int64" + }, + "authorName" : { + "type" : "string", + "description" : "Author" + }, + "comment" : { + "type" : "string", + "description" : "Content" + }, + "date" : { + "type" : "string", + "description" : "Date" + } + }, + "description" : "Comments" + }, + "ResponseWrapperBalanceReconciliationOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BalanceReconciliationOverview" + } + } + }, + "ListResponseBalanceReconciliationVoucher" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationVoucher" + } + } + } + }, + "BalanceContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperBalanceContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BalanceContext" + } + } + }, + "BalanceContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "ResponseWrapperBalanceReconciliationOverviewLine" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BalanceReconciliationOverviewLine" + } + } + }, + "ListResponseBalanceReconciliationOverviewLine" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReconciliationOverviewLine" + } + } + } + }, + "AmeldingPeriodStatus" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "month" : { + "type" : "integer", + "description" : "1-indexed month (1 = January, 12 = December)", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "completed", "notCompleted", "awaitingResponse" ] + } + }, + "description" : "A-melding summary status per month for the requested year. Only populated when canAccessSalary is true.", + "readOnly" : true + }, + "ClientOverviewContext" : { + "type" : "object", + "properties" : { + "clientId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "customerCompanyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountManagerDisplayName" : { + "type" : "string", + "description" : "Display name of the account manager, or null if none is assigned", + "readOnly" : true + }, + "canAccessVat" : { + "type" : "boolean", + "readOnly" : true + }, + "canAccessSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "canAccessBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "canAccessBank" : { + "type" : "boolean", + "readOnly" : true + }, + "hasGeneralIndustry" : { + "type" : "boolean", + "description" : "Only populated when canAccessVat is true and customerCompanyId > 0", + "readOnly" : true + }, + "hasPrimaryIndustry" : { + "type" : "boolean", + "description" : "Only populated when canAccessVat is true and customerCompanyId > 0", + "readOnly" : true + }, + "ameldingStatuses" : { + "type" : "array", + "description" : "A-melding summary status per month for the requested year. Only populated when canAccessSalary is true.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AmeldingPeriodStatus" + } + }, + "vatRegistered" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperClientOverviewContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ClientOverviewContext" + } + } + }, + "ListResponseReconciliationBlocklistEmployee" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationBlocklistEmployee" + } + } + } + }, + "ReconciliationBlocklistEmployee" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/ReconciliationBlocklistEmployeeInfo" + }, + "blocklistEntryId" : { + "type" : "integer", + "description" : "The blocklist entry ID; present only when isBlocklisted is true", + "format" : "int64" + }, + "blocklisted" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ReconciliationBlocklistEmployeeInfo" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "ID of the employee", + "format" : "int64" + }, + "displayName" : { + "type" : "string", + "description" : "Display name of the employee" + }, + "email" : { + "type" : "string", + "description" : "Email address of the employee" + } + }, + "description" : "The employee" + }, + "ReconciliationBlocklistEntry" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "readOnly" : true + }, + "ResponseWrapperReconciliationBlocklistEntry" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationBlocklistEntry" + } + } + }, + "ListResponseReconciliationBlocklistEntry" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationBlocklistEntry" + } + } + } + }, + "ReconciliationControl" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation this control is associated with", + "format" : "int64" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "timestamp" : { + "type" : "string", + "description" : "The timestamp when the control was performed" + }, + "type" : { + "type" : "string", + "description" : "The type of control performed", + "example" : "RECONCILED, CONTROL_REQUESTED, CONTROLLED", + "enum" : [ "RECONCILED", "CONTROL_REQUESTED", "CONTROLLED" ] + } + }, + "description" : "Reconciliation controls for the aggregated reconciliations", + "readOnly" : true + }, + "ResponseWrapperReconciliationControl" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationControl" + } + } + }, + "ListResponseReconciliationControl" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationControl" + } + } + } + }, + "ReconciliationPermissions" : { + "type" : "object", + "properties" : { + "canAccessVat" : { + "type" : "boolean", + "readOnly" : true + }, + "canAccessSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "canAccessBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "canAccessBank" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperReconciliationPermissions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationPermissions" + } + } + }, + "ListResponseReconciliationValidation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationValidation" + } + } + } + }, + "ReconciliationValidation" : { + "type" : "object", + "properties" : { + "referenceId" : { + "type" : "integer", + "description" : "The referenced data", + "format" : "int64", + "readOnly" : true + }, + "message" : { + "type" : "string", + "description" : "The validation message", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ReconciliationPeriodsOverview" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for this overview", + "format" : "int32", + "readOnly" : true + }, + "minYear" : { + "type" : "integer", + "description" : "The minimum year for which reconciliation terms are available", + "format" : "int32", + "readOnly" : true, + "example" : 2020 + }, + "maxYear" : { + "type" : "integer", + "description" : "The maximum year for which reconciliation terms are available", + "format" : "int32", + "readOnly" : true, + "example" : 2025 + }, + "periods" : { + "type" : "array", + "description" : "The terms available for the given year", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AOReconciliationPeriod" + } + } + } + }, + "ResponseWrapperReconciliationPeriodsOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationPeriodsOverview" + } + } + }, + "FinanceTaxOverview" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "ledgerSum" : { + "type" : "number", + "description" : "Balance change sum from general ledger", + "readOnly" : true, + "example" : 15000.0 + }, + "ameldingSum" : { + "type" : "number", + "description" : "Sum reported to A-melding", + "readOnly" : true, + "example" : 15000.0 + }, + "taxAuthoritiesSum" : { + "type" : "number", + "description" : "Finance tax sum from the tax authorities", + "readOnly" : true, + "example" : 15000.0 + }, + "discrepancy" : { + "type" : "number", + "description" : "Discrepancy between ledger sum and A-melding sum", + "readOnly" : true, + "example" : 500.0 + }, + "financeTaxBasisSum" : { + "type" : "number", + "description" : "Sum of the finance tax basis", + "readOnly" : true, + "example" : 100000.0 + }, + "financeTaxSum" : { + "type" : "number", + "description" : "Sum of the finance tax", + "readOnly" : true, + "example" : 25000.0 + }, + "ledgerUri" : { + "type" : "string", + "description" : "The URI to the general ledger for a given account and period", + "readOnly" : true + } + } + }, + "ResponseWrapperFinanceTaxOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/FinanceTaxOverview" + } + } + }, + "AmeldingPeriodicPayment" : { + "type" : "object", + "properties" : { + "startDate" : { + "type" : "string", + "description" : "Start date of the payment period", + "format" : "date", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "End date exclusive of the payment period", + "format" : "date", + "readOnly" : true + }, + "ledgerSum" : { + "type" : "number", + "description" : "Ledger sum of the payment", + "readOnly" : true + }, + "ameldingSum" : { + "type" : "number", + "description" : "Amelding sum of the payment", + "readOnly" : true + }, + "paidAmount" : { + "type" : "number", + "description" : "Paid amount of the payment", + "readOnly" : true + }, + "paymentDate" : { + "type" : "string", + "description" : "Payment date", + "format" : "date", + "readOnly" : true + }, + "uri" : { + "type" : "string", + "description" : "URI of the payment resource", + "format" : "uri", + "readOnly" : true + }, + "restAmount" : { + "type" : "number", + "description" : "Rest amount of the payment", + "readOnly" : true + } + }, + "description" : "Amount of payments" + }, + "AmeldingPeriodicPaymentOverview" : { + "type" : "object", + "properties" : { + "payments" : { + "type" : "array", + "description" : "Amount of payments", + "items" : { + "$ref" : "#/components/schemas/AmeldingPeriodicPayment" + } + }, + "totalLedgerSum" : { + "type" : "number", + "description" : "Total ledger sum of all payments", + "readOnly" : true + }, + "totalAmeldingSum" : { + "type" : "number", + "description" : "Total amelding sum of all payments", + "readOnly" : true + }, + "totalPaidAmount" : { + "type" : "number", + "description" : "Total paid amount of all payments", + "readOnly" : true + }, + "totalRestAmount" : { + "type" : "number", + "description" : "Total rest amount of all payments", + "readOnly" : true + } + } + }, + "ResponseWrapperAmeldingPeriodicPaymentOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AmeldingPeriodicPaymentOverview" + } + } + }, + "FinanceTaxContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperFinanceTaxContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/FinanceTaxContext" + } + } + }, + "FinanceTaxContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "HolidayAllowanceDetails" : { + "type" : "object", + "properties" : { + "outstandingVacationPayGeneralLedger" : { + "type" : "number", + "description" : "Amount of outstanding holiday allowance from general ledger", + "readOnly" : true + }, + "outstandingVacationPayHolidayAllowanceReport" : { + "type" : "number", + "description" : "Amount of outstanding holiday allowance from holiday allowance report", + "readOnly" : true + }, + "payrollTaxVacationPayGeneralLedger" : { + "type" : "number", + "description" : "Amount of payroll tax of holiday allowance from general ledger", + "readOnly" : true + }, + "payrollTaxVacationPayHolidayAllowanceReport" : { + "type" : "number", + "description" : "Amount of outstanding holiday allowance from holiday allowance report", + "readOnly" : true + } + } + }, + "ResponseWrapperHolidayAllowanceDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HolidayAllowanceDetails" + } + } + }, + "HolidayAllowanceSummary" : { + "type" : "object", + "properties" : { + "rates" : { + "uniqueItems" : true, + "type" : "array", + "description" : "List of holiday allowance rates", + "readOnly" : true, + "items" : { + "type" : "number", + "description" : "List of holiday allowance rates", + "readOnly" : true + } + }, + "creditPrevYearsByRate" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "description" : "Holiday allowance credit from previous years", + "readOnly" : true + }, + "description" : "Holiday allowance credit from previous years", + "readOnly" : true + }, + "earnedThisYearByRate" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "description" : "Holiday allowance earned this year", + "readOnly" : true + }, + "description" : "Holiday allowance earned this year", + "readOnly" : true + }, + "earnedAndPaidThisYearByRate" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "description" : "Holiday allowance earned and paid this year", + "readOnly" : true + }, + "description" : "Holiday allowance earned and paid this year", + "readOnly" : true + }, + "creditThisYearByRate" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "description" : "Holiday allowance credit this year", + "readOnly" : true + }, + "description" : "Holiday allowance credit this year", + "readOnly" : true + }, + "totalCreditPrevYears" : { + "type" : "number", + "description" : "Total holiday allowance credit from previous years", + "readOnly" : true + }, + "totalEarnedThisYear" : { + "type" : "number", + "description" : "Total holiday allowance earned this year", + "readOnly" : true + }, + "totalEarnedAndPaidThisYear" : { + "type" : "number", + "description" : "Total holiday allowance earned and paid this year", + "readOnly" : true + }, + "totalCreditThisYear" : { + "type" : "number", + "description" : "Total holiday allowance credit this year", + "readOnly" : true + } + } + }, + "ResponseWrapperHolidayAllowanceSummary" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HolidayAllowanceSummary" + } + } + }, + "HolidayAllowanceContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperHolidayAllowanceContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HolidayAllowanceContext" + } + } + }, + "HolidayAllowanceContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "MandatoryDeductionOverview" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "ledgerSum" : { + "type" : "number", + "description" : "Total ledger sum of mandatory deduction", + "readOnly" : true + }, + "ameldingSum" : { + "type" : "number", + "description" : "Total amelding sum of mandatory deduction", + "readOnly" : true + }, + "discrepancy" : { + "type" : "number", + "description" : "Total discrepancy of mandatory deduction overview", + "readOnly" : true + }, + "periodOverviews" : { + "type" : "array", + "description" : "Mandatory deduction overview per period", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MandatoryDeductionPeriodOverview" + } + } + } + }, + "MandatoryDeductionPeriodOverview" : { + "type" : "object", + "properties" : { + "epochDays" : { + "type" : "integer", + "description" : "Period represented as epoch days for this particular overview of mandatory deduction", + "format" : "int64", + "readOnly" : true + }, + "ledgerSum" : { + "type" : "number", + "description" : "Ledger sum of this particular overview of mandatory deduction", + "readOnly" : true + }, + "ameldingSum" : { + "type" : "number", + "description" : "Amelding sum of this particular overview of mandatory deduction", + "readOnly" : true + }, + "discrepancy" : { + "type" : "number", + "description" : "Discrepancy of this particular overview of mandatory deduction", + "readOnly" : true + }, + "ledgerUri" : { + "type" : "string", + "description" : "The URI to the general ledger for the mandatory deduction account and period", + "readOnly" : true + } + }, + "description" : "Mandatory deduction overview per period", + "readOnly" : true + }, + "ResponseWrapperMandatoryDeductionOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MandatoryDeductionOverview" + } + } + }, + "MandatoryDeductionContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperMandatoryDeductionContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MandatoryDeductionContext" + } + } + }, + "MandatoryDeductionContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "PayrollTaxOverview" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "ledgerSum" : { + "type" : "number", + "description" : "Balance change sum from general ledger", + "readOnly" : true, + "example" : 15000.0 + }, + "ameldingSum" : { + "type" : "number", + "description" : "Sum reported to A-melding", + "readOnly" : true, + "example" : 14500.0 + }, + "discrepancy" : { + "type" : "number", + "description" : "Discrepancy between ledger sum and A-melding sum", + "readOnly" : true, + "example" : 500.0 + }, + "taxAuthoritiesSum" : { + "type" : "number", + "description" : "Payroll tax sum from the tax authorities", + "readOnly" : true, + "example" : 15000.0 + }, + "aggregatedZones" : { + "type" : "array", + "description" : "Aggregated payroll tax zone information", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PayrollTaxZoneInfo" + } + }, + "ledgerUri" : { + "type" : "string", + "description" : "The URI to the general ledger for the payroll tax account and period", + "readOnly" : true + } + } + }, + "PayrollTaxZoneInfo" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "description" : "Display name for the payroll tax zone", + "readOnly" : true, + "example" : "Zone 1a (14.10%)" + }, + "zone" : { + "type" : "string", + "description" : "Payroll tax zone", + "readOnly" : true, + "example" : "1a" + }, + "taxPercentage" : { + "type" : "number", + "description" : "Tax percentage for the zone", + "readOnly" : true, + "example" : 14.1 + }, + "amountBasisSum" : { + "type" : "number", + "description" : "Sum of amount basis for the zone", + "readOnly" : true, + "example" : 100000.0 + }, + "reimbursementSum" : { + "type" : "number", + "description" : "Sum of reimbursements for the zone", + "readOnly" : true, + "example" : 5000.0 + }, + "pensionSum" : { + "type" : "number", + "description" : "Sum of pensions for the zone", + "readOnly" : true, + "example" : 2000.0 + }, + "payrollTaxSum" : { + "type" : "number", + "description" : "Sum of payroll tax for the zone", + "readOnly" : true, + "example" : 14100.0 + } + }, + "description" : "Aggregated payroll tax zone information", + "readOnly" : true + }, + "ResponseWrapperPayrollTaxOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PayrollTaxOverview" + } + } + }, + "PayrollTaxContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperPayrollTaxContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PayrollTaxContext" + } + } + }, + "PayrollTaxContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "ResponseWrapperSalaryReconAggrContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryReconAggrContext" + } + } + }, + "SalaryReconAggrContext" : { + "type" : "object", + "properties" : { + "reconciliations" : { + "type" : "array", + "description" : "Reconciliations included in this aggregation", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Reconciliation" + } + }, + "reconciliationControls" : { + "type" : "array", + "description" : "Reconciliation controls for the aggregated reconciliations", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationControl" + } + }, + "requiresControl" : { + "type" : "boolean", + "description" : "Any of the aggregated reconciliations that has been marked as requires control", + "readOnly" : true + }, + "reconciliationTypes" : { + "type" : "array", + "description" : "The reconciliation types involved in this aggregation", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "The reconciliation types involved in this aggregation", + "readOnly" : true, + "enum" : [ "UNKNOWN", "VAT_GENERAL_INDUSTRY", "VAT_PRIMARY_INDUSTRY", "SALARY", "BALANCE", "PAYROLL_TAX", "TAX_DEDUCTION", "MANDATORY_DEDUCTION", "HOLIDAY_ALLOWANCE", "FINANCE_TAX", "ANNUAL_BALANCE" ] + } + } + } + }, + "AmeldingStatusInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "ameldingActorEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "paymentActorEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "lastAmeldingActionTime" : { + "type" : "string", + "description" : "Time for last A-melding action", + "readOnly" : true + }, + "lastPaymentActionTime" : { + "type" : "string", + "description" : "Time for last payment of taxes (etc) action", + "readOnly" : true + }, + "ameldingSummaryStatus" : { + "type" : "string", + "description" : "Summary of current A-melding status in period", + "readOnly" : true, + "enum" : [ "completed", "notCompleted", "awaitingResponse" ] + }, + "ameldingDetailedStatus" : { + "type" : "string", + "description" : "Detailed status of current A-melding situation in period", + "readOnly" : true, + "enum" : [ "noAmeldingExists", "ameldingRejected", "ameldingExistsNotSent", "nonReportedWageinfo", "ameldingCancelledAwaitingReturnMessage", "ameldingSentAwaitingReturnMessage", "nonBlockingReturnMessage", "blockingReturnMessage", "okReturnMessage", "unknown" ] + }, + "taxDeductionAccrued" : { + "type" : "number", + "description" : "Tax deduction amount accrued from a-melding", + "readOnly" : true + }, + "payrollTaxAccrued" : { + "type" : "number", + "description" : "Payroll tax (ENI) amount accrued from a-melding", + "readOnly" : true + }, + "financeTaxAccrued" : { + "type" : "number", + "description" : "Finance tax amount accrued from a-melding", + "readOnly" : true + }, + "mandatoryDeductionAccrued" : { + "type" : "number", + "description" : "Mandatory deduction amount accrued from a-melding", + "readOnly" : true + }, + "taxDeductionNotPaid" : { + "type" : "number", + "description" : "Tax deduction amount not paid", + "readOnly" : true + }, + "payrollTaxNotPaid" : { + "type" : "number", + "description" : "Payroll tax (ENI) amount not paid", + "readOnly" : true + }, + "financeTaxNotPaid" : { + "type" : "number", + "description" : "Finance tax amount not paid", + "readOnly" : true + }, + "mandatoryDeductionNotPaid" : { + "type" : "number", + "description" : "Mandatory deduction amount not paid", + "readOnly" : true + }, + "taxPeriodName" : { + "type" : "string", + "description" : "Name of the period the tax is accrued", + "readOnly" : true + } + } + }, + "PairAmeldingStatusInternalAmeldingStatusInternal" : { + "type" : "object", + "properties" : { + "first" : { + "$ref" : "#/components/schemas/AmeldingStatusInternal" + }, + "second" : { + "$ref" : "#/components/schemas/AmeldingStatusInternal" + } + } + }, + "ResponseWrapperPairAmeldingStatusInternalAmeldingStatusInternal" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PairAmeldingStatusInternalAmeldingStatusInternal" + } + } + }, + "ResponseWrapperSalaryReconciliationOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryReconciliationOverview" + } + } + }, + "SalaryReconciliationOverview" : { + "type" : "object", + "properties" : { + "period" : { + "$ref" : "#/components/schemas/AOReconciliationPeriod" + }, + "groups" : { + "type" : "array", + "description" : "The relevant VAT groups", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryReconciliationOverviewGroup" + } + } + } + }, + "SalaryReconciliationOverviewGroup" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "description" : "The human readable name of the group", + "readOnly" : true + }, + "lines" : { + "type" : "array", + "description" : "The lines of data in the group", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryReconciliationOverviewGroupLine" + } + } + }, + "description" : "The relevant VAT groups", + "readOnly" : true + }, + "SalaryReconciliationOverviewGroupLine" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "description" : "The ID of the relevant account", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "The human-readable name of the account", + "readOnly" : true + }, + "ledgerData" : { + "type" : "number", + "description" : "The value calculated from the current ledger", + "readOnly" : true + }, + "reportedData" : { + "type" : "number", + "description" : "The value that was reported to the tax authority", + "readOnly" : true + }, + "taxAuthorityData" : { + "type" : "number", + "description" : "The value that the tax authority has on record for this account", + "readOnly" : true + }, + "differences" : { + "type" : "number", + "description" : "The difference between the current ledger data and the reported VAT data", + "readOnly" : true + } + }, + "description" : "The lines of data in the group", + "readOnly" : true + }, + "RateAmount" : { + "type" : "object", + "properties" : { + "rate" : { + "type" : "number", + "description" : "The rate for the vacation pay", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "description" : "The amount for the vacation pay", + "readOnly" : true + } + }, + "description" : "Represents a rate and its corresponding amount", + "readOnly" : true + }, + "ResponseWrapperSalaryReconciliationVacationPay" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryReconciliationVacationPay" + } + } + }, + "SalaryReconciliationVacationPay" : { + "type" : "object", + "properties" : { + "vacationPayBasis" : { + "type" : "number", + "description" : "The basis amount that the accrued vacation pay is derived from", + "readOnly" : true + }, + "vacationPayRateAmounts" : { + "type" : "array", + "description" : "The list of vacation pay rates and their corresponding amounts", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RateAmount" + } + }, + "extraVacationPay" : { + "type" : "number", + "description" : "The total amount of extra vacation pay given to those over 60 years old", + "readOnly" : true + }, + "earlySettledVacationPay" : { + "type" : "number", + "description" : "The total amount of vacation pay that was paid in the same fiscal year as it was earned", + "readOnly" : true + }, + "prevYearOwedVacationPay" : { + "type" : "number", + "description" : "The total amount of owed vacation pay from the previous year", + "readOnly" : true + }, + "prevYearSettledVacationPay" : { + "type" : "number", + "description" : "The total amount of owed vacation pay disbursed in the current year", + "readOnly" : true + } + } + }, + "ResponseWrapperDate" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "format" : "date-time" + } + } + }, + "ResponseWrapperSalaryContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryContext" + } + } + }, + "SalaryContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "SalaryContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "ResponseWrapperTaxDeductionOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxDeductionOverview" + } + } + }, + "TaxDeductionOverview" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "startDate" : { + "type" : "string", + "description" : "Start date of the term of the payments", + "format" : "date" + }, + "endDate" : { + "type" : "string", + "description" : "End date of the term of the payments", + "format" : "date" + }, + "registeredPayments" : { + "type" : "array", + "description" : "The registered tax deduction payments for each term", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxDeductionRegisteredPayment" + } + }, + "aggregatedLedgerSum" : { + "type" : "number", + "description" : "Aggregated general ledger sum for the term", + "readOnly" : true + }, + "aggregatedAmeldingSum" : { + "type" : "number", + "description" : "Aggregated A-melding sum for the term", + "readOnly" : true + }, + "aggregatedTaxAuthoritiesSum" : { + "type" : "number", + "description" : "Aggregated withholding tax sum from the tax authorities for the term", + "readOnly" : true + }, + "aggregatedDiscrepancy" : { + "type" : "number", + "description" : "Aggregated discrepancy between ledger sum and tax authorities sum for the term", + "readOnly" : true + } + } + }, + "TaxDeductionRegisteredPayment" : { + "type" : "object", + "properties" : { + "ledgerSum" : { + "type" : "number", + "description" : "General ledger sum for the registered payment", + "readOnly" : true + }, + "ameldingSum" : { + "type" : "number", + "description" : "A-melding sum for the registered payment", + "readOnly" : true + }, + "discrepancy" : { + "type" : "number", + "description" : "Discrepancy between ledger sum and A-melding sum for the registered payment", + "readOnly" : true + }, + "epochDays" : { + "type" : "number", + "description" : "the date containing the month of the registered payment in epoch days", + "readOnly" : true + }, + "ledgerUri" : { + "type" : "string", + "description" : "The URI to the general ledger for the tax deduction account and period", + "readOnly" : true + }, + "taxAuthoritiesSum" : { + "type" : "number", + "description" : "Withholding tax sum from the tax authorities", + "readOnly" : true, + "example" : 15000.0 + } + }, + "description" : "The registered tax deduction payments for each term", + "readOnly" : true + }, + "ResponseWrapperSalaryTaxDeductionReconciliation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryTaxDeductionReconciliation" + } + } + }, + "SalaryTaxDeductionReconciliation" : { + "type" : "object", + "properties" : { + "taxDeductionBalance" : { + "type" : "number", + "description" : "The tax deduction balance", + "readOnly" : true + }, + "taxDeductionOwedAmount" : { + "type" : "number", + "description" : "The tax deduction owed amount", + "readOnly" : true + }, + "taxDeductionAccountNumber" : { + "type" : "integer", + "description" : "The tax deduction account number", + "format" : "int32", + "readOnly" : true + }, + "taxDeductionAccountName" : { + "type" : "string", + "description" : "The tax deduction account name", + "readOnly" : true + } + } + }, + "ResponseWrapperTaxDeductionContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxDeductionContext" + } + } + }, + "TaxDeductionContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + } + } + }, + "TaxDeductionContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + } + } + }, + "ResponseWrapperVatReconciliationOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatReconciliationOverview" + } + } + }, + "VatReconciliationOverview" : { + "type" : "object", + "properties" : { + "period" : { + "$ref" : "#/components/schemas/AOReconciliationPeriod" + }, + "groups" : { + "type" : "array", + "description" : "The relevant VAT groups", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatReconciliationOverviewGroup" + } + } + } + }, + "VatReconciliationOverviewGroup" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "description" : "The human readable name of the VAT group", + "readOnly" : true + }, + "lines" : { + "type" : "array", + "description" : "The VAT entries in the group", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatReconciliationOverviewGroupLine" + } + } + }, + "description" : "The relevant VAT groups", + "readOnly" : true + }, + "VatReconciliationOverviewGroupLine" : { + "type" : "object", + "properties" : { + "vatTypeId" : { + "type" : "integer", + "description" : "The ID of the relevant VAT type", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "The human-readable name of the VAT type", + "readOnly" : true + }, + "ledgerData" : { + "type" : "number", + "description" : "The value calculated from the current ledger", + "readOnly" : true + }, + "basis" : { + "type" : "number", + "description" : "The basis for the VAT calculation", + "readOnly" : true + }, + "ledgerDataAtPreviousReconciliation" : { + "type" : "number", + "description" : "The value calculated from the ledger at the time of the previous reconciliation", + "readOnly" : true + }, + "reportedData" : { + "type" : "number", + "description" : "The value that was sent in the VAT report", + "readOnly" : true + }, + "taxAdminData" : { + "type" : "number", + "description" : "The value that was recorded at the tax authority at the last time of synchronization", + "readOnly" : true + }, + "difference" : { + "type" : "number", + "description" : "The difference between the current ledger data and the reported VAT data", + "readOnly" : true + } + }, + "description" : "The VAT entries in the group", + "readOnly" : true + }, + "ResponseWrapperVatReportTypes" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatReportTypes" + } + } + }, + "VatReportTypes" : { + "type" : "object", + "properties" : { + "hasGeneralIndustry" : { + "type" : "boolean", + "readOnly" : true + }, + "hasPrimaryIndustry" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperVatStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatStatus" + } + } + }, + "VatDeliveryStatus" : { + "type" : "object", + "properties" : { + "status" : { + "type" : "string", + "description" : "The delivery status of the VAT", + "readOnly" : true, + "enum" : [ "NOT_STARTED", "NOT_SENT", "SENDING", "WAITING_FOR_REPLY", "RECEIPT_RECEIVED", "MANUAL_DELIVERY", "DELIVERY_FORBIDDEN", "FAILED" ] + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "time" : { + "type" : "string", + "description" : "Date and time the delivery status was updated", + "readOnly" : true + } + }, + "description" : "The delivery status", + "readOnly" : true + }, + "VatPaymentStatus" : { + "type" : "object", + "properties" : { + "status" : { + "type" : "string", + "description" : "The payment status of the VAT", + "readOnly" : true, + "enum" : [ "NOT_STARTED", "NOT_PAID", "NO_TAX_TO_PAY", "AMOUNT_CREDITED", "PAYMENT_REGISTERED" ] + }, + "totalAmount" : { + "type" : "number", + "description" : "Total amount in NOK", + "readOnly" : true + }, + "remainingAmount" : { + "type" : "number", + "description" : "Remaining amount in NOK", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "time" : { + "type" : "string", + "description" : "Date and time the delivery status was updated", + "readOnly" : true + }, + "paymentDate" : { + "type" : "string", + "description" : "Date of the actual payment, null if not yet paid", + "readOnly" : true + } + }, + "description" : "The payment status", + "readOnly" : true + }, + "VatStatus" : { + "type" : "object", + "properties" : { + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "voucherNumber" : { + "type" : "integer", + "description" : "Vat delivery voucher number", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "minimum" : 2022, + "type" : "integer", + "description" : "Year of VAT", + "format" : "int32", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "VAT term", + "format" : "int32", + "readOnly" : true + }, + "vatReturns2022Id" : { + "type" : "integer", + "description" : "The id for the vat return", + "format" : "int64", + "readOnly" : true + }, + "totalAmountVatBasis" : { + "type" : "number", + "description" : "Total amount of VAT report baseline", + "readOnly" : true + }, + "altinnPaymentAmount" : { + "type" : "number", + "description" : "Amount owed according to the tax authority, as received via Altinn payment info after VAT delivery. Null when no Altinn payment info is available (e.g. undelivered terms).", + "readOnly" : true + }, + "deliveryStatus" : { + "$ref" : "#/components/schemas/VatDeliveryStatus" + }, + "paymentStatus" : { + "$ref" : "#/components/schemas/VatPaymentStatus" + } + }, + "readOnly" : true + }, + "ListResponseVatStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatStatus" + } + } + } + }, + "ResponseWrapperVatContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatContext" + } + } + }, + "VatContext" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "The ID of the reconciliation context", + "format" : "int64", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term for the reconciliation context", + "format" : "int32", + "readOnly" : true + }, + "vatReportType" : { + "type" : "string", + "description" : "The type of VAT report for the VAT reconciliation context", + "readOnly" : true, + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + } + } + }, + "VatContextRequest" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "The ID of the customer for whom the reconciliation context is requested", + "format" : "int64", + "writeOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year for the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The term of the reconciliation context", + "format" : "int32", + "writeOnly" : true + }, + "vatReportType" : { + "type" : "string", + "description" : "The type of VAT report for the VAT reconciliation context", + "writeOnly" : true, + "example" : "GENERAL_INDUSTRY" + } + } + }, + "ResponseWrapperTaxAdminSyncResult" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "NO_DATA", "SYNCHRONIZED" ] + } + } + }, + "AprilaCashCreditApplicationResponseDTO" : { + "type" : "object", + "properties" : { + "signUpUrl" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "PREQUALIFIED", "READY_FOR_SIGNUP", "SUBMITTED", "SIGNED", "COMPLETED", "REJECTED", "CANCELLED", "ERROR", "PENDING_NEW_SIGNATURE" ] + }, + "statusReason" : { + "type" : "string", + "readOnly" : true + }, + "activeProduct" : { + "type" : "boolean", + "readOnly" : true + }, + "submittedApplication" : { + "type" : "boolean", + "readOnly" : true + }, + "maxCreditLimitAmount" : { + "type" : "number", + "readOnly" : true + }, + "maxCreditLimitCurrency" : { + "type" : "string", + "readOnly" : true + }, + "annualInterestRate" : { + "type" : "number", + "readOnly" : true + }, + "monthlyInterestRate" : { + "type" : "number", + "readOnly" : true + }, + "monthlyFeeAmount" : { + "type" : "number", + "readOnly" : true + }, + "monthlyFeeCurrency" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperAprilaCashCreditApplicationResponseDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AprilaCashCreditApplicationResponseDTO" + } + } + }, + "ResponseWrapperNumber" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "number", + "description" : "Numeric value" + } + }, + "description" : "Response wrapper for a number value." + }, + "AssetCanDelete" : { + "type" : "object", + "properties" : { + "canDelete" : { + "type" : "boolean", + "readOnly" : true + }, + "validationMessage" : { + "type" : "string", + "readOnly" : true + }, + "vouchers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AssetCanDeleteVoucherReference" + } + } + } + }, + "AssetCanDeleteVoucherReference" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperAssetCanDelete" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AssetCanDelete" + } + } + }, + "ResponseWrapperVoucher" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Voucher" + } + } + }, + "AssetDepreciationSpecification" : { + "type" : "object", + "properties" : { + "assetId" : { + "type" : "integer", + "description" : "Asset id", + "format" : "int64" + }, + "amount" : { + "type" : "number", + "description" : "For STRAIGHT_LINE: the total amount to write off. FOR TAX_RELATED: the base amount to calculate the write off amounts from. Not used for CUSTOM" + }, + "balanceAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "depreciationAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "noOfMonths" : { + "minimum" : 0, + "type" : "integer", + "description" : "The depreciation period in months.", + "format" : "int32" + }, + "depreciationMethod" : { + "type" : "string", + "description" : "The depreciation method.", + "enum" : [ "MANUAL", "TAX_RELATED", "STRAIGHT_LINE", "CUSTOMIZED_AMOUNT", "NO_DEPRECIATION" ] + }, + "startDate" : { + "type" : "string", + "description" : "The start date for the depreciation. This will also be the voucher date" + }, + "customMonthlyWriteOffAmount" : { + "type" : "number", + "description" : "The monthly amount to write off. Only used for CUSTOM" + }, + "taxRelatedDepreciationPercentage" : { + "type" : "number", + "description" : "How many percent to depreciate for each year. Only used for TAX_RELATED" + }, + "diff" : { + "type" : "number", + "description" : "Difference" + }, + "depreciationRate" : { + "type" : "number", + "description" : "How many percent to depreciate for each year. Only used for TAX_RELATED" + } + } + }, + "AssetGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "assetCount" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "acquisitionCostSum" : { + "type" : "number", + "readOnly" : true + }, + "balanceInSum" : { + "type" : "number", + "readOnly" : true + }, + "balanceOutSum" : { + "type" : "number", + "readOnly" : true + }, + "balanceChangeSum" : { + "type" : "number", + "readOnly" : true + }, + "assets" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Asset" + } + }, + "startingBalance" : { + "type" : "number", + "readOnly" : true + }, + "balanceInAccount" : { + "type" : "number", + "readOnly" : true + }, + "sumStartingBalance" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "AssetOverview" : { + "type" : "object", + "properties" : { + "assetGroups" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AssetGroup" + } + }, + "startDate" : { + "type" : "string", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "readOnly" : true + }, + "establishedDate" : { + "type" : "string", + "readOnly" : true + }, + "hasStartingBalanceVoucher" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperAssetOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AssetOverview" + } + } + }, + "ListResponseVoucher" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Voucher" + } + } + } + }, + "ResponseWrapperAsset" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Asset" + } + } + }, + "ResponseWrapperMapIntegerString" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "string" + } + } + } + }, + "AssetDeleteInfo" : { + "type" : "object", + "properties" : { + "assetCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "importDate" : { + "type" : "string", + "readOnly" : true + }, + "canDelete" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperAssetDeleteInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AssetDeleteInfo" + } + } + }, + "ListResponsePosting" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + } + } + }, + "ListResponseAsset" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Asset" + } + } + } + }, + "AssetAccountRow" : { + "type" : "object", + "properties" : { + "accountNumber" : { + "type" : "string", + "description" : "Account number" + }, + "accountName" : { + "type" : "string", + "description" : "Account name" + }, + "assets" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AssetImport" + } + }, + "balanceDifference" : { + "type" : "number", + "description" : "Balance difference. This is the sum amount on the account that is not connected to an asset after the import." + } + }, + "readOnly" : true + }, + "AssetImport" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "lifetime" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "dateOfAcquisition" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "acquisitionCost" : { + "type" : "number", + "description" : "Acquisition cost." + }, + "incomingBalance" : { + "type" : "number", + "description" : "Incoming balance for the asset." + }, + "externalAccumulatedDepreciation" : { + "type" : "number", + "description" : "Accumulated depreciation for the asset." + } + }, + "description" : "Assets" + }, + "ListResponseAssetAccountRow" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AssetAccountRow" + } + } + } + }, + "ResponseWrapperAttestation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Attestation" + } + } + }, + "NewApproverBody" : { + "type" : "object", + "properties" : { + "attestationId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "note" : { + "type" : "string" + }, + "position" : { + "type" : "string", + "enum" : [ "BEFORE", "AFTER" ] + }, + "attestationObjectId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "AddApproverPermission" : { + "type" : "object", + "properties" : { + "isAttestationFirstLevel" : { + "type" : "boolean" + }, + "canAddBeforeOrAfter" : { + "type" : "boolean" + }, + "canAddApprover" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperAddApproverPermission" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AddApproverPermission" + } + } + }, + "AttestationAuth" : { + "type" : "object", + "properties" : { + "hasAttestationPro" : { + "type" : "boolean", + "readOnly" : true + }, + "authorizedTypes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + } + } + } + }, + "ResponseWrapperAttestationAuth" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationAuth" + } + } + }, + "AttestationObjectDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "attestationSteps" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AttestationStep" + } + }, + "attestation" : { + "$ref" : "#/components/schemas/Attestation" + }, + "amount" : { + "type" : "number", + "description" : "[PILOT] Amount of the attestation", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "[PILOT] Display name as a string", + "readOnly" : true + }, + "urlDetails" : { + "type" : "string", + "description" : "[PILOT] Url to access the view in web", + "readOnly" : true + }, + "overviewUrl" : { + "type" : "string", + "description" : "[PILOT] Url to access the overview in web", + "readOnly" : true + } + } + }, + "ResponseWrapperAttestationObjectDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationObjectDTO" + } + } + }, + "ListResponseAttestationStep" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AttestationStep" + } + } + } + }, + "AttestationObjectRequestDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "distinctProjectIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + }, + "distinctDepartmentIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + }, + "distinctEmployeeIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + }, + "vendorId" : { + "type" : "integer", + "format" : "int64" + }, + "amount" : { + "type" : "number" + }, + "attestationType" : { + "type" : "string", + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + } + } + }, + "AttestationCompanyModules" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "allowPostingBeforeVoucherApproved" : { + "type" : "boolean" + }, + "companyAttestorCanOverride" : { + "type" : "boolean", + "description" : "If true, a company attestant can approve a supplier invoice at all levels at once, overriding the attestation flow." + }, + "moduleDepartment" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleProject" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "AttestationPage" : { + "type" : "object", + "properties" : { + "attestations" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Attestation" + } + }, + "expenseSettings" : { + "$ref" : "#/components/schemas/ExpenseSettings" + }, + "standIns" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AttestationStandIn" + } + }, + "settings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AttestationSettings" + } + }, + "companyModules" : { + "$ref" : "#/components/schemas/AttestationCompanyModules" + } + } + }, + "AttestationSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + }, + "isInactive" : { + "type" : "boolean" + }, + "sendReminders" : { + "type" : "boolean" + }, + "remindAfterXDays" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "remindXDaysBeforeDue" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + } + }, + "AttestationStandIn" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "enum" : [ "SUPPLIER_INVOICE", "TRAVELS_AND_EXPENSES" ] + }, + "absentEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "standInEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "standInFromDate" : { + "type" : "string" + }, + "standInToDate" : { + "type" : "string" + }, + "isDeleted" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ExpenseSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "canApproveOwnExpenses" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperAttestationCompanyModules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationCompanyModules" + } + } + }, + "ResponseWrapperAttestationApprover" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationApprover" + } + } + }, + "ResponseWrapperAttestationLevel" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationLevel" + } + } + }, + "ResponseWrapperAttestationSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationSettings" + } + } + }, + "ResponseWrapperAttestationStandIn" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AttestationStandIn" + } + } + }, + "ListResponseAttestationStandIn" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AttestationStandIn" + } + } + } + }, + "AuthConfigDTO" : { + "type" : "object", + "properties" : { + "loginUrl" : { + "type" : "string" + }, + "logoutUrl" : { + "type" : "string" + } + } + }, + "ResponseWrapperAuthConfigDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AuthConfigDTO" + } + } + }, + "BalanceSheetAccount" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceChange" : { + "type" : "number", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "description" : "The start date for this period - inclusive.", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "The end date for this period - exclusive.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseBalanceSheetAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceSheetAccount" + } + } + } + }, + "ResponseWrapperBank" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Bank" + } + } + }, + "ListResponseBank" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Bank" + } + } + } + }, + "BankGlobals" : { + "type" : "object", + "properties" : { + "remitPaymentType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "OFF", "NETS", "AUTOPAY", "BOTH", "ZTL" ] + }, + "loginEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "delegatorEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isAccountant" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthDirectRemitZtl" : { + "type" : "boolean", + "readOnly" : true + }, + "tripletexCustomerCategoryId2" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isAuthAccountingSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "orgNumber" : { + "type" : "string", + "readOnly" : true + }, + "isActiveAccountantProxy" : { + "type" : "boolean", + "readOnly" : true + }, + "isMySubscriptionAuth" : { + "type" : "boolean", + "readOnly" : true + }, + "accountantCompanyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isAuthBankDashboard" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthCashCredit" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthBankReconciliation" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthAutoPayZtlSwitch" : { + "type" : "boolean", + "readOnly" : true + }, + "isReadonlyLogin" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVoucherScanning" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthAutoPaySettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isAutoPostingPilotEnabled" : { + "type" : "boolean", + "readOnly" : true + }, + "isAutoPay4EyesPilotEnabled" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthDirectRemitAdmin" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthDirectRemitLight" : { + "type" : "boolean", + "readOnly" : true + }, + "authorizationLevel" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "moduleAgro" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleMamut" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthZtlSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthZtlOnboarding" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthAutopayOnboarding" : { + "type" : "boolean", + "readOnly" : true + }, + "isVismaConnectLogin" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthPaymentOverview" : { + "type" : "boolean", + "readOnly" : true + }, + "hasAttestation" : { + "type" : "boolean", + "readOnly" : true + }, + "hasEmployeeAccounting" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperBankGlobals" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankGlobals" + } + } + }, + "BankDashboardAdvice" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "adviceType" : { + "type" : "string", + "description" : "The advice type.", + "enum" : [ "SHORTEN_DUE_DATE_ON_OUTGOING_INVOICES_TO_CUSTOMERS", "INCREASE_DUE_DATE_ON_INCOMING_INVOICES_FROM_VENDORS", "APPLY_FOR_CASH_CREDIT_WITH_TRIPLETEX_APRILA" ] + }, + "isActive" : { + "type" : "boolean", + "description" : "The advice is active." + }, + "dateUpdated" : { + "type" : "string", + "description" : "The date the advice was updated." + }, + "isCancelled" : { + "type" : "boolean", + "description" : "The advice has been cancelled." + }, + "dateCancelled" : { + "type" : "string", + "description" : "The date the advice has been cancelled by the user." + } + }, + "readOnly" : true + }, + "ResponseWrapperBankDashboardAdvice" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankDashboardAdvice" + } + } + }, + "ListResponseBankDashboardAdvice" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankDashboardAdvice" + } + } + } + }, + "BankAgreementDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "iban" : { + "type" : "string", + "description" : "The IBAN property." + }, + "bban" : { + "type" : "string", + "description" : "The BBAN property." + }, + "description" : { + "type" : "string", + "description" : "The description property.", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "display name needed for LoadableDropdown component", + "readOnly" : true + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "uploaderEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "dateCreated" : { + "type" : "string" + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "isActive" : { + "type" : "boolean", + "readOnly" : true + }, + "balance" : { + "$ref" : "#/components/schemas/BankStatementBalance" + }, + "active" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "BankStatementBalance" : { + "type" : "object", + "properties" : { + "bookedAmount" : { + "type" : "number", + "description" : "Booked balance on the given date.", + "readOnly" : true + }, + "bookedDate" : { + "type" : "string", + "readOnly" : true + }, + "availableAmount" : { + "type" : "number", + "description" : "Available balance.", + "readOnly" : true + }, + "availableDate" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperBankAgreementDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankAgreementDTO" + } + } + }, + "ResponseWrapperAutoPayStatus" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "OK", "NOT_ACTIVE", "SERVICE_DOWN" ] + } + } + }, + "ElectronicSupportDTO" : { + "type" : "object", + "properties" : { + "bankId" : { + "type" : "integer", + "description" : "Bank ID", + "format" : "int32", + "readOnly" : true + }, + "bankName" : { + "type" : "string", + "description" : "Name of the bank", + "readOnly" : true + }, + "type" : { + "type" : "string", + "description" : "Type of electronic agreement creation is supported by this bank.COMPLETE: Supports creating the agreement towards AutoPay and Tripletex though the bank.PARTIAL: Supports creating the agreement towards AutoPay only.", + "readOnly" : true, + "enum" : [ "PARTIAL", "COMPLETE", "PSD2" ] + }, + "bankUrl" : { + "type" : "string", + "description" : "Bank url for ordering electronic agreements for ElectronicSupportDTO of type PARTIAL.", + "readOnly" : true + } + } + }, + "ResponseWrapperElectronicSupportDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ElectronicSupportDTO" + } + } + }, + "ResponseWrapperListElectronicSupportDTO" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ElectronicSupportDTO" + } + } + } + }, + "ResponseWrapperListInteger" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + } + } + }, + "ListResponseBankAgreementDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankAgreementDTO" + } + } + } + }, + "AutopayBankAgreement" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "iban" : { + "type" : "string", + "description" : "The IBAN property." + }, + "bban" : { + "type" : "string", + "description" : "The BBAN property." + }, + "description" : { + "type" : "string", + "description" : "The description property.", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "display name needed for LoadableDropdown component", + "readOnly" : true + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "uploaderEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "dateCreated" : { + "type" : "string" + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "isActive" : { + "type" : "boolean", + "readOnly" : true + }, + "balance" : { + "$ref" : "#/components/schemas/BankStatementBalance" + }, + "accountInBankId" : { + "type" : "string" + }, + "division" : { + "type" : "string" + }, + "ccmAgreementId" : { + "type" : "string" + }, + "organisationNumber" : { + "type" : "string" + }, + "approveInOnlineBanking" : { + "type" : "boolean" + }, + "numberOfApprovers" : { + "maximum" : 4, + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "isUsed" : { + "type" : "boolean" + }, + "active" : { + "type" : "boolean" + } + } + }, + "ListResponseAutopayBankAgreement" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AutopayBankAgreement" + } + } + } + }, + "BankAgreementCreation" : { + "type" : "object", + "properties" : { + "bankId" : { + "type" : "integer", + "description" : "Bank ID", + "format" : "int32" + }, + "accountInBankId" : { + "type" : "string", + "description" : "Customer number in bank" + }, + "ccmAgreementId" : { + "type" : "string", + "description" : "Customer Id from Bank" + }, + "division" : { + "type" : "string", + "description" : "Division (DNB only)" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "electronicCreation" : { + "type" : "boolean", + "description" : "Electronic agreement creation initiated." + }, + "approveInOnlineBanking" : { + "type" : "boolean", + "description" : "Accounting approve payments" + }, + "bankAccounts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Account" + } + } + } + }, + "BankAgreementUpdate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id of agreement to update.", + "format" : "int32" + }, + "description" : { + "type" : "string", + "description" : "The description property." + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "accountInBankId" : { + "type" : "string", + "description" : "Customer number in bank" + }, + "organisationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "ccmAgreementId" : { + "type" : "string", + "description" : "CCM agreement ID" + }, + "approveInOnlineBanking" : { + "type" : "boolean", + "description" : "Accounting approve payments" + }, + "numberOfApprovers" : { + "maximum" : 4, + "minimum" : 1, + "type" : "integer", + "description" : "Required number of approvers for payments on this bank agreement. AutoPay4Eyes pilot only; allowed range 1–4.", + "format" : "int32" + } + } + }, + "ResponseWrapperStoredPublicKey" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/StoredPublicKey" + } + } + }, + "StoredPublicKey" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "Public key id used for Platform Agnostic", + "readOnly" : true + }, + "publicKey" : { + "type" : "string", + "description" : "Public key value used for Platform Agnostic", + "readOnly" : true + }, + "algorithm" : { + "type" : "string", + "description" : "Signature algorithm used for Platform Agnostic", + "readOnly" : true, + "enum" : [ "RsaSha256", "RsaPssSha512", "EcdsaP256Sha256", "EcdsaP384Sha384", "Ed25519" ] + }, + "expiresOn" : { + "type" : "string", + "description" : "Date when the key will expire", + "format" : "date-time", + "readOnly" : true + }, + "privateKey" : { + "type" : "string", + "description" : "Private key value used for Platform Agnostic", + "readOnly" : true + } + } + }, + "AutoPayCertificate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "description" : "Certificate id used for Platform Agnostic", + "readOnly" : true + }, + "certificateChain" : { + "type" : "array", + "description" : "Certificate value used for Platform Agnostic", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "Certificate value used for Platform Agnostic", + "readOnly" : true + } + }, + "algorithm" : { + "type" : "string", + "description" : "Signature algorithm used for Platform Agnostic", + "readOnly" : true, + "enum" : [ "RsaSha256", "RsaPssSha512", "EcdsaP256Sha256", "EcdsaP384Sha384", "Ed25519" ] + } + } + }, + "ResponseWrapperAutoPayCertificate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AutoPayCertificate" + } + } + }, + "PlatformAgnosticCreateKeyDTO" : { + "type" : "object", + "properties" : { + "password" : { + "type" : "string", + "writeOnly" : true + } + } + }, + "BankIntegrationSwitch" : { + "type" : "object", + "properties" : { + "isDeactivateModuleDisabled" : { + "type" : "boolean", + "readOnly" : true + }, + "isOngoing" : { + "type" : "boolean", + "readOnly" : true + }, + "hasAutoPayTransactions" : { + "type" : "boolean", + "readOnly" : true + }, + "showPaidAutoPayTransactions" : { + "type" : "boolean", + "readOnly" : true + }, + "showFxUpsaleBanner" : { + "type" : "boolean", + "readOnly" : true + }, + "page" : { + "type" : "string" + } + } + }, + "ResponseWrapperBankIntegrationSwitch" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankIntegrationSwitch" + } + } + }, + "ListResponseZtlAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlAccount" + } + } + } + }, + "ZtlAccount" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "bban" : { + "type" : "string", + "readOnly" : true + }, + "iban" : { + "type" : "string", + "readOnly" : true + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "availableBalanceCurrency" : { + "type" : "number", + "readOnly" : true + }, + "bookedBalanceCurrency" : { + "type" : "number", + "readOnly" : true + }, + "lastUpdated" : { + "type" : "string", + "description" : "Last time the account information was updated, mainly balance.", + "readOnly" : true + }, + "deletable" : { + "type" : "boolean", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + } + }, + "description" : "Link to accounts this consent belongs to" + }, + "BankMaintenancePeriod" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "integration" : { + "type" : "string", + "description" : "The integration for witch maintenance period if for.", + "enum" : [ "AUTOPAY", "ZTL" ] + }, + "startDateTime" : { + "type" : "string", + "description" : "The start date time of maintenance period." + }, + "endDateTime" : { + "type" : "string", + "description" : "The end date time of maintenance period." + }, + "platform" : { + "type" : "string", + "description" : "Bank platform", + "enum" : [ "UNKNOWN", "TIETO_EVRY", "SDC", "INDEPENDENT" ] + } + }, + "readOnly" : true + }, + "ListResponseBankMaintenancePeriod" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankMaintenancePeriod" + } + } + } + }, + "BankMergerPeriod" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "fromBanks" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Bank" + } + }, + "toBank" : { + "$ref" : "#/components/schemas/Bank" + }, + "description" : { + "type" : "string", + "description" : "The description of the bank after merger." + }, + "startDate" : { + "type" : "string", + "description" : "The start date time of maintenance period." + }, + "endDate" : { + "type" : "string", + "description" : "The end date time of maintenance period." + } + }, + "readOnly" : true + }, + "ListResponseBankMergerPeriod" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankMergerPeriod" + } + } + } + }, + "BankOnboardingDTO" : { + "type" : "object", + "properties" : { + "steps" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankOnboardingStep" + } + }, + "hasFullAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "companyOrgnr" : { + "type" : "string", + "readOnly" : true + }, + "autoPayTwoFAEnabled" : { + "type" : "boolean", + "readOnly" : true + }, + "lockedCurrenciesMap" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean", + "readOnly" : true + }, + "readOnly" : true + }, + "userIsAutoPayProvisioned" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "BankOnboardingStep" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "state" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "INCOMPLETE", "COMPLETED", "PROCESSING" ] + }, + "accessible" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperBankOnboardingDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankOnboardingDTO" + } + } + }, + "BankOnboardingAccessRequestDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "requesteeEmployeeId" : { + "type" : "integer", + "format" : "int32" + }, + "requesteeName" : { + "type" : "string" + }, + "roleId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "AutoPayRolesResponse" : { + "type" : "object", + "properties" : { + "roles" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + }, + "description" : "AutoPay roles response containing the list of roles for a user" + }, + "ResponseWrapperAutoPayRolesResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AutoPayRolesResponse" + } + } + }, + "ResponseWrapperListString" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + } + }, + "AutoPayCompany" : { + "type" : "object", + "properties" : { + "tenantId" : { + "type" : "string", + "description" : "The tenantId representing this company.", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "The name of the company.", + "readOnly" : true + }, + "ownerEmailAddress" : { + "type" : "string", + "description" : "The owner's email address.", + "readOnly" : true + }, + "twoFactorAuthenticationTypes" : { + "uniqueItems" : true, + "type" : "array", + "description" : "The 2FA options for the company.", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "The 2FA options for the company.", + "readOnly" : true, + "enum" : [ "Totp", "Passwordless", "BankIdNorway", "BankIdNorwayBiometrics", "BankIdSweden", "BankIdFinland" ] + } + }, + "organizationNumber" : { + "type" : "string", + "description" : "The company's organization number.", + "readOnly" : true + }, + "countryCode" : { + "type" : "string", + "description" : "The company's country code.", + "readOnly" : true, + "enum" : [ "NO", "SE", "DK", "FI", "NL" ] + }, + "changedOn" : { + "type" : "string", + "description" : "The last time the company data was changed.", + "readOnly" : true + }, + "redirectUrl" : { + "type" : "string", + "description" : "Redirect URL.", + "readOnly" : true + } + } + }, + "ResponseWrapperAutoPayCompany" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AutoPayCompany" + } + } + }, + "AccountingPeriod" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "start" : { + "type" : "string", + "readOnly" : true + }, + "end" : { + "type" : "string", + "readOnly" : true + }, + "isClosed" : { + "type" : "boolean", + "readOnly" : true + }, + "checkLedgerLogEmployeeName" : { + "type" : "string", + "readOnly" : true + }, + "checkLedgerLogEmployeePictureId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "checkLedgerLogTime" : { + "type" : "string", + "readOnly" : true + }, + "checkWageLogEmployeeName" : { + "type" : "string", + "readOnly" : true + }, + "checkWageLogEmployeePictureId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "checkWageLogTime" : { + "type" : "string", + "readOnly" : true + } + } + }, + "BankReconciliation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "accountingPeriod" : { + "$ref" : "#/components/schemas/AccountingPeriod" + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "transactions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankTransaction" + } + }, + "isClosed" : { + "type" : "boolean" + }, + "type" : { + "type" : "string", + "description" : "Type of Bank Reconciliation.", + "enum" : [ "MANUAL", "AUTOMATIC" ] + }, + "bankAccountClosingBalanceCurrency" : { + "type" : "number" + }, + "closedDate" : { + "type" : "string", + "readOnly" : true + }, + "closedByContact" : { + "$ref" : "#/components/schemas/Contact" + }, + "closedByEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "approvable" : { + "type" : "boolean", + "readOnly" : true + }, + "autoPayReconciliation" : { + "type" : "boolean", + "readOnly" : true + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "BankReconciliationAdjustment" : { + "type" : "object", + "properties" : { + "paymentType" : { + "$ref" : "#/components/schemas/BankReconciliationPaymentType" + }, + "bankTransactions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/BankTransaction" + } + }, + "postingDate" : { + "type" : "string" + }, + "amount" : { + "minimum" : 0, + "type" : "number" + }, + "postings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "bankReconciliationMatch" : { + "$ref" : "#/components/schemas/BankReconciliationMatch" + }, + "date" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "interimAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "voucherNumber" : { + "type" : "string" + }, + "voucherViewLink" : { + "type" : "string" + }, + "voucherDetailsLink" : { + "type" : "string" + } + } + }, + "BankReconciliationMatch" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "bankReconciliation" : { + "$ref" : "#/components/schemas/BankReconciliation" + }, + "type" : { + "type" : "string", + "description" : "Type of match, MANUAL and APPROVED_SUGGESTION are considered part of reconciliation.", + "enum" : [ "MANUAL", "PENDING_SUGGESTION", "REJECTED_SUGGESTION", "APPROVED_SUGGESTION", "ADJUSTMENT", "AUTO_MATCHED", "REJECTED_AUTO_MATCH", "AUTOPOSTING_APPROVED", "AUTOPOSTING_REJECTED" ] + }, + "transactions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/BankTransaction" + } + }, + "postings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Posting" + } + } + }, + "readOnly" : true + }, + "BankReconciliationPaymentType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description", + "readOnly" : true + }, + "debitAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "creditAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "isInactive" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "description" : "Sequence", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseBankReconciliationAdjustment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankReconciliationAdjustment" + } + } + } + }, + "ResponseWrapperBankReconciliation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankReconciliation" + } + } + }, + "ListResponseBankReconciliation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankReconciliation" + } + } + } + }, + "ExternalPsd2MatchListing" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Tripletex internal match id. Use with DELETE /match/{id} to reverse.", + "format" : "int64", + "readOnly" : true + }, + "bankReconciliationId" : { + "type" : "integer", + "description" : "Id of the BankReconciliation the match belongs to.", + "format" : "int64", + "readOnly" : true + }, + "type" : { + "type" : "string", + "description" : "Match type. Only approved types are returned (MANUAL, APPROVED_SUGGESTION, ADJUSTMENT, AUTO_MATCHED, AUTOPOSTING_APPROVED).", + "readOnly" : true, + "enum" : [ "MANUAL", "PENDING_SUGGESTION", "REJECTED_SUGGESTION", "APPROVED_SUGGESTION", "ADJUSTMENT", "AUTO_MATCHED", "REJECTED_AUTO_MATCH", "AUTOPOSTING_APPROVED", "AUTOPOSTING_REJECTED" ] + }, + "accountingPeriodStartDate" : { + "type" : "string", + "description" : "Start date of the AccountingPeriod the match belongs to. Useful for sorting and filtering.", + "readOnly" : true + }, + "bankTransactionIds" : { + "type" : "array", + "description" : "BankTransaction ids included in the match.", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "BankTransaction ids included in the match.", + "format" : "int64", + "readOnly" : true + } + }, + "postingIds" : { + "type" : "array", + "description" : "Posting ids included in the match.", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "Posting ids included in the match.", + "format" : "int64", + "readOnly" : true + } + } + }, + "description" : "An approved reconciliation match between bank transactions and ledger postings on an external PSD2 bank account.", + "readOnly" : true + }, + "ListResponseExternalPsd2MatchListing" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ExternalPsd2MatchListing" + } + } + } + }, + "ExternalPsd2PostingStatus" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Tripletex internal posting id.", + "format" : "int64", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "description" : "Voucher id the posting belongs to.", + "format" : "int64", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "integer", + "description" : "Human-readable voucher number.", + "format" : "int32", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "description" : "Ledger account id the posting is booked against.", + "format" : "int32", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Booking date of the posting.", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Posting description.", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "description" : "Signed amount in the account's currency. Negative for credit postings.", + "readOnly" : true + }, + "currency" : { + "type" : "string", + "description" : "ISO 4217 currency code of the account the posting is booked against.", + "readOnly" : true + }, + "matchStatus" : { + "type" : "string", + "description" : "Reconciliation status of an externally-uploaded PSD2 bank transaction.", + "readOnly" : true, + "enum" : [ "MATCHED", "PENDING_SUGGESTION", "UNMATCHED" ] + } + }, + "description" : "A ledger posting on a bank account used for external PSD2 reconciliation, together with its current reconciliation status.", + "readOnly" : true + }, + "ListResponseExternalPsd2PostingStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ExternalPsd2PostingStatus" + } + } + } + }, + "ExternalPsd2ReconciliationState" : { + "type" : "object", + "properties" : { + "bankReconciliationId" : { + "type" : "integer", + "description" : "Tripletex internal BankReconciliation id.", + "format" : "int64", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "description" : "Bank account id the reconciliation is for.", + "format" : "int32", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "description" : "Start date of the AccountingPeriod the reconciliation covers.", + "readOnly" : true + }, + "periodEnd" : { + "type" : "string", + "description" : "End date of the AccountingPeriod the reconciliation covers.", + "readOnly" : true + }, + "isClosed" : { + "type" : "boolean", + "description" : "Whether the reconciliation period has been closed. POST /match and DELETE /match/{id} are rejected when this is true.", + "readOnly" : true + }, + "bankStatementBalance" : { + "type" : "number", + "description" : "Closing balance from the bank side (BankReconciliation.balanceOutCurrency), in account currency.", + "readOnly" : true + }, + "ledgerBalance" : { + "type" : "number", + "description" : "Closing balance on the ledger account through periodEnd, in account currency.", + "readOnly" : true + }, + "balanceDifference" : { + "type" : "number", + "description" : "ledgerBalance - bankStatementBalance, in account currency. Zero means the period is fully reconciled.", + "readOnly" : true + }, + "isReadOnly" : { + "type" : "boolean", + "description" : "True when the period cannot be edited: the AccountingPeriod itself is closed, the account is inactive, or a later period for the same account has already been closed. POST /match, DELETE /match/{id} and PUT /close are effectively no-ops while this is true.", + "readOnly" : true + }, + "isApprovableComplete" : { + "type" : "boolean", + "description" : "True when PUT /close will succeed: the bank and ledger sides agree, all postings and bank transactions are matched, and no readonly/closed condition applies.", + "readOnly" : true + }, + "isApprovableIncomplete" : { + "type" : "boolean", + "description" : "True when the period is editable but not yet ready to close — typically because there is a balance gap or unmatched entries on either side. Mutually exclusive with isApprovableComplete and isReadOnly when the reconciliation is not yet closed.", + "readOnly" : true + } + }, + "description" : "High-level state of a single bank reconciliation period for an external PSD2 bank account: is the period closed, what does the bank side say vs the ledger side, how big is the gap, and whether the period can currently be closed via PUT /close.", + "readOnly" : true + }, + "ListResponseExternalPsd2ReconciliationState" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ExternalPsd2ReconciliationState" + } + } + } + }, + "ExternalPsd2TransactionStatus" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Tripletex internal bank transaction id.", + "format" : "int64", + "readOnly" : true + }, + "externalId" : { + "type" : "string", + "description" : "Identifier supplied by the external partner at upload time (BankTransaction.paymentId).", + "readOnly" : true + }, + "postedDate" : { + "type" : "string", + "description" : "Booking date of the transaction.", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Free-text description as persisted on the transaction.", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "Signed amount in the account's currency. Negative for outgoing.", + "readOnly" : true + }, + "kid" : { + "type" : "string", + "description" : "KID reference if the transaction carried one.", + "readOnly" : true + }, + "matchStatus" : { + "type" : "string", + "description" : "Reconciliation status of an externally-uploaded PSD2 bank transaction.", + "readOnly" : true, + "enum" : [ "MATCHED", "PENDING_SUGGESTION", "UNMATCHED" ] + } + }, + "description" : "An externally-uploaded PSD2 bank transaction together with its current reconciliation status.", + "readOnly" : true + }, + "ListResponseExternalPsd2TransactionStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ExternalPsd2TransactionStatus" + } + } + } + }, + "ExternalPsd2MatchResponse" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id of the created BankReconciliationMatch.", + "format" : "int64", + "readOnly" : true + }, + "bankReconciliationId" : { + "type" : "integer", + "description" : "Id of the BankReconciliation the match belongs to (auto-created if one did not already exist for the period).", + "format" : "int64", + "readOnly" : true + }, + "bankTransactionIds" : { + "type" : "array", + "description" : "BankTransaction ids included in the match.", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "BankTransaction ids included in the match.", + "format" : "int64", + "readOnly" : true + } + }, + "postingIds" : { + "type" : "array", + "description" : "Posting ids included in the match.", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "Posting ids included in the match.", + "format" : "int64", + "readOnly" : true + } + }, + "type" : { + "type" : "string", + "description" : "Match type. Always MANUAL for externally-created matches.", + "readOnly" : true, + "enum" : [ "MANUAL", "PENDING_SUGGESTION", "REJECTED_SUGGESTION", "APPROVED_SUGGESTION", "ADJUSTMENT", "AUTO_MATCHED", "REJECTED_AUTO_MATCH", "AUTOPOSTING_APPROVED", "AUTOPOSTING_REJECTED" ] + } + }, + "description" : "Result of creating an approved reconciliation match via an external PSD2 integration." + }, + "ResponseWrapperExternalPsd2MatchResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ExternalPsd2MatchResponse" + } + } + }, + "ExternalPsd2CreateMatchRequest" : { + "type" : "object", + "properties" : { + "bankTransactionIds" : { + "type" : "array", + "description" : "Ids of BankTransactions to include in the match. Must all belong to the same external PSD2 statement on the request's accountId.", + "items" : { + "type" : "integer", + "description" : "Ids of BankTransactions to include in the match. Must all belong to the same external PSD2 statement on the request's accountId.", + "format" : "int64" + } + }, + "postingIds" : { + "type" : "array", + "description" : "Ids of ledger Postings to include in the match. Must all be booked against the request's accountId.", + "items" : { + "type" : "integer", + "description" : "Ids of ledger Postings to include in the match. Must all be booked against the request's accountId.", + "format" : "int64" + } + } + }, + "description" : "Payload for creating an approved reconciliation match between externally-uploaded PSD2 bank transactions and ledger postings. Both lists are optional on their own, but at least one must be non-empty. Supports 1:1, 1:N, N:1, N:M." + }, + "ExternalPsd2TransactionsResponse" : { + "type" : "object", + "properties" : { + "statementsCreated" : { + "type" : "integer", + "description" : "Number of BankStatement entities created during the upload.", + "format" : "int32", + "readOnly" : true + }, + "transactionsProcessed" : { + "type" : "integer", + "description" : "Total number of transactions persisted across all created BankStatements.", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "Result of an external PSD2 bank transaction upload." + }, + "ResponseWrapperExternalPsd2TransactionsResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ExternalPsd2TransactionsResponse" + } + } + }, + "ExternalPsd2BankTransaction" : { + "type" : "object", + "properties" : { + "externalId" : { + "type" : "string", + "description" : "Unique identifier of the transaction on the external side. Used to upsert transactions across uploads." + }, + "transactionType" : { + "type" : "string", + "description" : "Transaction direction. Expected values: DEBIT or CREDIT." + }, + "status" : { + "type" : "string", + "description" : "Transaction status. PENDING transactions are skipped; all other values are treated as booked." + }, + "amount" : { + "type" : "number", + "description" : "Absolute transaction amount. Sign is derived from transactionType." + }, + "currency" : { + "type" : "string", + "description" : "ISO 4217 currency code. Must match the bank account's currency." + }, + "bookingDate" : { + "type" : "string", + "description" : "Booking date. Accepts ISO date (yyyy-MM-dd) or ISO datetime." + }, + "valueDate" : { + "type" : "string", + "description" : "Value date. Accepts ISO date (yyyy-MM-dd) or ISO datetime. Optional." + }, + "creditorName" : { + "type" : "string", + "description" : "Name of the creditor. For DEBIT transactions this is the counterparty." + }, + "creditorAccount" : { + "type" : "string", + "description" : "Account number of the creditor." + }, + "debtorName" : { + "type" : "string", + "description" : "Name of the debtor. For CREDIT transactions this is the counterparty." + }, + "debtorAccount" : { + "type" : "string", + "description" : "Account number of the debtor." + }, + "remittanceUnstructured" : { + "type" : "string", + "description" : "Unstructured remittance information (free-text message)." + }, + "remittanceReference" : { + "type" : "string", + "description" : "Structured remittance reference, typically the KID." + }, + "endToEndId" : { + "type" : "string", + "description" : "End-to-end identifier supplied by the originator." + }, + "bankReference" : { + "type" : "string", + "description" : "Bank-assigned transaction reference." + } + }, + "description" : "A single PSD2 bank transaction from an external source (e.g. Autopay via Taki)." + }, + "ExternalPsd2TransactionsRequest" : { + "type" : "object", + "properties" : { + "transactions" : { + "type" : "array", + "description" : "Transactions to upload. PENDING entries are filtered out.", + "items" : { + "$ref" : "#/components/schemas/ExternalPsd2BankTransaction" + } + }, + "bookedBalance" : { + "type" : "number", + "description" : "The account's current booked balance at the time of upload. Used to derive the opening balance." + } + }, + "description" : "Batch of PSD2 bank transactions uploaded by an external partner (e.g. Taki), together with the account's current booked balance." + }, + "FileIdForIncomingPayments" : { + "type" : "object", + "properties" : { + "autoPayIncomingPaymentFileId" : { + "type" : "integer", + "description" : "AutoPayIncomingPaymentFile ID.", + "format" : "int64", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Date of incoming payment file.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperListFileIdForIncomingPayments" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/FileIdForIncomingPayments" + } + } + } + }, + "ListResponseFileIdForIncomingPayments" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/FileIdForIncomingPayments" + } + } + } + }, + "ResponseWrapperBankReconciliationMatch" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankReconciliationMatch" + } + } + }, + "ListResponseBankReconciliationMatch" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankReconciliationMatch" + } + } + } + }, + "BankReconciliationMatchesCounter" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "bankReconciliationId" : { + "type" : "integer", + "description" : "The reconciliation id for which the number of matches is stored.", + "format" : "int32" + }, + "autoMatchedMatches" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of auto-matched matches since last page access.", + "format" : "int32" + }, + "suggestedMatches" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of suggested matches since last page access.", + "format" : "int32" + } + } + }, + "ResponseWrapperBankReconciliationMatchesCounter" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankReconciliationMatchesCounter" + } + } + }, + "ResponseWrapperBankReconciliationPaymentType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankReconciliationPaymentType" + } + } + }, + "ListResponseBankReconciliationPaymentType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankReconciliationPaymentType" + } + } + } + }, + "BankReconciliationSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "numberOfMatchesPerPage" : { + "type" : "string", + "description" : "The number of matches showed per page in bank reconciliation.", + "enum" : [ "ITEMS_10", "ITEMS_50", "ITEMS_100", "ITEMS_500", "ITEMS_1000", "ITEMS_5000", "ITEMS_10000" ] + } + } + }, + "ResponseWrapperBankReconciliationSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankReconciliationSettings" + } + } + }, + "ChangeLog" : { + "type" : "object", + "properties" : { + "employeeNameAndNumber" : { + "type" : "string", + "readOnly" : true + }, + "action" : { + "type" : "string", + "readOnly" : true + }, + "timestamp" : { + "type" : "string", + "readOnly" : true + }, + "changeType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "CREATE", "UPDATE", "DELETE", "LOCKED", "REOPENED", "DO_NOT_SHOW" ] + }, + "changeLogEmployeeDTO" : { + "$ref" : "#/components/schemas/ChangeLogEmployee" + }, + "requestlogId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ChangeLogEmployee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "pictureId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "actualEmployee" : { + "$ref" : "#/components/schemas/ChangeLogEmployee" + } + }, + "readOnly" : true + }, + "ListResponseChangeLog" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ChangeLog" + } + } + } + }, + "ReconciliationFilterState" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "description" : "Account id", + "format" : "int32", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "description" : "Period start date", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "Period end date", + "readOnly" : true + } + } + }, + "ResponseWrapperReconciliationFilterState" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationFilterState" + } + } + }, + "ReconciliationSelectedState" : { + "type" : "object", + "properties" : { + "sumSelectedPostings" : { + "type" : "number", + "description" : "Total sum for selected postings", + "readOnly" : true + }, + "sumSelectedTransactions" : { + "type" : "number", + "description" : "Total sum for selected transactions", + "readOnly" : true + }, + "selectedDifference" : { + "type" : "number", + "readOnly" : true + }, + "showDifference" : { + "type" : "boolean", + "description" : "Flag to show difference for selected entries", + "readOnly" : true + }, + "showManualMatch" : { + "type" : "boolean", + "description" : "Flag to show manual match button for selected entries", + "readOnly" : true + }, + "showPostBalance" : { + "type" : "boolean", + "description" : "Flag to show enter balance button for selected entries", + "readOnly" : true + }, + "showTransferEntries" : { + "type" : "boolean", + "description" : "Flag to show transfer entries button for selected entries", + "readOnly" : true + }, + "showPostEntries" : { + "type" : "boolean", + "description" : "Flag to show post transactions entries button for selected entries", + "readOnly" : true + } + } + }, + "ResponseWrapperReconciliationSelectedState" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationSelectedState" + } + } + }, + "ReconciliationState" : { + "type" : "object", + "properties" : { + "reconciliation" : { + "$ref" : "#/components/schemas/BankReconciliation" + }, + "ledgerAccountOutBalance" : { + "type" : "number", + "readOnly" : true + }, + "ledgerAccountInBalance" : { + "type" : "number", + "readOnly" : true + }, + "bankStatementOutBalance" : { + "type" : "number", + "readOnly" : true + }, + "bankStatementInBalance" : { + "type" : "number", + "readOnly" : true + }, + "balanceOutDifference" : { + "type" : "number", + "readOnly" : true + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "isApprovableComplete" : { + "type" : "boolean", + "readOnly" : true + }, + "isApprovableIncomplete" : { + "type" : "boolean", + "readOnly" : true + }, + "isReadOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "newerApprovedReconciliationUrl" : { + "type" : "string", + "readOnly" : true + }, + "isInactiveAccount" : { + "type" : "boolean", + "readOnly" : true + }, + "accountingPeriodClosedUrl" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperReconciliationState" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationState" + } + } + }, + "PostBalanceAdjustmentRequestDTO" : { + "type" : "object", + "properties" : { + "reconciliationId" : { + "type" : "integer", + "description" : "The id of the reconciliation where adjustment will be created", + "format" : "int64" + }, + "postingIds" : { + "type" : "array", + "description" : "Posting Ids", + "items" : { + "type" : "integer", + "description" : "Posting Ids", + "format" : "int64" + } + }, + "transactionIds" : { + "type" : "array", + "description" : "Transaction Ids", + "items" : { + "type" : "integer", + "description" : "Transaction Ids", + "format" : "int64" + } + }, + "paymentTypeId" : { + "type" : "integer", + "description" : "Payment Type Id", + "format" : "int64" + } + } + }, + "PostTransactionsAdjustmentsRequestDTO" : { + "type" : "object", + "properties" : { + "reconciliationId" : { + "type" : "integer", + "description" : "The id of the reconciliation where adjustments will be created", + "format" : "int64" + }, + "transactionIds" : { + "type" : "array", + "description" : "Transaction Ids", + "items" : { + "type" : "integer", + "description" : "Transaction Ids", + "format" : "int64" + } + }, + "incomePaymentTypeId" : { + "type" : "integer", + "description" : "Income Payment Type Id", + "format" : "int64" + }, + "costPaymentTypeId" : { + "type" : "integer", + "description" : "Cost Payment Type Id", + "format" : "int64" + } + } + }, + "TransferPostingsAdjustmentRequestDTO" : { + "type" : "object", + "properties" : { + "reconciliationId" : { + "type" : "integer", + "description" : "The id of the reconciliation where adjustment will be created", + "format" : "int64" + }, + "postingIds" : { + "type" : "array", + "description" : "Posting Ids", + "items" : { + "type" : "integer", + "description" : "Posting Ids", + "format" : "int64" + } + }, + "date" : { + "type" : "string", + "description" : "New Date for postings" + }, + "description" : { + "type" : "string", + "description" : "Description" + }, + "interimAccountId" : { + "type" : "integer", + "description" : "Interim Account Id", + "format" : "int64" + } + } + }, + "ReconciliationSelectedStateRequestBody" : { + "type" : "object", + "properties" : { + "postings" : { + "type" : "array", + "description" : "List of IDs", + "items" : { + "type" : "integer", + "description" : "List of IDs", + "format" : "int64" + } + }, + "transactions" : { + "type" : "array", + "description" : "List of IDs", + "items" : { + "type" : "integer", + "description" : "List of IDs", + "format" : "int64" + } + } + } + }, + "BankReconciliationDocumentDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "fileName" : { + "type" : "string" + }, + "blob" : { + "type" : "string" + } + }, + "description" : "Bank Reconciliation Document DTO", + "readOnly" : true + }, + "ListResponseBankReconciliationDocumentDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankReconciliationDocumentDTO" + } + } + } + }, + "ResponseWrapperDocument" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "AutoPostingSuggestion" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "bankTransactionId" : { + "type" : "integer", + "description" : "The bank transaction ID", + "format" : "int64", + "readOnly" : true + }, + "bankReconciliationId" : { + "type" : "integer", + "description" : "The bank reconciliation ID", + "format" : "int64", + "readOnly" : true + }, + "scenario" : { + "type" : "string", + "description" : "The autoposting scenario", + "readOnly" : true, + "enum" : [ "OUTGOING_INVOICE_WITHOUT_KID", "BANK_FEES", "INCOMING_INVOICE_MANUALLY_PAID", "INTERMEDIATE_ACCOUNT", "BANK_INTEREST" ] + }, + "status" : { + "type" : "string", + "description" : "The status of the suggestion", + "readOnly" : true, + "enum" : [ "PENDING", "ACCEPTED", "REJECTED" ] + }, + "transactionEntry" : { + "$ref" : "#/components/schemas/ReconciliationEntry" + }, + "matchedEntry" : { + "$ref" : "#/components/schemas/ReconciliationEntry" + } + }, + "readOnly" : true + }, + "ContainerTagDivTag" : { + "type" : "object", + "properties" : { + "tagName" : { + "type" : "string" + }, + "numChildren" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReconciliationEntry" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id of posting or transaction", + "format" : "int64" + }, + "entryType" : { + "type" : "string", + "description" : "Shows if it is a Posting or BankTransaction", + "enum" : [ "Posting", "BankTransaction" ] + }, + "amountCurrency" : { + "type" : "number", + "description" : "The amount of the posting or transaction", + "readOnly" : true + }, + "detailsList" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationEntryDetail" + } + }, + "date" : { + "type" : "string", + "description" : "The date of the posting or transaction", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "description" : "Id of voucher from posting", + "format" : "int64" + }, + "isQueryMatch" : { + "type" : "boolean", + "description" : "This matches search", + "readOnly" : true + }, + "isAutomated" : { + "type" : "boolean", + "description" : "Whether this posting was created from an AutoPostingSuggestion", + "readOnly" : true + } + }, + "description" : "List of entries in this group." + }, + "ReconciliationEntryDetail" : { + "type" : "object", + "properties" : { + "key" : { + "type" : "string", + "description" : "The key", + "readOnly" : true + }, + "value" : { + "type" : "string", + "description" : "The value", + "readOnly" : true + }, + "valueForPDF" : { + "$ref" : "#/components/schemas/ContainerTagDivTag" + }, + "valueForXLSX" : { + "type" : "string" + } + }, + "description" : "The details of the posting or transaction", + "readOnly" : true + }, + "ResponseWrapperAutoPostingSuggestion" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AutoPostingSuggestion" + } + } + }, + "ListResponseAutoPostingSuggestion" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AutoPostingSuggestion" + } + } + } + }, + "ListResponseReconciliationEntry" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationEntry" + } + } + } + }, + "ReconciliationRequest" : { + "type" : "object", + "properties" : { + "actionType" : { + "type" : "string", + "description" : "Export type, email or file download", + "enum" : [ "SendEmail", "FileDownload" ] + }, + "pdfOrientation" : { + "type" : "string", + "enum" : [ "portrait", "landscape" ] + }, + "bankReconciliationId" : { + "type" : "integer", + "format" : "int32" + }, + "type" : { + "type" : "string", + "enum" : [ "APPROVED", "OPEN_TRANSACTIONS" ] + }, + "transactionsType" : { + "type" : "string", + "enum" : [ "CURRENT_MONTH", "ALL_TRANSACTIONS", "SELECTED" ] + }, + "transactions" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + }, + "emailAddresses" : { + "type" : "array", + "description" : "The email address to send to.", + "items" : { + "type" : "string", + "description" : "The email address to send to." + } + }, + "message" : { + "type" : "string", + "description" : "The message to include in the email." + }, + "accountId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReconciliationGroup" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "description" : "Title of this group.", + "readOnly" : true + }, + "totalAmount" : { + "type" : "number", + "description" : "Total amount of this group.", + "readOnly" : true + }, + "entries" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReconciliationEntry" + } + } + }, + "description" : "Group of transactions from this match." + }, + "ReconciliationMatch" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "description" : "Id of the BankReconciliation.", + "format" : "int64" + }, + "accountId" : { + "type" : "integer", + "description" : "Id of the account.", + "format" : "int64" + }, + "startDate" : { + "type" : "string", + "description" : "Start date of the period" + }, + "isApproved" : { + "type" : "boolean", + "description" : "Is this BankReconciliationMatch approved.", + "readOnly" : true + }, + "postingsGroup" : { + "$ref" : "#/components/schemas/ReconciliationGroup" + }, + "transactionsGroup" : { + "$ref" : "#/components/schemas/ReconciliationGroup" + } + } + }, + "ListResponseReconciliationMatch" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationMatch" + } + } + } + }, + "ResponseWrapperAccount" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Account" + } + } + }, + "ListResponseReconciliationPaymentType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationPaymentType" + } + } + } + }, + "ReconciliationPaymentType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "Display Name", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ReconciliationPeriod" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "annualAccountsId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "periodName" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "start" : { + "type" : "string", + "readOnly" : true + }, + "end" : { + "type" : "string", + "readOnly" : true + }, + "isAccountingPeriodClosed" : { + "type" : "boolean", + "readOnly" : true + }, + "reconciliationId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "reconciliationAccountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isReconciliationClosed" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperReconciliationPeriod" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationPeriod" + } + } + }, + "ListResponseReconciliationPeriod" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReconciliationPeriod" + } + } + } + }, + "BankSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "taxBankAgreement" : { + "$ref" : "#/components/schemas/AutopayBankAgreement" + }, + "remitNumberOfAcceptors" : { + "maximum" : 3, + "minimum" : 1, + "type" : "integer", + "description" : "The remit number of acceptors.", + "format" : "int32" + }, + "showAdviceCurrencyMismatch" : { + "type" : "boolean", + "description" : "The showAdviceCurrencyMismatch property." + }, + "paymentWithUnknownKidParseOption" : { + "type" : "string", + "description" : "Setting for whether incoming AutoPay payments without KID should be automatically posted, sent to voucher reception or ignored.", + "enum" : [ "VOUCHER_RECEPTION", "PARSE", "IGNORE" ] + }, + "signAutoPayWithBankId" : { + "type" : "boolean", + "description" : "Setting for whether the user should have the option to sign payments and agreements with Bank ID in addition to 2FA." + }, + "batchBookingOfPayments" : { + "type" : "boolean", + "description" : "Setting for the user to use or not the batch booking for payments." + }, + "parseEntriesAsSumPosts" : { + "type" : "boolean", + "description" : "Setting for the user to choose if account statements entries should be parsed as sum posts or not." + }, + "employeesWithDirectRemitAccess" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "employeesWithLimitedDirectRemitAccess" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "daysBeforePaymentOutdated" : { + "maximum" : 99, + "minimum" : 3, + "type" : "integer", + "description" : "Number of days before a payment is set as outdated", + "format" : "int32" + } + } + }, + "ResponseWrapperBankSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankSettings" + } + } + }, + "BankIdConsentResponseDTO" : { + "type" : "object", + "properties" : { + "enabled" : { + "type" : "boolean", + "description" : "Whether BankID signing was enabled or disabled", + "readOnly" : true + }, + "redirectUrl" : { + "type" : "string", + "description" : "The redirect URL for BankID consent flow. If null, no consent is needed.", + "readOnly" : true + }, + "message" : { + "type" : "string", + "description" : "Message describing the result of the operation", + "readOnly" : true + } + } + }, + "ResponseWrapperBankIdConsentResponseDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankIdConsentResponseDTO" + } + } + }, + "ResponseWrapperBankStatementBalance" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankStatementBalance" + } + } + }, + "ListResponseBankStatement" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankStatement" + } + } + } + }, + "BankBalanceEstimation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "voucherId" : { + "type" : "integer", + "format" : "int32" + }, + "invoiceId" : { + "type" : "integer", + "format" : "int64" + }, + "invoiceNumber" : { + "type" : "string" + }, + "invoiceAmount" : { + "type" : "number" + }, + "isIncomingInvoice" : { + "type" : "boolean", + "description" : "boolean" + }, + "recurrence" : { + "type" : "string", + "description" : "Recurrence type", + "enum" : [ "NONE", "DAILY", "WEEKLY", "MONTHLY" ] + }, + "category" : { + "type" : "string", + "description" : "Category", + "enum" : [ "DUPLICATE", "STARTING_BALANCE", "NONE", "SALARY", "ENI", "TAX", "VAT_RETURNS", "VACATION_ALLOWANCE", "TRAVEL_AND_EXPENSES" ] + }, + "vendorOrCustomerName" : { + "type" : "string" + }, + "isManuallyAdded" : { + "type" : "boolean", + "description" : "boolean" + }, + "batchId" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ResponseWrapperListBankBalanceEstimation" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/BankBalanceEstimation" + } + } + } + }, + "ResponseWrapperBankBalanceEstimation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankBalanceEstimation" + } + } + }, + "ListResponseBankBalanceEstimation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankBalanceEstimation" + } + } + } + }, + "BankTransactionAggregates" : { + "type" : "object", + "properties" : { + "totalIncomingAmount" : { + "type" : "number", + "description" : "Total incoming amount on given transactions.", + "readOnly" : true + }, + "totalOutgoingAmount" : { + "type" : "number", + "description" : "Total outgoing amount on given transactions.", + "readOnly" : true + }, + "topCustomers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyTransactionAggregates" + } + }, + "topSuppliers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyTransactionAggregates" + } + } + } + }, + "CompanyTransactionAggregates" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "number", + "description" : "Customer id.", + "readOnly" : true + }, + "name" : { + "type" : "number", + "description" : "Customer name.", + "readOnly" : true + }, + "incomingAmount" : { + "type" : "number", + "description" : "Incoming amount from this customer.", + "readOnly" : true + }, + "percentageOfIncoming" : { + "type" : "number", + "description" : "Percentage of incoming amount from all companies.", + "readOnly" : true + }, + "outgoingAmount" : { + "type" : "number", + "description" : "Outgoing amount to this company.", + "readOnly" : true + }, + "percentageOfOutgoing" : { + "type" : "number", + "description" : "Percentage outgoing amount from all companies.", + "readOnly" : true + } + }, + "description" : "top suppliers and respective payments", + "readOnly" : true + }, + "ResponseWrapperBankTransactionAggregates" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankTransactionAggregates" + } + } + }, + "ResponseWrapperBankTransaction" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankTransaction" + } + } + }, + "ListResponseBankTransaction" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankTransaction" + } + } + } + }, + "BankTransactionComment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "comment" : { + "type" : "string" + }, + "createdAt" : { + "type" : "string" + }, + "bankTransactionId" : { + "type" : "integer", + "format" : "int64" + }, + "externalPaymentId" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int64" + }, + "actualEmployeeCompanyId" : { + "type" : "integer", + "format" : "int64" + }, + "actualEmployeeName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperBankTransactionComment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankTransactionComment" + } + } + }, + "ListResponseBankTransactionComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BankTransactionComment" + } + } + } + }, + "ListResponseUpsaleMetric" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/UpsaleMetric" + } + } + } + }, + "UpsaleMetric" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "description" : "The company's ID.", + "format" : "int32" + }, + "actualEmployeeId" : { + "type" : "integer", + "description" : "Actual employee's ID.", + "format" : "int32" + }, + "loginEmployeeId" : { + "type" : "integer", + "description" : "Login employee's ID.", + "format" : "int32" + }, + "tripletexUserId" : { + "type" : "integer", + "description" : "Tripletex's user ID.", + "format" : "int32" + }, + "metricType" : { + "type" : "string", + "description" : "The type of the metric used.", + "enum" : [ "BANK_DASHBOARD", "VENDOR", "SALARY" ] + }, + "action" : { + "type" : "string", + "description" : "Status for upsale's AutoPay bank dashboard page or enabling / disabling upsale's notifications.", + "enum" : [ "VISITED", "ONBOARDED", "DISABLED" ] + } + }, + "readOnly" : true + }, + "BringCredentials" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "username" : { + "type" : "string", + "description" : "Bring username" + }, + "customerNumber" : { + "type" : "string", + "description" : "Bring customer number" + }, + "apiKey" : { + "type" : "string", + "description" : "API token for Bring APIs" + }, + "moduleBring" : { + "type" : "boolean", + "description" : "Bring activation in Logistics module" + }, + "confirmationEmail" : { + "type" : "string", + "description" : "Bring preferred email" + } + } + }, + "ResponseWrapperBringCredentials" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BringCredentials" + } + } + }, + "ChatMessage" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "description" : "Message sender", + "format" : "int64", + "readOnly" : true + }, + "thread" : { + "$ref" : "#/components/schemas/ChatThread" + }, + "content" : { + "type" : "string" + }, + "timestamp" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ChatParticipant" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "displayName" : { + "type" : "string" + }, + "companyName" : { + "type" : "string" + }, + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "isProxy" : { + "type" : "boolean" + }, + "pictureId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "proxy" : { + "type" : "boolean" + } + }, + "description" : "Participants but not the logged in employee or proxy" + }, + "ChatThread" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "timestamp" : { + "type" : "string", + "description" : "Timestamp for creation of the chat thread", + "readOnly" : true + }, + "customerCompanyId" : { + "type" : "integer", + "description" : "Id of the company the chat is started with", + "format" : "int64" + }, + "messages" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChatMessage" + } + }, + "threadUrl" : { + "type" : "string", + "description" : "Url to the topic of conversation" + }, + "participants" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChatParticipant" + } + }, + "summaryDisplayName" : { + "type" : "string", + "description" : "The employee to show in a thread summary.", + "readOnly" : true + }, + "summaryDisplayCompany" : { + "type" : "string", + "description" : "The company to show in a thread summary.", + "readOnly" : true + }, + "otherNonProxyParticipants" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChatParticipant" + } + }, + "subject" : { + "type" : "string" + }, + "accessValidationMessage" : { + "type" : "string", + "description" : "Validation message if the user cannot send messages in this thread, null if they can", + "readOnly" : true + }, + "readOrIgnore" : { + "type" : "boolean" + }, + "threadHandledByAO" : { + "type" : "boolean" + }, + "completed" : { + "type" : "boolean" + }, + "read" : { + "type" : "boolean" + }, + "queue" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ResponseWrapperChatMessage" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ChatMessage" + } + } + }, + "ChatMetaDTO" : { + "type" : "object", + "properties" : { + "hasAccountant" : { + "type" : "boolean" + }, + "hasEntitlements" : { + "type" : "boolean" + }, + "shouldShowOptIn" : { + "type" : "boolean" + }, + "shouldShowIntroduction" : { + "type" : "boolean" + }, + "showChat" : { + "type" : "boolean" + }, + "accountantProxyEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "proxy" : { + "type" : "boolean" + }, + "accountant" : { + "type" : "boolean" + }, + "admin" : { + "type" : "boolean" + }, + "pilot" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperChatMetaDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ChatMetaDTO" + } + } + }, + "ChatCompanyDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id of the company the chat is started with", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Name of the company the chat is started with", + "readOnly" : true + }, + "type" : { + "type" : "string", + "description" : "Type of the company the chat is started with", + "readOnly" : true, + "enum" : [ "OWN", "CLIENT", "ACCOUNTANT" ] + }, + "customerId" : { + "type" : "integer", + "description" : "Customer id of the company the chat is started with if applicable", + "format" : "int64", + "readOnly" : true + }, + "proxyEmployeeId" : { + "type" : "integer", + "description" : "Proxy employee id of the company the chat is started with if applicable", + "format" : "int64", + "readOnly" : true + }, + "latestThread" : { + "$ref" : "#/components/schemas/ChatThread" + }, + "latestMessageTimestamp" : { + "type" : "string", + "description" : "Latest message timestamp", + "readOnly" : true + }, + "unreadMessages" : { + "type" : "boolean", + "description" : "Has unread messages from this company", + "readOnly" : true + }, + "unhandledAOThreads" : { + "type" : "boolean", + "description" : "Has unhandled threads from this company", + "readOnly" : true + }, + "access" : { + "type" : "boolean", + "description" : "If the current login employee has access to the company or not", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperListChatCompanyDTO" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChatCompanyDTO" + } + } + } + }, + "PaginatedListResponse" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ChatThread" + } + }, + "nextUrl" : { + "type" : "string" + } + } + }, + "ResponseWrapperChatThread" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ChatThread" + } + } + }, + "Checkout" : { + "type" : "object", + "properties" : { + "proxyOrClient" : { + "type" : "boolean" + }, + "payingCustomer" : { + "type" : "boolean" + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "isPayingCustomer" : { + "type" : "boolean", + "description" : "Returns whether the company category is paying." + }, + "isProxyOrClient" : { + "type" : "boolean", + "description" : "Returns whether employee is proxy or not" + } + } + }, + "ResponseWrapperCheckout" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Checkout" + } + } + }, + "CheckoutPageVoucherPackage" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "textKey" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperCheckoutPageVoucherPackage" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CheckoutPageVoucherPackage" + } + } + }, + "ClientContext" : { + "type" : "object", + "properties" : { + "trial" : { + "type" : "boolean", + "description" : "Whether the current session is in a trial account" + }, + "subscribed" : { + "type" : "boolean", + "description" : "Whether the current session has access to the year-end module" + }, + "devMode" : { + "type" : "boolean", + "description" : "Whether the current session has access to development features" + }, + "pilotMode" : { + "type" : "boolean", + "description" : "Whether the current session has access to pilot features" + }, + "activeAccountantProxy" : { + "type" : "boolean", + "description" : "Whether the current session is a proxy for an accountant" + }, + "hackedOrSupportAccess" : { + "type" : "boolean", + "description" : "Whether the current session is a Tripletex employee with extra privileges" + }, + "companyTypeId" : { + "type" : "integer", + "description" : "The category of the company which is selected in the current session", + "format" : "int32" + }, + "companyId" : { + "type" : "integer", + "description" : "The id of the company which is selected in the current session", + "format" : "int32" + }, + "companyName" : { + "type" : "string", + "description" : "The name of the company which is selected in the current session" + } + } + }, + "ResponseWrapperClientContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ClientContext" + } + } + }, + "EmployeeRoleModelDTO" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "customerId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "hasAccess" : { + "type" : "boolean" + }, + "role" : { + "type" : "string", + "enum" : [ "ROLE_ADMINISTRATOR", "AUTH_READ_ONLY", "AUTH_LOGIN", "AUTH_ALL_VOUCHERS", "AUTH_COMPANY_ACCOUNTING_REPORTS", "AUTH_ACCOUNTING_SETTINGS", "AUTH_COMPANY_RESULT_BUDGET", "AUTH_COMPANY_CUSTOMER_ACCOUNTING_REPORTS", "AUTH_COMPANY_VENDOR_ACCOUNTING_REPORTS", "AUTH_COMPANY_EMPLOYEE_ACCOUNTING_REPORTS", "AUTH_COMPANY_ASSET_ACCOUNTING_REPORTS", "AUTH_COMPANY_ATTESTOR", "AUTH_DIRECT_REMIT_ADMIN", "AUTH_DIRECT_REMIT_LIGHT", "AUTH_MANAGE_BANK_ACCOUNT_NUMBERS", "AUTH_DIRECT_REMIT_CREATE_NEW", "AUTH_DIRECT_REMIT_ADMIN_ZTL", "AUTH_COMPANY_ADMIN", "AUTH_EMPLOYEE_INFO", "AUTH_COMPANY_EMPLOYEE_ADMIN", "AUTH_CUSTOMER_ADMIN", "AUTH_CUSTOMER_INFO", "AUTH_CREATE_CUSTOMER", "AUTH_INBOX_ARCHIVE_ALL_EMPLOYEES", "AUTH_ARCHIVE_READ", "AUTH_ARCHIVE_WRITE", "AUTH_ARCHIVE_ADMIN", "AUTH_CREATE_NOTE", "AUTH_CREATE_NOTE_TEMPLATE", "AUTH_INVOICING", "AUTH_OFFER_ADMIN", "AUTH_ORDER_ADMIN", "AUTH_CREATE_OFFER", "AUTH_CREATE_ORDER", "AUTH_FACTORING_EXPORT", "AUTH_INVOICE_ADMIN_SETTINGS", "AUTH_PROJECT_MANAGER", "AUTH_PROJECT_MANAGER_COMPANY", "AUTH_DEPARTMENT_REPORT", "AUTH_CREATE_PROJECT", "AUTH_PROJECT_EXTRA_COSTS", "AUTH_PROJECT_INFO", "AUTH_PROJECT_ADMIN_SETTINGS", "AUTH_PROJECT_OWN_PROJECT_RESULT_REPORT", "AUTH_PROJECT_CONTROL_FORMS", "AUTH_PRODUCT_ADMIN", "AUTH_PRODUCT_NET_PRICE", "AUTH_PURCHASING_MANAGER", "REPORT_ADMINISTRATOR", "REPORT_AUTHOR", "AUTH_COMPANY_WAGE_ADMIN", "AUTH_WAGE_ADMIN_SETTINGS", "AUTH_WAGE_INFORMATION", "AUTH_TASK_ADMIN", "AUTH_HOURS_COMPANY", "AUTH_HOUR_STATISTICS_COMPANY", "AUTH_HOURLIST", "AUTH_HOURLIST_SETTINGS", "AUTH_HOLYDAY_PLAN", "AUTH_TRAVEL_REPORTS_COMPANY", "AUTH_TRAVEL_REPORT", "AUTH_TRAVEL_EXPENSE_ADMIN_SETTINGS", "AUTH_VOUCHER_EXPORT", "AUTH_INBOX_VOUCHER", "AUTH_INCOMPLETE_VOUCHERS", "AUTH_INCOMING_INVOICE", "AUTH_VOUCHER_SETTINGS", "AUTH_BANK_RECONCILIATION", "AUTH_VAT_REPORT", "AUTH_SICKNESS_REIMBURSEMENT", "AUTH_REGISTER_INCOME", "AUTH_ADVANCED_VOUCHER", "AUTH_VOUCHER_IMPORT", "AUTH_PRODUCT_INVOICE", "AUTH_CUSTOMS_DECLARATION", "AUTH_VOUCHER_AUTOMATION", "AUTH_REMIT_FILES_VOUCHER_OVERVIEW", "YEAR_END_REPORT_ADMINISTRATOR" ] + } + } + }, + "AccountantClientAccessCategoryModel" : { + "type" : "object", + "properties" : { + "category" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "GENERAL", "ACCOUNTING", "VOUCHER_APPROVAL", "BANK", "COMPANY", "CUSTOMER", "DOCUMENT", "INVOICING", "PROJECT", "PRODUCT", "REPORT", "WAGE", "TASK", "HOUR_LIST", "TRAVEL_REPORT", "VOUCHER", "YEAR_END_REPORT" ] + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "accessLevel" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NONE", "SOME", "ALL" ] + }, + "hasReceivedAggregatedAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "roles" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantClientAccessRole" + } + } + }, + "readOnly" : true + }, + "AccountantClientAccessModel" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "employeeName" : { + "type" : "string", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "categories" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantClientAccessCategoryModel" + } + } + } + }, + "AccountantClientAccessRole" : { + "type" : "object", + "properties" : { + "role" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ROLE_ADMINISTRATOR", "AUTH_READ_ONLY", "AUTH_LOGIN", "AUTH_ALL_VOUCHERS", "AUTH_COMPANY_ACCOUNTING_REPORTS", "AUTH_ACCOUNTING_SETTINGS", "AUTH_COMPANY_RESULT_BUDGET", "AUTH_COMPANY_CUSTOMER_ACCOUNTING_REPORTS", "AUTH_COMPANY_VENDOR_ACCOUNTING_REPORTS", "AUTH_COMPANY_EMPLOYEE_ACCOUNTING_REPORTS", "AUTH_COMPANY_ASSET_ACCOUNTING_REPORTS", "AUTH_COMPANY_ATTESTOR", "AUTH_DIRECT_REMIT_ADMIN", "AUTH_DIRECT_REMIT_LIGHT", "AUTH_MANAGE_BANK_ACCOUNT_NUMBERS", "AUTH_DIRECT_REMIT_CREATE_NEW", "AUTH_DIRECT_REMIT_ADMIN_ZTL", "AUTH_COMPANY_ADMIN", "AUTH_EMPLOYEE_INFO", "AUTH_COMPANY_EMPLOYEE_ADMIN", "AUTH_CUSTOMER_ADMIN", "AUTH_CUSTOMER_INFO", "AUTH_CREATE_CUSTOMER", "AUTH_INBOX_ARCHIVE_ALL_EMPLOYEES", "AUTH_ARCHIVE_READ", "AUTH_ARCHIVE_WRITE", "AUTH_ARCHIVE_ADMIN", "AUTH_CREATE_NOTE", "AUTH_CREATE_NOTE_TEMPLATE", "AUTH_INVOICING", "AUTH_OFFER_ADMIN", "AUTH_ORDER_ADMIN", "AUTH_CREATE_OFFER", "AUTH_CREATE_ORDER", "AUTH_FACTORING_EXPORT", "AUTH_INVOICE_ADMIN_SETTINGS", "AUTH_PROJECT_MANAGER", "AUTH_PROJECT_MANAGER_COMPANY", "AUTH_DEPARTMENT_REPORT", "AUTH_CREATE_PROJECT", "AUTH_PROJECT_EXTRA_COSTS", "AUTH_PROJECT_INFO", "AUTH_PROJECT_ADMIN_SETTINGS", "AUTH_PROJECT_OWN_PROJECT_RESULT_REPORT", "AUTH_PROJECT_CONTROL_FORMS", "AUTH_PRODUCT_ADMIN", "AUTH_PRODUCT_NET_PRICE", "AUTH_PURCHASING_MANAGER", "REPORT_ADMINISTRATOR", "REPORT_AUTHOR", "AUTH_COMPANY_WAGE_ADMIN", "AUTH_WAGE_ADMIN_SETTINGS", "AUTH_WAGE_INFORMATION", "AUTH_TASK_ADMIN", "AUTH_HOURS_COMPANY", "AUTH_HOUR_STATISTICS_COMPANY", "AUTH_HOURLIST", "AUTH_HOURLIST_SETTINGS", "AUTH_HOLYDAY_PLAN", "AUTH_TRAVEL_REPORTS_COMPANY", "AUTH_TRAVEL_REPORT", "AUTH_TRAVEL_EXPENSE_ADMIN_SETTINGS", "AUTH_VOUCHER_EXPORT", "AUTH_INBOX_VOUCHER", "AUTH_INCOMPLETE_VOUCHERS", "AUTH_INCOMING_INVOICE", "AUTH_VOUCHER_SETTINGS", "AUTH_BANK_RECONCILIATION", "AUTH_VAT_REPORT", "AUTH_SICKNESS_REIMBURSEMENT", "AUTH_REGISTER_INCOME", "AUTH_ADVANCED_VOUCHER", "AUTH_VOUCHER_IMPORT", "AUTH_PRODUCT_INVOICE", "AUTH_CUSTOMS_DECLARATION", "AUTH_VOUCHER_AUTOMATION", "AUTH_REMIT_FILES_VOUCHER_OVERVIEW", "YEAR_END_REPORT_ADMINISTRATOR" ] + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "additionalInformation" : { + "type" : "string", + "readOnly" : true + }, + "hasRequiredModule" : { + "type" : "boolean", + "readOnly" : true + }, + "hasReceivedAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "dependencies" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ROLE_ADMINISTRATOR", "AUTH_READ_ONLY", "AUTH_LOGIN", "AUTH_ALL_VOUCHERS", "AUTH_COMPANY_ACCOUNTING_REPORTS", "AUTH_ACCOUNTING_SETTINGS", "AUTH_COMPANY_RESULT_BUDGET", "AUTH_COMPANY_CUSTOMER_ACCOUNTING_REPORTS", "AUTH_COMPANY_VENDOR_ACCOUNTING_REPORTS", "AUTH_COMPANY_EMPLOYEE_ACCOUNTING_REPORTS", "AUTH_COMPANY_ASSET_ACCOUNTING_REPORTS", "AUTH_COMPANY_ATTESTOR", "AUTH_DIRECT_REMIT_ADMIN", "AUTH_DIRECT_REMIT_LIGHT", "AUTH_MANAGE_BANK_ACCOUNT_NUMBERS", "AUTH_DIRECT_REMIT_CREATE_NEW", "AUTH_DIRECT_REMIT_ADMIN_ZTL", "AUTH_COMPANY_ADMIN", "AUTH_EMPLOYEE_INFO", "AUTH_COMPANY_EMPLOYEE_ADMIN", "AUTH_CUSTOMER_ADMIN", "AUTH_CUSTOMER_INFO", "AUTH_CREATE_CUSTOMER", "AUTH_INBOX_ARCHIVE_ALL_EMPLOYEES", "AUTH_ARCHIVE_READ", "AUTH_ARCHIVE_WRITE", "AUTH_ARCHIVE_ADMIN", "AUTH_CREATE_NOTE", "AUTH_CREATE_NOTE_TEMPLATE", "AUTH_INVOICING", "AUTH_OFFER_ADMIN", "AUTH_ORDER_ADMIN", "AUTH_CREATE_OFFER", "AUTH_CREATE_ORDER", "AUTH_FACTORING_EXPORT", "AUTH_INVOICE_ADMIN_SETTINGS", "AUTH_PROJECT_MANAGER", "AUTH_PROJECT_MANAGER_COMPANY", "AUTH_DEPARTMENT_REPORT", "AUTH_CREATE_PROJECT", "AUTH_PROJECT_EXTRA_COSTS", "AUTH_PROJECT_INFO", "AUTH_PROJECT_ADMIN_SETTINGS", "AUTH_PROJECT_OWN_PROJECT_RESULT_REPORT", "AUTH_PROJECT_CONTROL_FORMS", "AUTH_PRODUCT_ADMIN", "AUTH_PRODUCT_NET_PRICE", "AUTH_PURCHASING_MANAGER", "REPORT_ADMINISTRATOR", "REPORT_AUTHOR", "AUTH_COMPANY_WAGE_ADMIN", "AUTH_WAGE_ADMIN_SETTINGS", "AUTH_WAGE_INFORMATION", "AUTH_TASK_ADMIN", "AUTH_HOURS_COMPANY", "AUTH_HOUR_STATISTICS_COMPANY", "AUTH_HOURLIST", "AUTH_HOURLIST_SETTINGS", "AUTH_HOLYDAY_PLAN", "AUTH_TRAVEL_REPORTS_COMPANY", "AUTH_TRAVEL_REPORT", "AUTH_TRAVEL_EXPENSE_ADMIN_SETTINGS", "AUTH_VOUCHER_EXPORT", "AUTH_INBOX_VOUCHER", "AUTH_INCOMPLETE_VOUCHERS", "AUTH_INCOMING_INVOICE", "AUTH_VOUCHER_SETTINGS", "AUTH_BANK_RECONCILIATION", "AUTH_VAT_REPORT", "AUTH_SICKNESS_REIMBURSEMENT", "AUTH_REGISTER_INCOME", "AUTH_ADVANCED_VOUCHER", "AUTH_VOUCHER_IMPORT", "AUTH_PRODUCT_INVOICE", "AUTH_CUSTOMS_DECLARATION", "AUTH_VOUCHER_AUTOMATION", "AUTH_REMIT_FILES_VOUCHER_OVERVIEW", "YEAR_END_REPORT_ADMINISTRATOR" ] + } + }, + "reversedDependencies" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ROLE_ADMINISTRATOR", "AUTH_READ_ONLY", "AUTH_LOGIN", "AUTH_ALL_VOUCHERS", "AUTH_COMPANY_ACCOUNTING_REPORTS", "AUTH_ACCOUNTING_SETTINGS", "AUTH_COMPANY_RESULT_BUDGET", "AUTH_COMPANY_CUSTOMER_ACCOUNTING_REPORTS", "AUTH_COMPANY_VENDOR_ACCOUNTING_REPORTS", "AUTH_COMPANY_EMPLOYEE_ACCOUNTING_REPORTS", "AUTH_COMPANY_ASSET_ACCOUNTING_REPORTS", "AUTH_COMPANY_ATTESTOR", "AUTH_DIRECT_REMIT_ADMIN", "AUTH_DIRECT_REMIT_LIGHT", "AUTH_MANAGE_BANK_ACCOUNT_NUMBERS", "AUTH_DIRECT_REMIT_CREATE_NEW", "AUTH_DIRECT_REMIT_ADMIN_ZTL", "AUTH_COMPANY_ADMIN", "AUTH_EMPLOYEE_INFO", "AUTH_COMPANY_EMPLOYEE_ADMIN", "AUTH_CUSTOMER_ADMIN", "AUTH_CUSTOMER_INFO", "AUTH_CREATE_CUSTOMER", "AUTH_INBOX_ARCHIVE_ALL_EMPLOYEES", "AUTH_ARCHIVE_READ", "AUTH_ARCHIVE_WRITE", "AUTH_ARCHIVE_ADMIN", "AUTH_CREATE_NOTE", "AUTH_CREATE_NOTE_TEMPLATE", "AUTH_INVOICING", "AUTH_OFFER_ADMIN", "AUTH_ORDER_ADMIN", "AUTH_CREATE_OFFER", "AUTH_CREATE_ORDER", "AUTH_FACTORING_EXPORT", "AUTH_INVOICE_ADMIN_SETTINGS", "AUTH_PROJECT_MANAGER", "AUTH_PROJECT_MANAGER_COMPANY", "AUTH_DEPARTMENT_REPORT", "AUTH_CREATE_PROJECT", "AUTH_PROJECT_EXTRA_COSTS", "AUTH_PROJECT_INFO", "AUTH_PROJECT_ADMIN_SETTINGS", "AUTH_PROJECT_OWN_PROJECT_RESULT_REPORT", "AUTH_PROJECT_CONTROL_FORMS", "AUTH_PRODUCT_ADMIN", "AUTH_PRODUCT_NET_PRICE", "AUTH_PURCHASING_MANAGER", "REPORT_ADMINISTRATOR", "REPORT_AUTHOR", "AUTH_COMPANY_WAGE_ADMIN", "AUTH_WAGE_ADMIN_SETTINGS", "AUTH_WAGE_INFORMATION", "AUTH_TASK_ADMIN", "AUTH_HOURS_COMPANY", "AUTH_HOUR_STATISTICS_COMPANY", "AUTH_HOURLIST", "AUTH_HOURLIST_SETTINGS", "AUTH_HOLYDAY_PLAN", "AUTH_TRAVEL_REPORTS_COMPANY", "AUTH_TRAVEL_REPORT", "AUTH_TRAVEL_EXPENSE_ADMIN_SETTINGS", "AUTH_VOUCHER_EXPORT", "AUTH_INBOX_VOUCHER", "AUTH_INCOMPLETE_VOUCHERS", "AUTH_INCOMING_INVOICE", "AUTH_VOUCHER_SETTINGS", "AUTH_BANK_RECONCILIATION", "AUTH_VAT_REPORT", "AUTH_SICKNESS_REIMBURSEMENT", "AUTH_REGISTER_INCOME", "AUTH_ADVANCED_VOUCHER", "AUTH_VOUCHER_IMPORT", "AUTH_PRODUCT_INVOICE", "AUTH_CUSTOMS_DECLARATION", "AUTH_VOUCHER_AUTOMATION", "AUTH_REMIT_FILES_VOUCHER_OVERVIEW", "YEAR_END_REPORT_ADMINISTRATOR" ] + } + } + }, + "readOnly" : true + }, + "ResponseWrapperListAccountantClientAccessModel" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountantClientAccessModel" + } + } + } + }, + "Category" : { + "type" : "object", + "properties" : { + "category" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "GENERAL", "ACCOUNTING", "VOUCHER_APPROVAL", "BANK", "COMPANY", "CUSTOMER", "DOCUMENT", "INVOICING", "PROJECT", "PRODUCT", "REPORT", "WAGE", "TASK", "HOUR_LIST", "TRAVEL_REPORT", "VOUCHER", "YEAR_END_REPORT" ] + }, + "description" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperListRoleCategoryContainer" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/RoleCategoryContainer" + } + } + } + }, + "RoleCategoryContainer" : { + "type" : "object", + "properties" : { + "category" : { + "$ref" : "#/components/schemas/Category" + }, + "roleContainers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ROLE_ADMINISTRATOR", "AUTH_READ_ONLY", "AUTH_LOGIN", "AUTH_ALL_VOUCHERS", "AUTH_COMPANY_ACCOUNTING_REPORTS", "AUTH_ACCOUNTING_SETTINGS", "AUTH_COMPANY_RESULT_BUDGET", "AUTH_COMPANY_CUSTOMER_ACCOUNTING_REPORTS", "AUTH_COMPANY_VENDOR_ACCOUNTING_REPORTS", "AUTH_COMPANY_EMPLOYEE_ACCOUNTING_REPORTS", "AUTH_COMPANY_ASSET_ACCOUNTING_REPORTS", "AUTH_COMPANY_ATTESTOR", "AUTH_DIRECT_REMIT_ADMIN", "AUTH_DIRECT_REMIT_LIGHT", "AUTH_MANAGE_BANK_ACCOUNT_NUMBERS", "AUTH_DIRECT_REMIT_CREATE_NEW", "AUTH_DIRECT_REMIT_ADMIN_ZTL", "AUTH_COMPANY_ADMIN", "AUTH_EMPLOYEE_INFO", "AUTH_COMPANY_EMPLOYEE_ADMIN", "AUTH_CUSTOMER_ADMIN", "AUTH_CUSTOMER_INFO", "AUTH_CREATE_CUSTOMER", "AUTH_INBOX_ARCHIVE_ALL_EMPLOYEES", "AUTH_ARCHIVE_READ", "AUTH_ARCHIVE_WRITE", "AUTH_ARCHIVE_ADMIN", "AUTH_CREATE_NOTE", "AUTH_CREATE_NOTE_TEMPLATE", "AUTH_INVOICING", "AUTH_OFFER_ADMIN", "AUTH_ORDER_ADMIN", "AUTH_CREATE_OFFER", "AUTH_CREATE_ORDER", "AUTH_FACTORING_EXPORT", "AUTH_INVOICE_ADMIN_SETTINGS", "AUTH_PROJECT_MANAGER", "AUTH_PROJECT_MANAGER_COMPANY", "AUTH_DEPARTMENT_REPORT", "AUTH_CREATE_PROJECT", "AUTH_PROJECT_EXTRA_COSTS", "AUTH_PROJECT_INFO", "AUTH_PROJECT_ADMIN_SETTINGS", "AUTH_PROJECT_OWN_PROJECT_RESULT_REPORT", "AUTH_PROJECT_CONTROL_FORMS", "AUTH_PRODUCT_ADMIN", "AUTH_PRODUCT_NET_PRICE", "AUTH_PURCHASING_MANAGER", "REPORT_ADMINISTRATOR", "REPORT_AUTHOR", "AUTH_COMPANY_WAGE_ADMIN", "AUTH_WAGE_ADMIN_SETTINGS", "AUTH_WAGE_INFORMATION", "AUTH_TASK_ADMIN", "AUTH_HOURS_COMPANY", "AUTH_HOUR_STATISTICS_COMPANY", "AUTH_HOURLIST", "AUTH_HOURLIST_SETTINGS", "AUTH_HOLYDAY_PLAN", "AUTH_TRAVEL_REPORTS_COMPANY", "AUTH_TRAVEL_REPORT", "AUTH_TRAVEL_EXPENSE_ADMIN_SETTINGS", "AUTH_VOUCHER_EXPORT", "AUTH_INBOX_VOUCHER", "AUTH_INCOMPLETE_VOUCHERS", "AUTH_INCOMING_INVOICE", "AUTH_VOUCHER_SETTINGS", "AUTH_BANK_RECONCILIATION", "AUTH_VAT_REPORT", "AUTH_SICKNESS_REIMBURSEMENT", "AUTH_REGISTER_INCOME", "AUTH_ADVANCED_VOUCHER", "AUTH_VOUCHER_IMPORT", "AUTH_PRODUCT_INVOICE", "AUTH_CUSTOMS_DECLARATION", "AUTH_VOUCHER_AUTOMATION", "AUTH_REMIT_FILES_VOUCHER_OVERVIEW", "YEAR_END_REPORT_ADMINISTRATOR" ] + } + }, + "hidden" : { + "type" : "boolean" + } + } + }, + "ClientAccessTemplate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "roleContainers" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "ROLE_ADMINISTRATOR", "AUTH_READ_ONLY", "AUTH_LOGIN", "AUTH_ALL_VOUCHERS", "AUTH_COMPANY_ACCOUNTING_REPORTS", "AUTH_ACCOUNTING_SETTINGS", "AUTH_COMPANY_RESULT_BUDGET", "AUTH_COMPANY_CUSTOMER_ACCOUNTING_REPORTS", "AUTH_COMPANY_VENDOR_ACCOUNTING_REPORTS", "AUTH_COMPANY_EMPLOYEE_ACCOUNTING_REPORTS", "AUTH_COMPANY_ASSET_ACCOUNTING_REPORTS", "AUTH_COMPANY_ATTESTOR", "AUTH_DIRECT_REMIT_ADMIN", "AUTH_DIRECT_REMIT_LIGHT", "AUTH_MANAGE_BANK_ACCOUNT_NUMBERS", "AUTH_DIRECT_REMIT_CREATE_NEW", "AUTH_DIRECT_REMIT_ADMIN_ZTL", "AUTH_COMPANY_ADMIN", "AUTH_EMPLOYEE_INFO", "AUTH_COMPANY_EMPLOYEE_ADMIN", "AUTH_CUSTOMER_ADMIN", "AUTH_CUSTOMER_INFO", "AUTH_CREATE_CUSTOMER", "AUTH_INBOX_ARCHIVE_ALL_EMPLOYEES", "AUTH_ARCHIVE_READ", "AUTH_ARCHIVE_WRITE", "AUTH_ARCHIVE_ADMIN", "AUTH_CREATE_NOTE", "AUTH_CREATE_NOTE_TEMPLATE", "AUTH_INVOICING", "AUTH_OFFER_ADMIN", "AUTH_ORDER_ADMIN", "AUTH_CREATE_OFFER", "AUTH_CREATE_ORDER", "AUTH_FACTORING_EXPORT", "AUTH_INVOICE_ADMIN_SETTINGS", "AUTH_PROJECT_MANAGER", "AUTH_PROJECT_MANAGER_COMPANY", "AUTH_DEPARTMENT_REPORT", "AUTH_CREATE_PROJECT", "AUTH_PROJECT_EXTRA_COSTS", "AUTH_PROJECT_INFO", "AUTH_PROJECT_ADMIN_SETTINGS", "AUTH_PROJECT_OWN_PROJECT_RESULT_REPORT", "AUTH_PROJECT_CONTROL_FORMS", "AUTH_PRODUCT_ADMIN", "AUTH_PRODUCT_NET_PRICE", "AUTH_PURCHASING_MANAGER", "REPORT_ADMINISTRATOR", "REPORT_AUTHOR", "AUTH_COMPANY_WAGE_ADMIN", "AUTH_WAGE_ADMIN_SETTINGS", "AUTH_WAGE_INFORMATION", "AUTH_TASK_ADMIN", "AUTH_HOURS_COMPANY", "AUTH_HOUR_STATISTICS_COMPANY", "AUTH_HOURLIST", "AUTH_HOURLIST_SETTINGS", "AUTH_HOLYDAY_PLAN", "AUTH_TRAVEL_REPORTS_COMPANY", "AUTH_TRAVEL_REPORT", "AUTH_TRAVEL_EXPENSE_ADMIN_SETTINGS", "AUTH_VOUCHER_EXPORT", "AUTH_INBOX_VOUCHER", "AUTH_INCOMPLETE_VOUCHERS", "AUTH_INCOMING_INVOICE", "AUTH_VOUCHER_SETTINGS", "AUTH_BANK_RECONCILIATION", "AUTH_VAT_REPORT", "AUTH_SICKNESS_REIMBURSEMENT", "AUTH_REGISTER_INCOME", "AUTH_ADVANCED_VOUCHER", "AUTH_VOUCHER_IMPORT", "AUTH_PRODUCT_INVOICE", "AUTH_CUSTOMS_DECLARATION", "AUTH_VOUCHER_AUTOMATION", "AUTH_REMIT_FILES_VOUCHER_OVERVIEW", "YEAR_END_REPORT_ADMINISTRATOR" ] + } + } + }, + "readOnly" : true + }, + "ResponseWrapperListClientAccessTemplate" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientAccessTemplate" + } + } + } + }, + "AccountantCustomer" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseAccountantCustomer" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantCustomer" + } + } + } + }, + "ResponseWrapperClientAccessTemplate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ClientAccessTemplate" + } + } + }, + "ListResponseClientAccessTemplate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientAccessTemplate" + } + } + } + }, + "ClientForApproval" : { + "type" : "object", + "properties" : { + "clientId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authorized" : { + "type" : "boolean", + "readOnly" : true + }, + "forApprovalCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListClientForApproval" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientForApproval" + } + } + } + }, + "ClientForReview" : { + "type" : "object", + "properties" : { + "clientId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authorized" : { + "type" : "boolean", + "readOnly" : true + }, + "forReviewCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListClientForReview" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientForReview" + } + } + } + }, + "ClientInbox" : { + "type" : "object", + "properties" : { + "clientId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authorized" : { + "type" : "boolean", + "readOnly" : true + }, + "inboxCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListClientInbox" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientInbox" + } + } + } + }, + "ClientForRemit" : { + "type" : "object", + "properties" : { + "clientId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authorized" : { + "type" : "boolean", + "readOnly" : true + }, + "forPaymentCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListClientForRemit" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientForRemit" + } + } + } + }, + "ClientForTravelsAndExpenses" : { + "type" : "object", + "properties" : { + "clientId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authorized" : { + "type" : "boolean", + "readOnly" : true + }, + "forTravelsAndExpensesCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListClientForTravelsAndExpenses" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ClientForTravelsAndExpenses" + } + } + } + }, + "AccountantClient" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseAccountantClient" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountantClient" + } + } + } + }, + "TodoListItemStatus" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "enum" : [ "OVERDUE", "NOT_STARTED", "INCOMPLETE", "COMPLETED", "NOT_APPLICABLE" ] + }, + "message" : { + "type" : "string" + }, + "lastUpdatedBy" : { + "type" : "string" + }, + "lastUpdatedDate" : { + "type" : "string" + } + } + }, + "TodoListSingleChanges" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "enum" : [ "CUSTOM", "HARMONIZATION", "VAT_RETURNS", "AMELDING", "WAGE_TRANSACTIONS", "PERIOD_OVERVIEW", "ANNUAL_ACCOUNTS" ] + }, + "customerId" : { + "type" : "integer", + "format" : "int32" + }, + "periodStart" : { + "type" : "string", + "description" : "The start period" + }, + "originalDate" : { + "type" : "string", + "description" : "The original date" + }, + "customDate" : { + "type" : "string", + "description" : "The customized date" + }, + "originalAccountManagerId" : { + "type" : "integer", + "format" : "int32" + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32" + }, + "originalStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + } + } + }, + "ResponseWrapperListTodoListAmelding" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TodoListAmelding" + } + } + } + }, + "TodoListAmelding" : { + "type" : "object", + "properties" : { + "itemIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customAccountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "customDueDate" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "expandedDetails" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TodoListExpandedDetail" + } + } + } + }, + "TodoListExpandedDetail" : { + "type" : "object", + "properties" : { + "category" : { + "type" : "string", + "enum" : [ "RECONCILIATION_BANK", "RECONCILIATION_LEDGER", "RECONCILIATION_CUSTOMER", "RECONCILIATION_VENDOR", "RECONCILIATION_WAGE", "AMELDING_EMPLOYMENT", "AMELDING_WAGE_TRANSACTION", "WAGE_TRANSACTION_PAID_MANDATORY_DEDUCTION", "WAGE_TRANSACTION_PAID_TAX_DEDUCTION", "WAGE_TRANSACTION_PAID_PAYROLL_TAX" ] + }, + "description" : { + "type" : "string" + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "url" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ResponseWrapperListTodoListAnnualAccounts" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TodoListAnnualAccounts" + } + } + } + }, + "TodoListAnnualAccounts" : { + "type" : "object", + "properties" : { + "itemIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customAccountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "customDueDate" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseCompany" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Company" + } + } + } + }, + "ResponseWrapperListTodoListHarmonization" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TodoListHarmonization" + } + } + } + }, + "TodoListHarmonization" : { + "type" : "object", + "properties" : { + "itemIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customAccountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "customDueDate" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "expandedDetails" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TodoListExpandedDetail" + } + } + } + }, + "ResponseWrapperListTodoListPeriodOverview" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TodoListPeriodOverview" + } + } + } + }, + "TodoListPeriodOverview" : { + "type" : "object", + "properties" : { + "itemIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customAccountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "customDueDate" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListTodoListVat" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TodoListVat" + } + } + } + }, + "TodoListVat" : { + "type" : "object", + "properties" : { + "itemIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customAccountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "customDueDate" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListTodoListWageTransaction" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TodoListWageTransaction" + } + } + } + }, + "TodoListWageTransaction" : { + "type" : "object", + "properties" : { + "itemIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customAccountManagerName" : { + "type" : "string", + "readOnly" : true + }, + "customAccountManagerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "customStatus" : { + "$ref" : "#/components/schemas/TodoListItemStatus" + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "customDueDate" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "expandedDetails" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TodoListExpandedDetail" + } + } + } + }, + "ResponseWrapperTodoListComment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TodoListComment" + } + } + }, + "TodoListComment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "type" : { + "type" : "string" + }, + "periodStart" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "createdAt" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseTodoListComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TodoListComment" + } + } + } + }, + "ApiConsumer" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "consumerName" : { + "type" : "string" + }, + "emails" : { + "type" : "string" + } + } + }, + "ResponseWrapperApiConsumer" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ApiConsumer" + } + } + }, + "ListResponseApiConsumer" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ApiConsumer" + } + } + } + }, + "ConsumerToken" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "apiConsumer" : { + "$ref" : "#/components/schemas/ApiConsumer" + }, + "token" : { + "type" : "string" + }, + "expirationDate" : { + "type" : "string" + } + } + }, + "ResponseWrapperConsumerToken" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ConsumerToken" + } + } + }, + "ApiError" : { + "type" : "object", + "properties" : { + "status" : { + "type" : "integer", + "format" : "int32" + }, + "code" : { + "type" : "integer", + "format" : "int32" + }, + "message" : { + "type" : "string" + }, + "link" : { + "type" : "string" + }, + "developerMessage" : { + "type" : "string" + }, + "validationMessages" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ApiValidationMessage" + } + }, + "requestId" : { + "type" : "string" + } + } + }, + "ApiValidationMessage" : { + "type" : "object", + "properties" : { + "field" : { + "type" : "string", + "readOnly" : true + }, + "message" : { + "type" : "string", + "readOnly" : true + }, + "path" : { + "type" : "string", + "readOnly" : true + }, + "rootId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "EmployeeToken" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "apiConsumer" : { + "$ref" : "#/components/schemas/ApiConsumer" + }, + "token" : { + "type" : "string" + }, + "expirationDate" : { + "type" : "string" + } + } + }, + "ResponseWrapperEmployeeToken" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeToken" + } + } + }, + "EmployeeTokenBundle" : { + "type" : "object", + "properties" : { + "employeeToken" : { + "$ref" : "#/components/schemas/EmployeeToken" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "robotEmployee" : { + "$ref" : "#/components/schemas/Employee" + } + } + }, + "ResponseWrapperEmployeeTokenBundle" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeTokenBundle" + } + } + }, + "EmployeeCompany" : { + "type" : "object", + "properties" : { + "isDefault" : { + "type" : "boolean" + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "isSuspended" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ListResponseEmployeeCompany" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeCompany" + } + } + } + }, + "VismaConnectMobileAppTokens" : { + "type" : "object", + "properties" : { + "idToken" : { + "type" : "string", + "description" : "Id token from Visma Connect" + }, + "accessToken" : { + "type" : "string", + "description" : "Access token from Visma Connect" + } + } + }, + "InternalIntegrationCreated" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "label" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "technicalContactEmail" : { + "type" : "string", + "readOnly" : true + }, + "expirationDate" : { + "type" : "string", + "readOnly" : true + }, + "createdDate" : { + "type" : "string", + "readOnly" : true + }, + "createdByName" : { + "type" : "string", + "readOnly" : true + }, + "createdByEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "robotEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "lastUsedDate" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "Computed token status: active, expiring_soon, expired, or inactive", + "readOnly" : true, + "enum" : [ "active", "expiring_soon", "expired", "inactive" ] + }, + "token" : { + "type" : "string", + "description" : "The JWT refresh token (tlxr_ prefix). Only returned once at creation time.", + "readOnly" : true + }, + "tokenDeleted" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperInternalIntegrationCreated" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InternalIntegrationCreated" + } + } + }, + "CreateInternalIntegrationRequest" : { + "type" : "object", + "properties" : { + "label" : { + "type" : "string", + "description" : "Label for the integration" + }, + "description" : { + "type" : "string", + "description" : "Description of the integration" + }, + "expirationDate" : { + "type" : "string", + "description" : "Expiration date (YYYY-MM-DD). Null for no expiration." + }, + "technicalContactEmail" : { + "type" : "string", + "description" : "Technical contact email for the integration" + } + } + }, + "InternalIntegration" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "label" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "technicalContactEmail" : { + "type" : "string", + "readOnly" : true + }, + "expirationDate" : { + "type" : "string", + "readOnly" : true + }, + "createdDate" : { + "type" : "string", + "readOnly" : true + }, + "createdByName" : { + "type" : "string", + "readOnly" : true + }, + "createdByEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "robotEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "lastUsedDate" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "Computed token status: active, expiring_soon, expired, or inactive", + "readOnly" : true, + "enum" : [ "active", "expiring_soon", "expired", "inactive" ] + }, + "tokenDeleted" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ResponseWrapperInternalIntegration" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InternalIntegration" + } + } + }, + "UpdateInternalIntegrationRequest" : { + "type" : "object", + "properties" : { + "expirationDate" : { + "type" : "string", + "description" : "New expiration date (YYYY-MM-DD). Null for no expiration." + } + } + }, + "ListResponseInternalIntegration" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InternalIntegration" + } + } + } + }, + "AutoLogin" : { + "type" : "object", + "properties" : { + "loginUrl" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperAutoLogin" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AutoLogin" + } + } + }, + "AutoLoginPayload" : { + "type" : "object", + "properties" : { + "redirectPath" : { + "type" : "string" + } + } + }, + "ResponseWrapperSessionToken" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SessionToken" + } + } + }, + "SessionToken" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "consumerToken" : { + "$ref" : "#/components/schemas/ConsumerToken" + }, + "employeeToken" : { + "$ref" : "#/components/schemas/EmployeeToken" + }, + "expirationDate" : { + "type" : "string" + }, + "token" : { + "type" : "string" + } + } + }, + "PostSessionTokenFromRefreshTokenBody" : { + "type" : "object", + "properties" : { + "refreshToken" : { + "maxLength" : 2000, + "minLength" : 10, + "type" : "string", + "description" : "JWT refresh token (tlxr_ prefix) combining consumer and employee tokens" + }, + "ttlSeconds" : { + "maximum" : 28800, + "minimum" : 300, + "type" : "integer", + "description" : "Session token time-to-live in seconds (min 300 = 5 minutes, max 28800 = 8 hours)", + "format" : "int32" + } + } + }, + "PostSessionTokenBody" : { + "type" : "object", + "properties" : { + "employeeToken" : { + "type" : "string", + "description" : "Token of the API consumer" + }, + "consumerToken" : { + "type" : "string", + "description" : "The employee's token" + }, + "expirationDate" : { + "type" : "string", + "description" : "Expiration date for the combined token" + } + } + }, + "ResponseWrapperLoggedInUserInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LoggedInUserInfo" + } + } + }, + "ResponseWrapperCompany" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Company" + } + } + }, + "CurrentCompany" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "faxNumber" : { + "type" : "string" + }, + "homePage" : { + "type" : "string" + }, + "isTaxPayer" : { + "type" : "boolean" + }, + "language" : { + "type" : "string", + "enum" : [ "NO", "EN" ] + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "type" : { + "type" : "string", + "enum" : [ "NONE", "ENK", "AS", "NUF", "ANS", "DA", "PRE", "KS", "ASA", "BBL", "BRL", "GFS", "SPA", "SF", "IKS", "KF_FKF", "FCD", "EOFG", "BA", "STI", "ORG", "ESEK", "SA", "SAM", "BO", "VPFO", "OS", "FLI", "Other" ] + } + } + }, + "ResponseWrapperCurrentCompany" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CurrentCompany" + } + } + }, + "UpdateCurrentCompany" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "faxNumber" : { + "type" : "string" + }, + "homePage" : { + "type" : "string" + }, + "isTaxPayer" : { + "type" : "boolean" + }, + "language" : { + "type" : "string", + "enum" : [ "NO", "EN" ] + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "type" : { + "type" : "string", + "enum" : [ "NONE", "ENK", "AS", "NUF", "ANS", "DA", "PRE", "KS", "ASA", "BBL", "BRL", "GFS", "SPA", "SF", "IKS", "KF_FKF", "FCD", "EOFG", "BA", "STI", "ORG", "ESEK", "SA", "SAM", "BO", "VPFO", "OS", "FLI", "Other" ] + } + } + }, + "AltinnCompanyModule" : { + "type" : "object", + "properties" : { + "altInnId" : { + "type" : "integer", + "format" : "int32" + }, + "altInnPassword" : { + "type" : "string" + } + } + }, + "ResponseWrapperAltinnCompanyModule" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AltinnCompanyModule" + } + } + }, + "CompanyAuthority" : { + "type" : "object", + "properties" : { + "hasCompanyAuthority" : { + "type" : "string", + "enum" : [ "DENIED", "MANUAL_CHECK", "ACCEPTED" ] + } + } + }, + "ResponseWrapperCompanyAuthority" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyAuthority" + } + } + }, + "BrregCompanyLookup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "address" : { + "type" : "string", + "readOnly" : true + }, + "postalCode" : { + "type" : "string", + "readOnly" : true + }, + "postalArea" : { + "type" : "string", + "readOnly" : true + }, + "businessAddress" : { + "type" : "string", + "readOnly" : true + }, + "businessPostalCode" : { + "type" : "string", + "readOnly" : true + }, + "businessPostalArea" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Lookup of organization number from smartScan", + "readOnly" : true + }, + "ListResponseBrregCompanyLookup" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BrregCompanyLookup" + } + } + } + }, + "Modules" : { + "type" : "object", + "properties" : { + "accounting" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "invoice" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "salary" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "salaryStartDate" : { + "type" : "string" + }, + "project" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "ocr" : { + "type" : "boolean" + }, + "autoPayOcr" : { + "type" : "boolean" + }, + "remit" : { + "type" : "boolean" + }, + "electronicVouchers" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "electro" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "vvs" : { + "type" : "boolean", + "description" : "Not readable. Only for input." + }, + "agro" : { + "type" : "boolean" + }, + "mamut" : { + "type" : "boolean" + }, + "approveVoucher" : { + "type" : "boolean", + "description" : "Only readable for now", + "readOnly" : true + }, + "moduleprojecteconomy" : { + "type" : "boolean" + }, + "moduleemployee" : { + "type" : "boolean" + }, + "moduleContact" : { + "type" : "boolean" + }, + "modulecustomer" : { + "type" : "boolean" + }, + "modulenrf" : { + "type" : "boolean" + }, + "moduleelectro" : { + "type" : "boolean" + }, + "moduleRackbeat" : { + "type" : "boolean" + }, + "moduleOrderOut" : { + "type" : "boolean" + }, + "moduledepartment" : { + "type" : "boolean" + }, + "moduleprojectcategory" : { + "type" : "boolean" + }, + "moduleinvoice" : { + "type" : "boolean" + }, + "moduleCurrency" : { + "type" : "boolean" + }, + "moduleProjectBudget" : { + "type" : "boolean" + }, + "moduleProduct" : { + "type" : "boolean" + }, + "moduleQuantityHandling" : { + "type" : "boolean" + }, + "completeMonthlyHourLists" : { + "type" : "boolean" + }, + "moduleDepartmentAccounting" : { + "type" : "boolean" + }, + "moduleWageProjectAccounting" : { + "type" : "boolean" + }, + "moduleProjectAccounting" : { + "type" : "boolean", + "description" : "read only", + "readOnly" : true + }, + "moduleProductAccounting" : { + "type" : "boolean", + "description" : "read only", + "readOnly" : true + }, + "moduleVacationBalance" : { + "type" : "boolean", + "description" : "read only", + "readOnly" : true + }, + "moduleHolydayPlan" : { + "type" : "boolean", + "description" : "read only", + "readOnly" : true + }, + "moduleAccountantConnectClient" : { + "type" : "boolean", + "description" : "read only", + "readOnly" : true + }, + "moduleMultipleLedgers" : { + "type" : "boolean" + }, + "moduleFixedAssetRegister" : { + "type" : "boolean", + "description" : "read only", + "readOnly" : true + }, + "moduleDigitalSignature" : { + "type" : "boolean" + }, + "moduleLogistics" : { + "type" : "boolean" + }, + "moduleLogisticsLight" : { + "type" : "boolean" + }, + "moduleproject" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperModules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Modules" + } + } + }, + "ListResponseSalesModule" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalesModule" + } + } + } + }, + "SalesModule" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "enum" : [ "MAMUT", "MAMUT_WITH_WAGE", "AGRO_LICENCE", "AGRO_CLIENT", "AGRO_DOCUMENT_CENTER", "AGRO_INVOICE", "AGRO_INVOICE_MIGRATED", "AGRO_WAGE", "NO1TS", "NO1TS_TRAVELREPORT", "NO1TS_ACCOUNTING", "DIYPACKAGE", "BASIS", "SMART", "KOMPLETT", "VVS", "ELECTRO", "ACCOUNTING_OFFICE", "WAGE", "SMART_WAGE", "TIME_TRACKING", "SMART_TIME_TRACKING", "SMART_PROJECT", "OCR", "API_V2", "ELECTRONIC_VOUCHERS", "UP_TO_100_VOUCHERS", "UP_TO_500_VOUCHERS", "UP_TO_1000_VOUCHERS", "UP_TO_2000_VOUCHERS", "UP_TO_3500_VOUCHERS", "UP_TO_5000_VOUCHERS", "UP_TO_10000_VOUCHERS", "UNLIMITED_VOUCHERS", "UP_TO_100_VOUCHERS_AUTOMATION", "UP_TO_500_VOUCHERS_AUTOMATION", "UP_TO_1000_VOUCHERS_AUTOMATION", "UP_TO_2000_VOUCHERS_AUTOMATION", "UP_TO_3500_VOUCHERS_AUTOMATION", "UP_TO_5000_VOUCHERS_AUTOMATION", "UP_TO_10000_VOUCHERS_AUTOMATION", "UNLIMITED_VOUCHERS_AUTOMATION", "LOGISTICS", "MIKRO", "AUTOPLUS_MINI", "AUTOPLUS_MEDIUM", "AUTOPLUS_STOR", "INTEGRATION_PARTNER", "PROJECT", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "STICOS", "PRO", "FIXED_ASSETS_REGISTER", "ZTL" ] + }, + "costStartDate" : { + "type" : "string" + } + }, + "description" : "Sales modules (functionality in the application) to activate for the newly created account. Some modules have extra costs." + }, + "ResponseWrapperSalesModule" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalesModule" + } + } + }, + "CompanyRepresentative" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "roleInCompany" : { + "type" : "string", + "enum" : [ "UNKNOWN", "DAGL", "LEDE", "NEST", "MEDL", "DTPR", "DTSO", "KOMP", "INNH", "SIGN", "SIFE", "SIHV", "PROK", "POFE", "POHV" ] + }, + "birthdate" : { + "type" : "string", + "description" : "birthdate", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "signatureStatus" : { + "type" : "string", + "enum" : [ "NOT_SIGNED", "PENDING_SIGNATURE", "SIGNED", "NOT_A_SIGNER" ] + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "email" : { + "type" : "string" + }, + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "canReceiveReminder" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ResponseWrapperContact" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Contact" + } + } + }, + "ListResponseContact" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Contact" + } + } + } + }, + "ActionBlock" : { + "type" : "object", + "description" : "Single action item block", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "actionListId" : { + "type" : "string" + }, + "id" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "enum" : [ "IN_PROGRESS", "SUCCESS", "FAILED", "REJECTED" ] + }, + "header" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "url" : { + "type" : "string" + } + } + } ] + }, + "ActionListBlock" : { + "type" : "object", + "description" : "Action list header block", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "title" : { + "type" : "string" + }, + "id" : { + "type" : "string" + } + } + } ] + }, + "ActionUpdateBlock" : { + "type" : "object", + "description" : "Action status update block", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "actionListId" : { + "type" : "string" + }, + "actionId" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "enum" : [ "IN_PROGRESS", "SUCCESS", "FAILED", "REJECTED" ] + }, + "url" : { + "type" : "string" + }, + "resolvedLabel" : { + "type" : "string" + }, + "resolvedDescription" : { + "type" : "string" + }, + "resolvedMessage" : { + "type" : "string" + }, + "finalStep" : { + "type" : "boolean" + } + } + } ] + }, + "ActionUpdateRef" : { + "type" : "object", + "properties" : { + "actionId" : { + "type" : "string" + }, + "status" : { + "type" : "string" + } + } + }, + "AssistantResponseBlock" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string" + } + }, + "description" : "Base type for assistant response blocks", + "discriminator" : { + "propertyName" : "type" + } + }, + "AssistantResponseBlocks" : { + "type" : "object", + "properties" : { + "blocks" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AssistantResponseBlock" + } + } + }, + "description" : "Container for response blocks that form a complete assistant response" + }, + "ChartDatapoint" : { + "type" : "object", + "properties" : { + "xValue" : { + "type" : "string" + }, + "dataSeriesPoints" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DataSeriesPoint" + } + } + }, + "description" : "Chart data point" + }, + "ChartSeries" : { + "type" : "object", + "properties" : { + "key" : { + "type" : "string", + "readOnly" : true + }, + "color" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "One series on a chart slot", + "readOnly" : true + }, + "ChartSpec" : { + "type" : "object", + "properties" : { + "slot" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "narration_label" : { + "type" : "string", + "readOnly" : true + }, + "xKey" : { + "type" : "string", + "readOnly" : true + }, + "series" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ChartSeries" + } + }, + "data" : { + "type" : "object", + "description" : "Chart row data — list of row objects, keys vary by chart type", + "readOnly" : true + }, + "yAxisFormat" : { + "type" : "string", + "readOnly" : true + }, + "xAxisLabel" : { + "type" : "string", + "readOnly" : true + }, + "yAxisLabel" : { + "type" : "string", + "readOnly" : true + }, + "xAxisInterval" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "One chart on a section page", + "readOnly" : true + }, + "ChartSummary" : { + "type" : "object", + "properties" : { + "header" : { + "type" : "number", + "format" : "double" + }, + "label" : { + "type" : "string" + } + }, + "description" : "Chart summary information" + }, + "CopilotApiCaller" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "response" : { + "type" : "string" + }, + "urlParameters" : { + "type" : "string" + }, + "visualization" : { + "type" : "string" + } + }, + "description" : "list of CopilotApiCaller" + }, + "CopilotFollowUpQuestion" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "followUpQuestion" : { + "type" : "string" + }, + "existing" : { + "type" : "boolean" + }, + "sourceAgent" : { + "type" : "string" + } + }, + "description" : "List of follow-up questions" + }, + "CopilotReportAnalyzer" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "response" : { + "type" : "string" + }, + "responseType" : { + "type" : "string" + }, + "report" : { + "type" : "string" + }, + "filters" : { + "type" : "string" + }, + "visualization" : { + "type" : "string" + } + }, + "description" : "Response from analysis" + }, + "CopilotRequest" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "userId" : { + "type" : "integer", + "format" : "int32" + }, + "userRequestedAgent" : { + "type" : "string", + "enum" : [ "ASSISTANT", "SUPPORT", "STICOS", "INSIGHT", "INSIGHT_REPORT", "INSIGHT_INVOICE", "GENERAL_LLM", "API_CALLER", "ERROR", "SALARY_OVERVIEW", "LEDGER_OVERVIEW", "SUPPLIER_SUB_LEDGER", "ACTION_TIMESHEET_ENTRY", "ACTION_EXPENSE", "ACTION", "INSIGHT_ANOMALY", "EMPLOYEE_ROLE", "PROACTIVE_INSIGHTS" ] + }, + "model" : { + "type" : "string", + "enum" : [ "SUPPORT_ARTICLES", "ACCOUNTPLAN", "DATA_ANALYZER", "TRIPLETEX_COPILOT", "TEST", "REPORT_MODEL", "STICOS", "COPILOT_URL_NAVIGATION_INVOICE", "COPILOT_REPORT_ANALYZER", "COPILOT_API_CALLER", "GENERAL_LLM", "ACTION" ] + }, + "prompt" : { + "type" : "string" + }, + "isConversationStarter" : { + "type" : "integer", + "format" : "int32" + }, + "isFollowUpQuestion" : { + "type" : "integer", + "format" : "int32" + }, + "quickPromptOrder" : { + "type" : "integer", + "format" : "int32" + }, + "fileAttachments" : { + "type" : "array", + "description" : "File attachments (with metadata) attached to this request", + "items" : { + "$ref" : "#/components/schemas/FileAttachment" + } + }, + "conversationGroupKey" : { + "type" : "string", + "description" : "UUID to group messages into a conversation. Generated by client for new conversations, also sent by client on follow-ups." + }, + "title" : { + "type" : "string", + "description" : "Conversation title, only set on first copilot request in session." + } + } + }, + "CopilotResponse" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "copilotRequest" : { + "$ref" : "#/components/schemas/CopilotRequest" + }, + "supportAIConversationMessage" : { + "$ref" : "#/components/schemas/SupportAIConversationMessage" + }, + "sticosConversationMessage" : { + "$ref" : "#/components/schemas/SticosConversationMessage" + }, + "responseStartTimestamp" : { + "type" : "string" + }, + "responseEndTimestamp" : { + "type" : "string" + }, + "errorCode" : { + "type" : "string", + "enum" : [ "NO_ERROR", "OTHER_ERROR", "COPILOT_INVALID_FORMAT", "SUPPORT_AI_SERVER_ERROR", "SUPPORT_AI_SERVER_UNAVAILABLE", "COPILOT_INCOMPLETE_RESPONSE" ] + }, + "source" : { + "type" : "string", + "enum" : [ "SUPPORT", "STICOS", "ACCOUNT_PLAN", "COPILOT_URL_NAVIGATION", "COPILOT_REPORT_ANALYZER", "COPILOT_API_CALLER", "SPRING_AI", "GENERAL_LLM", "PROACTIVE_INSIGHTS" ] + }, + "sourceAgent" : { + "type" : "string", + "enum" : [ "ASSISTANT", "SUPPORT", "STICOS", "INSIGHT", "INSIGHT_REPORT", "INSIGHT_INVOICE", "GENERAL_LLM", "API_CALLER", "ERROR", "SALARY_OVERVIEW", "LEDGER_OVERVIEW", "SUPPLIER_SUB_LEDGER", "ACTION_TIMESHEET_ENTRY", "ACTION_EXPENSE", "ACTION", "INSIGHT_ANOMALY", "EMPLOYEE_ROLE", "PROACTIVE_INSIGHTS" ] + }, + "preferredModel" : { + "type" : "string", + "enum" : [ "SUPPORT", "STICOS", "ACCOUNT_PLAN", "COPILOT_URL_NAVIGATION", "COPILOT_REPORT_ANALYZER", "COPILOT_API_CALLER", "SPRING_AI", "GENERAL_LLM", "PROACTIVE_INSIGHTS" ] + }, + "routerPreferredAgent" : { + "type" : "string", + "enum" : [ "ASSISTANT", "SUPPORT", "STICOS", "INSIGHT", "INSIGHT_REPORT", "INSIGHT_INVOICE", "GENERAL_LLM", "API_CALLER", "ERROR", "SALARY_OVERVIEW", "LEDGER_OVERVIEW", "SUPPLIER_SUB_LEDGER", "ACTION_TIMESHEET_ENTRY", "ACTION_EXPENSE", "ACTION", "INSIGHT_ANOMALY", "EMPLOYEE_ROLE", "PROACTIVE_INSIGHTS" ] + }, + "responseType" : { + "type" : "string", + "enum" : [ "ANSWER", "NO_ANSWER", "TALK_TO_SUPPORT" ] + }, + "feedback" : { + "type" : "string", + "enum" : [ "NO_FEEDBACK", "THUMBS_UP", "THUMBS_DOWN" ] + }, + "comment" : { + "type" : "string" + }, + "copilotFollowUpQuestion" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotFollowUpQuestion" + } + }, + "copilotUrlNavigations" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotUrlNavigation" + } + }, + "copilotReportAnalyzer" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotReportAnalyzer" + } + }, + "copilotApiCaller" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotApiCaller" + } + }, + "sticosStatus" : { + "type" : "string", + "description" : "Sticos banner status", + "enum" : [ "NO_BANNER", "LARGE_BANNER_ADMIN", "LARGE_BANNER_ADMIN_BLACKLIST", "LARGE_BANNER_NORMAL", "SMALL_BANNER_ADMIN", "SMALL_BANNER_ADMIN_BLACKLIST", "SMALL_BANNER_NORMAL", "FADED_OUT_LARGE_BANNER", "LARGE_BANNER_AO", "SMALL_BANNER_AO", "LARGE", "SMALL", "FADED_OUT" ] + }, + "sticosAccessSource" : { + "type" : "string", + "description" : "Which path granted Sticos access for this message — the per-message Sticos billing-attribution source. Null unless this is a Sticos answer.", + "enum" : [ "TLX_INTERNAL", "TLX_LICENSE", "TLX_LICENSE_TRIAL", "STICOS_LICENSE", "FREE_CAMPAIGN", "NEW_USER_TRIAL", "NONE" ] + }, + "responseBlocks" : { + "$ref" : "#/components/schemas/AssistantResponseBlocks" + } + } + }, + "CopilotUrlNavigation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "response" : { + "type" : "string" + }, + "urlParameters" : { + "type" : "string" + }, + "dataTable" : { + "type" : "string", + "enum" : [ "INVOICE", "PROJECT" ] + } + }, + "description" : "List of CopilotUrlNavigation" + }, + "DataSeriesDefinition" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "aggregation" : { + "type" : "string" + } + }, + "description" : "Data series definition for charts" + }, + "DataSeriesPoint" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "value" : { + "type" : "string" + } + }, + "description" : "Data series point" + }, + "DeckCover" : { + "type" : "object", + "properties" : { + "greeting" : { + "type" : "string", + "readOnly" : true + }, + "narrative" : { + "type" : "string", + "readOnly" : true + }, + "pulseTitle" : { + "type" : "string", + "readOnly" : true + }, + "calloutsTitle" : { + "type" : "string", + "readOnly" : true + }, + "kpiCards" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/KpiCard" + } + }, + "callouts" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProactiveInsightsCallout" + } + }, + "nav" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/NavItem" + } + } + }, + "description" : "Cover of the weekly report", + "readOnly" : true + }, + "DeckData" : { + "type" : "object", + "properties" : { + "schemaVersion" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "weekIso" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "periodLabel" : { + "type" : "string", + "readOnly" : true + }, + "cardHeadline" : { + "type" : "string", + "readOnly" : true + }, + "cardGreeting" : { + "type" : "string", + "readOnly" : true + }, + "cover" : { + "$ref" : "#/components/schemas/DeckCover" + }, + "sections" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DeckSection" + } + }, + "reports" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReportSource" + } + } + }, + "description" : "Top-level proactive-insights weekly deck payload" + }, + "DeckSection" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true + }, + "order" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "subtitle" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "sourcesText" : { + "type" : "string", + "readOnly" : true + }, + "kpiCards" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/KpiCard" + } + }, + "charts" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ChartSpec" + } + }, + "tables" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TableSpec" + } + }, + "blockOrder" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "rowGroups" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + } + }, + "description" : "One content section of the weekly report", + "readOnly" : true + }, + "FileAttachment" : { + "type" : "object", + "properties" : { + "fileName" : { + "type" : "string" + }, + "mimeType" : { + "type" : "string" + }, + "fileSize" : { + "type" : "integer", + "format" : "int64" + }, + "content" : { + "type" : "string" + } + }, + "description" : "File attached to a Copilot request with optional inline base64 content" + }, + "FollowUpQuestionBlock" : { + "type" : "object", + "properties" : { + "followUpQuestion" : { + "type" : "string" + }, + "sourceAgent" : { + "type" : "string" + }, + "existing" : { + "type" : "boolean" + } + }, + "description" : "Follow-up question block" + }, + "FollowUpQuestionsBlock" : { + "type" : "object", + "description" : "Block containing a list of follow-up questions", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "questions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/FollowUpQuestionBlock" + } + } + } + } ] + }, + "FormAction" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string" + }, + "label" : { + "type" : "string" + }, + "variant" : { + "type" : "string" + }, + "method" : { + "type" : "string" + }, + "url" : { + "type" : "string" + }, + "confirmMessage" : { + "type" : "string" + }, + "sendsFormData" : { + "type" : "boolean" + }, + "resolvedLabel" : { + "type" : "string" + }, + "resolvedDescription" : { + "type" : "string" + }, + "resolvedMessage" : { + "type" : "string" + }, + "actionUpdates" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ActionUpdateRef" + } + }, + "preSubmit" : { + "$ref" : "#/components/schemas/FormActionStep" + }, + "finalStep" : { + "type" : "boolean" + } + } + }, + "FormActionStep" : { + "type" : "object", + "properties" : { + "method" : { + "type" : "string" + }, + "url" : { + "type" : "string" + }, + "sendsFormData" : { + "type" : "boolean" + } + } + }, + "FormBlock" : { + "type" : "object", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "formId" : { + "type" : "string" + }, + "actionListId" : { + "type" : "string" + }, + "header" : { + "type" : "string" + }, + "resolvedLabel" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "url" : { + "type" : "string" + }, + "fields" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/FormField" + } + }, + "actions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/FormAction" + } + } + } + } ] + }, + "FormField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string" + }, + "type" : { + "type" : "string" + }, + "label" : { + "type" : "string" + }, + "value" : { + "type" : "object" + }, + "required" : { + "type" : "boolean" + }, + "placeholder" : { + "type" : "string" + }, + "options" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/FormFieldOption" + } + }, + "optionsUrl" : { + "type" : "string" + }, + "disabledWhen" : { + "$ref" : "#/components/schemas/FormFieldDisabledWhen" + } + } + }, + "FormFieldDisabledWhen" : { + "type" : "object", + "properties" : { + "formId" : { + "type" : "string" + }, + "fieldId" : { + "type" : "string" + }, + "equalTo" : { + "type" : "object" + } + } + }, + "FormFieldOption" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string" + }, + "label" : { + "type" : "string" + } + } + }, + "KpiCard" : { + "type" : "object", + "properties" : { + "slot" : { + "type" : "string", + "readOnly" : true + }, + "label" : { + "type" : "string", + "readOnly" : true + }, + "narration_label" : { + "type" : "string", + "readOnly" : true + }, + "value" : { + "type" : "object", + "description" : "Polymorphic KPI value — number or string depending on format", + "readOnly" : true + }, + "format" : { + "type" : "string", + "readOnly" : true + }, + "comparisons" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/KpiComparison" + } + }, + "flagged" : { + "type" : "boolean", + "readOnly" : true + } + }, + "description" : "One KPI tile on a section page (or copied onto the cover)", + "readOnly" : true + }, + "KpiComparison" : { + "type" : "object", + "properties" : { + "label" : { + "type" : "string", + "readOnly" : true + }, + "value" : { + "type" : "object", + "description" : "Polymorphic delta value — number scalar whose unit is given by format", + "readOnly" : true + }, + "format" : { + "type" : "string", + "readOnly" : true + }, + "direction" : { + "type" : "string", + "readOnly" : true + }, + "sentiment" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "One baseline comparison rendered under a KPI tile", + "readOnly" : true + }, + "NavItem" : { + "type" : "object", + "properties" : { + "order" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "subtitle" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "One row in the cover-page navigation list", + "readOnly" : true + }, + "Presort" : { + "type" : "object", + "properties" : { + "column" : { + "type" : "string" + }, + "direction" : { + "type" : "string" + } + }, + "description" : "Presort configuration for chart data ordering" + }, + "ProactiveInsightsAxesFilter" : { + "type" : "object", + "properties" : { + "limit" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "orderBys" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProactiveInsightsOrderBy" + } + } + }, + "description" : "Sort/limit override for one rowFilters/columnFilters entry", + "readOnly" : true + }, + "ProactiveInsightsCallout" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true + }, + "sectionId" : { + "type" : "string", + "readOnly" : true + }, + "severity" : { + "type" : "string", + "readOnly" : true + }, + "sourceSlot" : { + "type" : "string", + "readOnly" : true + }, + "headline" : { + "type" : "string", + "readOnly" : true + }, + "detail" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Cover insight card on the proactive-insights weekly deck", + "readOnly" : true + }, + "ProactiveInsightsDeckBlock" : { + "type" : "object", + "description" : "Carries a Proactive Insights weekly deck payload", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "deck" : { + "$ref" : "#/components/schemas/DeckData" + } + } + } ] + }, + "ProactiveInsightsGlobalFilter" : { + "type" : "object", + "properties" : { + "period" : { + "$ref" : "#/components/schemas/ProactiveInsightsPeriod" + }, + "rowFilters" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/ProactiveInsightsAxesFilter" + }, + "readOnly" : true + }, + "columnFilters" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/ProactiveInsightsAxesFilter" + }, + "readOnly" : true + } + }, + "description" : "Tripletex report global_filter dict — period + optional rowFilters/columnFilters", + "readOnly" : true + }, + "ProactiveInsightsOrderBy" : { + "type" : "object", + "properties" : { + "order" : { + "type" : "string", + "readOnly" : true + }, + "expression" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "One orderBys entry inside a rowFilters/columnFilters axes filter", + "readOnly" : true + }, + "ProactiveInsightsPeriod" : { + "type" : "object", + "properties" : { + "start" : { + "type" : "string", + "readOnly" : true + }, + "end" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "Period filter on a Tripletex report fetch", + "readOnly" : true + }, + "ProgressBlock" : { + "type" : "object", + "description" : "Progress update block", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "text" : { + "type" : "string" + } + } + } ] + }, + "ReportSource" : { + "type" : "object", + "properties" : { + "reportId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "globalFilter" : { + "$ref" : "#/components/schemas/ProactiveInsightsGlobalFilter" + } + }, + "description" : "Tripletex report fetched while building the deck (chat-surface Source)", + "readOnly" : true + }, + "ResponseWrapperCopilotResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CopilotResponse" + } + } + }, + "SourceBlock" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "url" : { + "type" : "string" + }, + "header" : { + "type" : "string" + }, + "text" : { + "type" : "string" + } + }, + "description" : "Source reference block" + }, + "SourceListBlock" : { + "type" : "object", + "description" : "Block containing a list of source references", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "sources" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SourceBlock" + } + } + } + } ] + }, + "SticosConversationMessage" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "response" : { + "type" : "string" + }, + "confidence" : { + "minimum" : -1, + "type" : "integer", + "format" : "int32" + }, + "flag" : { + "type" : "integer", + "format" : "int32" + }, + "sessionId" : { + "type" : "string" + }, + "sticosLinks" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SticosLink" + } + }, + "sticosStatus" : { + "type" : "string", + "description" : "Sticos banner status" + } + } + }, + "SticosLink" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "linkId" : { + "type" : "integer", + "format" : "int32" + }, + "title" : { + "type" : "string" + }, + "header" : { + "type" : "string" + }, + "linkUrl" : { + "type" : "string" + } + }, + "description" : "List of sticos sources" + }, + "SupportAIConversationMessage" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "response" : { + "type" : "string" + }, + "responseType" : { + "type" : "string" + }, + "supportAIMatchedArticles" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupportAIMatchedArticle" + } + } + } + }, + "SupportAIMatchedArticle" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "articleUrl" : { + "type" : "string" + }, + "usedInResponse" : { + "type" : "boolean" + }, + "title" : { + "type" : "string" + } + }, + "description" : "List of supportAIMatchedArticles" + }, + "TableColumn" : { + "type" : "object", + "properties" : { + "key" : { + "type" : "string", + "readOnly" : true + }, + "label" : { + "type" : "string", + "readOnly" : true + }, + "format" : { + "type" : "string", + "readOnly" : true + }, + "align" : { + "type" : "string", + "readOnly" : true + }, + "width" : { + "type" : "number", + "format" : "double", + "readOnly" : true + } + }, + "description" : "One column definition on a PDF-native table", + "readOnly" : true + }, + "TableSpec" : { + "type" : "object", + "properties" : { + "slot" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "narration_label" : { + "type" : "string", + "readOnly" : true + }, + "columns" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TableColumn" + } + }, + "data" : { + "type" : "object", + "description" : "Table row data — list of row objects keyed by column name", + "readOnly" : true + } + }, + "description" : "One PDF-native table on a section page", + "readOnly" : true + }, + "TextBlock" : { + "type" : "object", + "description" : "Text content block", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "text" : { + "type" : "string" + } + } + } ] + }, + "VisualizationBlock" : { + "type" : "object", + "description" : "Visualization block containing chart data", + "allOf" : [ { + "$ref" : "#/components/schemas/AssistantResponseBlock" + }, { + "type" : "object", + "properties" : { + "chartType" : { + "type" : "string" + }, + "chartTitle" : { + "type" : "string" + }, + "xAxisDataKey" : { + "type" : "string" + }, + "dataSeriesDefinitions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DataSeriesDefinition" + } + }, + "datapoints" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChartDatapoint" + } + }, + "summary" : { + "$ref" : "#/components/schemas/ChartSummary" + }, + "presort" : { + "$ref" : "#/components/schemas/Presort" + } + } + } ] + }, + "EmailRequestPayload" : { + "type" : "object", + "properties" : { + "prompt" : { + "type" : "string" + }, + "ticket_id" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperListAssistantAgent" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "ASSISTANT", "SUPPORT", "STICOS", "INSIGHT", "INSIGHT_REPORT", "INSIGHT_INVOICE", "GENERAL_LLM", "API_CALLER", "ERROR", "SALARY_OVERVIEW", "LEDGER_OVERVIEW", "SUPPLIER_SUB_LEDGER", "ACTION_TIMESHEET_ENTRY", "ACTION_EXPENSE", "ACTION", "INSIGHT_ANOMALY", "EMPLOYEE_ROLE", "PROACTIVE_INSIGHTS" ] + } + } + } + }, + "CopilotConversation" : { + "type" : "object", + "properties" : { + "conversationGroupKey" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "lastActivityTimestamp" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListCopilotConversation" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotConversation" + } + } + } + }, + "ListResponseCopilotResponse" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CopilotResponse" + } + } + } + }, + "CopilotMeta" : { + "type" : "object", + "properties" : { + "sseUrl" : { + "type" : "string", + "readOnly" : true + }, + "myHelpRequestsUrl" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string", + "readOnly" : true + }, + "lastName" : { + "type" : "string", + "readOnly" : true + }, + "hasAlwaysSeeChatWithSupportAI" : { + "type" : "boolean", + "readOnly" : true + }, + "hasSalesforceSupport" : { + "type" : "boolean", + "readOnly" : true + }, + "companyIsAnAS" : { + "type" : "boolean", + "readOnly" : true + }, + "employeeIsNew" : { + "type" : "boolean", + "readOnly" : true + }, + "hasCopilotUrlNavigationPilot" : { + "type" : "boolean", + "readOnly" : true + }, + "showInsightAndGeneralLLMBetaOnboarding" : { + "type" : "boolean", + "description" : "True if user should see the Insight and General LLM beta onboarding screen (has beta access and hasn't closed the onboarding)", + "readOnly" : true + }, + "hasInsightAccess" : { + "type" : "boolean", + "description" : "True if user has access to insight agents (through old or new pilot mechanism)", + "readOnly" : true + }, + "hasGeneralLLMAccess" : { + "type" : "boolean", + "description" : "True if user has access to General LLM", + "readOnly" : true + }, + "hasActionBetaPilot" : { + "type" : "boolean", + "description" : "True if user has Action beta pilot", + "readOnly" : true + }, + "hasExpenseAgentForUserPilot" : { + "type" : "boolean", + "description" : "True if user has Expense Agent pilot", + "readOnly" : true + }, + "sticosAccess" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NO_ACCESS", "ACCESS", "TRIAL" ] + }, + "isAdmin" : { + "type" : "boolean", + "readOnly" : true + }, + "isSticosBlacklist" : { + "type" : "boolean", + "readOnly" : true + }, + "isAOorAuditor" : { + "type" : "boolean", + "readOnly" : true + }, + "companyHasSticosModule" : { + "type" : "boolean", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "EmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "killswitchChat" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NONE", "SLOW_RESPONSE", "NO_RESPONSE", "NO_HELPCENTER", "SLOW_RESPONSE_WITHOUT_HELPCENTER", "REMOVE_ZENDESK_AND_POINT_TO_HELP_CENTER", "INSIGHT_KILLSWITCH", "GENERAL_LLM_KILLSWITCH", "INSIGHT_AND_GENERAL_LLM_KILLSWITCH" ] + }, + "hasNeverTriedSticos" : { + "type" : "boolean", + "readOnly" : true + }, + "hasCopilotSurvey" : { + "type" : "boolean", + "readOnly" : true + }, + "hasNewMCPPlatformAssistant" : { + "type" : "boolean", + "readOnly" : true + }, + "mcpUrl" : { + "type" : "string", + "description" : "Base URL of the MCP/agent server", + "readOnly" : true + }, + "hasConversationHistory" : { + "type" : "boolean", + "description" : "True if conversation history feature is enabled (not killed)", + "readOnly" : true + }, + "showSticosFreeAccessBanner" : { + "type" : "boolean", + "description" : "True if the 'free Sticos access for a limited time' banner should be shown", + "readOnly" : true + } + } + }, + "ResponseWrapperCopilotMeta" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CopilotMeta" + } + } + }, + "CopilotReportAxesFilter" : { + "type" : "object", + "properties" : { + "limit" : { + "type" : "integer", + "description" : "Optional limit to set on axis, 0 to disable limit, empty/null to not change existing limit", + "format" : "int32" + }, + "orderBys" : { + "type" : "array", + "description" : "Order by to apply to the axis", + "items" : { + "$ref" : "#/components/schemas/CopilotReportOrderBy" + } + } + }, + "description" : "CopilotReportAxesFilter defines a generalFilter for limiting and a orderBy for sorting to inject into arbitrary column or row blueprint definition" + }, + "CopilotReportOrderBy" : { + "type" : "object", + "properties" : { + "order" : { + "type" : "string", + "description" : "Order direction, either 'Ascending' or 'Descending'" + }, + "expression" : { + "type" : "string", + "description" : "The expression to order by." + } + }, + "description" : "Defines ordering for report axes" + }, + "CopilotReportRender" : { + "type" : "object", + "properties" : { + "reportId" : { + "type" : "integer", + "description" : "Report id", + "format" : "int64" + }, + "globalFilter" : { + "$ref" : "#/components/schemas/ReportGroupFilter" + }, + "columnFilters" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/CopilotReportAxesFilter" + }, + "description" : "Replace, amend, or set filters, including ordering, on column variableNames" + }, + "rowFilters" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/CopilotReportAxesFilter" + }, + "description" : "Replace, amend, or set filters, including ordering, on row variableNames" + } + }, + "description" : "CopilotReportRender Data Transfer Object" + }, + "ReportAccountFilterV3" : { + "type" : "object", + "properties" : { + "rangeFilters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportRangeFilter" + } + }, + "singularFilters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complementSingularFilters" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportActivityFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportCustomerCategory1Filter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportCustomerCategory2Filter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportCustomerCategory3Filter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportCustomerFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportDepartmentFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportEmployeeFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportFilterPeriodDatum" : { + "type" : "object", + "properties" : { + "amount" : { + "type" : "integer", + "format" : "int32" + }, + "unit" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportFreeDimension1Filter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportFreeDimension2Filter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportFreeDimension3Filter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportGeneralFilter" : { + "type" : "object", + "properties" : { + "expression" : { + "type" : "string" + }, + "limit" : { + "minimum" : -1, + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportGroupFilter" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/ReportAccountFilterV3" + }, + "customer" : { + "$ref" : "#/components/schemas/ReportCustomerFilter" + }, + "department" : { + "$ref" : "#/components/schemas/ReportDepartmentFilter" + }, + "employee" : { + "$ref" : "#/components/schemas/ReportEmployeeFilter" + }, + "period" : { + "$ref" : "#/components/schemas/ReportPeriodFilter" + }, + "product" : { + "$ref" : "#/components/schemas/ReportProductFilter" + }, + "project" : { + "$ref" : "#/components/schemas/ReportProjectFilter" + }, + "projectCategory" : { + "$ref" : "#/components/schemas/ReportProjectCategoryFilter" + }, + "activity" : { + "$ref" : "#/components/schemas/ReportActivityFilter" + }, + "supplier" : { + "$ref" : "#/components/schemas/ReportSupplierFilter" + }, + "general" : { + "$ref" : "#/components/schemas/ReportGeneralFilter" + }, + "customerCategory1" : { + "$ref" : "#/components/schemas/ReportCustomerCategory1Filter" + }, + "customerCategory2" : { + "$ref" : "#/components/schemas/ReportCustomerCategory2Filter" + }, + "customerCategory3" : { + "$ref" : "#/components/schemas/ReportCustomerCategory3Filter" + }, + "freeDimension1" : { + "$ref" : "#/components/schemas/ReportFreeDimension1Filter" + }, + "freeDimension2" : { + "$ref" : "#/components/schemas/ReportFreeDimension2Filter" + }, + "freeDimension3" : { + "$ref" : "#/components/schemas/ReportFreeDimension3Filter" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportPeriodFilter" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "integer", + "format" : "int32" + }, + "start" : { + "type" : "string" + }, + "end" : { + "type" : "string" + }, + "duration" : { + "$ref" : "#/components/schemas/ReportFilterPeriodDatum" + }, + "offset" : { + "$ref" : "#/components/schemas/ReportFilterPeriodDatum" + }, + "constrainEndToInterval" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportProductFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportProjectCategoryFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportProjectFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportRangeFilter" : { + "type" : "object", + "properties" : { + "from" : { + "type" : "integer", + "format" : "int32" + }, + "to" : { + "type" : "integer", + "format" : "int32" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSingularFilter" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSupplierFilter" : { + "type" : "object", + "properties" : { + "filters" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportSingularFilter" + } + }, + "complement" : { + "type" : "boolean" + }, + "excludeEmptyElement" : { + "type" : "boolean" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "CopilotReportBlueprint" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "globalFilterTypes" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "rows" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotReportBlueprintAxis" + } + }, + "columns" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotReportBlueprintAxis" + } + }, + "cells" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotReportBlueprintCell" + } + } + }, + "description" : "Report blueprint with axis structure and cell definitions" + }, + "CopilotReportBlueprintAxis" : { + "type" : "object", + "properties" : { + "variableName" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "autoGroupType" : { + "type" : "string" + }, + "sortable" : { + "type" : "boolean" + }, + "defaultOrder" : { + "type" : "string" + }, + "limit" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "valueFormat" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "reference" : { + "type" : "string" + } + }, + "description" : "Report axis definition" + }, + "CopilotReportBlueprintCell" : { + "type" : "object", + "properties" : { + "variableName" : { + "type" : "string" + }, + "expression" : { + "type" : "string" + }, + "columnReference" : { + "type" : "string" + }, + "rowReference" : { + "type" : "string" + }, + "valueFormat" : { + "type" : "string" + }, + "cellFormat" : { + "type" : "string" + } + }, + "description" : "Report cell definition" + }, + "ResponseWrapperCopilotReportBlueprint" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CopilotReportBlueprint" + } + } + }, + "ResponseWrapperSticosAccess" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "NO_ACCESS", "ACCESS", "TRIAL" ] + } + } + }, + "AssistantAgentTestRequestDTO" : { + "type" : "object", + "properties" : { + "agent" : { + "type" : "string", + "enum" : [ "ASSISTANT", "SUPPORT", "STICOS", "INSIGHT", "INSIGHT_REPORT", "INSIGHT_INVOICE", "GENERAL_LLM", "API_CALLER", "ERROR", "SALARY_OVERVIEW", "LEDGER_OVERVIEW", "SUPPLIER_SUB_LEDGER", "ACTION_TIMESHEET_ENTRY", "ACTION_EXPENSE", "ACTION", "INSIGHT_ANOMALY", "EMPLOYEE_ROLE", "PROACTIVE_INSIGHTS" ] + }, + "prompt" : { + "type" : "string" + }, + "chatHistory" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CopilotChatMessage" + } + } + } + }, + "CopilotChatMessage" : { + "type" : "object", + "properties" : { + "prompt" : { + "type" : "string" + }, + "response" : { + "type" : "string" + }, + "agentName" : { + "type" : "string" + } + } + }, + "CopilotTokenResponseDTO" : { + "type" : "object", + "properties" : { + "token" : { + "type" : "string" + } + } + }, + "ResponseWrapperCopilotTokenResponseDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CopilotTokenResponseDTO" + } + } + }, + "CopilotTokenRequestDTO" : { + "type" : "object", + "properties" : { + "ttlSeconds" : { + "maximum" : 600, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + } + } + }, + "CopilotTokenInvalidateDTO" : { + "type" : "object", + "properties" : { + "token" : { + "type" : "string" + } + } + }, + "ChatHistoryEntry" : { + "type" : "object", + "properties" : { + "role" : { + "type" : "string" + }, + "message" : { + "type" : "string" + } + }, + "description" : "Optional: The chat history" + }, + "GPTWrapperAPIRequest" : { + "type" : "object", + "properties" : { + "question" : { + "type" : "string", + "description" : "The question to ask the LLM" + }, + "gpt_model" : { + "type" : "string", + "description" : "Which gpt model to use, defaults to gpt-4o-mini", + "enum" : [ "GPT4o", "GPT4oMini" ] + }, + "system_prompt" : { + "type" : "string", + "description" : "Optional: The system prompt to the LLM" + }, + "chat_history" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChatHistoryEntry" + } + }, + "json_schema" : { + "type" : "string", + "description" : "Optional: The json schema" + } + }, + "description" : "GPTWrapperAPIRequest Data Transfer Object" + }, + "ResponseWrapperCountry" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Country" + } + } + }, + "ListResponseCountry" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Country" + } + } + } + }, + "CspReport" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "user_agent" : { + "type" : "string", + "readOnly" : true + }, + "age" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "body" : { + "$ref" : "#/components/schemas/CspReportBody" + } + } + }, + "CspReportBody" : { + "type" : "object", + "properties" : { + "blockedURL" : { + "type" : "string", + "readOnly" : true + }, + "columnNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "disposition" : { + "type" : "string", + "readOnly" : true + }, + "documentURL" : { + "type" : "string", + "readOnly" : true + }, + "effectiveDirective" : { + "type" : "string", + "readOnly" : true + }, + "lineNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "originalPolicy" : { + "type" : "string", + "readOnly" : true + }, + "referrer" : { + "type" : "string", + "readOnly" : true + }, + "sample" : { + "type" : "string", + "readOnly" : true + }, + "sourceFile" : { + "type" : "string", + "readOnly" : true + }, + "statusCode" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperCurrency" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Currency" + } + } + }, + "ListResponseCurrency" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Currency" + } + } + } + }, + "CurrencyExchangeRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "targetCurrency" : { + "$ref" : "#/components/schemas/Currency" + }, + "sourceCurrency" : { + "$ref" : "#/components/schemas/Currency" + }, + "rate" : { + "minimum" : 0, + "type" : "number" + }, + "source" : { + "type" : "string", + "description" : "Source of exchange rates, i.e Norges Bank", + "enum" : [ "NORGES_BANK", "HALLONEN" ] + }, + "date" : { + "type" : "string" + } + } + }, + "ResponseWrapperCurrencyExchangeRate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CurrencyExchangeRate" + } + } + }, + "CurrencyWithRates" : { + "type" : "object", + "properties" : { + "targetCurrencyId" : { + "type" : "integer", + "format" : "int64" + }, + "code" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "factor" : { + "maximum" : 100, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "isDisabled" : { + "type" : "boolean" + }, + "sourceCurrency" : { + "$ref" : "#/components/schemas/Currency" + }, + "date" : { + "type" : "string" + }, + "rate" : { + "minimum" : 0, + "type" : "number" + }, + "source" : { + "type" : "string", + "description" : "Source of exchange rates, i.e Norges Bank", + "enum" : [ "NORGES_BANK", "HALLONEN" ] + }, + "displayName" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseCurrencyWithRates" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyWithRates" + } + } + } + }, + "ResponseWrapperCustomer" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Customer" + } + } + }, + "ListResponseCustomer" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Customer" + } + } + } + }, + "MaventaCompany" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "uuid" : { + "type" : "string" + } + } + }, + "ResponseWrapperMaventaCompany" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MaventaCompany" + } + } + }, + "ResponseWrapperCustomerCategory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CustomerCategory" + } + } + }, + "ListResponseCustomerCategory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerCategory" + } + } + } + }, + "DashboardDTO" : { + "type" : "object", + "properties" : { + "version" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "content" : { + "type" : "string" + } + } + }, + "ResponseWrapperDashboardDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DashboardDTO" + } + } + }, + "DataflytValidationDTO" : { + "type" : "object", + "properties" : { + "validationMessageCode" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "DebtCollector" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "sendType" : { + "type" : "string", + "enum" : [ "API", "EMAIL", "SFTP" ] + }, + "annualFee" : { + "type" : "number", + "format" : "float", + "readOnly" : true + }, + "feePerCase" : { + "type" : "number", + "format" : "float", + "readOnly" : true + } + } + }, + "ResponseWrapperDebtCollector" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DebtCollector" + } + } + }, + "ResponseWrapperDepartment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Department" + } + } + }, + "ListResponseDepartment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Department" + } + } + } + }, + "DistributionKey" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "distributionKeyBlade" : { + "$ref" : "#/components/schemas/DistributionKeyBlade" + } + }, + "readOnly" : true + }, + "DistributionKeyBit" : { + "type" : "object", + "properties" : { + "departmentId" : { + "type" : "integer", + "format" : "int32" + }, + "departmentName" : { + "type" : "string" + }, + "percentage" : { + "type" : "number" + } + } + }, + "DistributionKeyBlade" : { + "type" : "object", + "properties" : { + "distributionKeyBits" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DistributionKeyBit" + } + } + } + }, + "ResponseWrapperDistributionKey" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DistributionKey" + } + } + }, + "ListResponseDistributionKey" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DistributionKey" + } + } + } + }, + "ResponseWrapperDivision" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Division" + } + } + }, + "ListResponseDivision" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Division" + } + } + } + }, + "ResponseWrapperDocumentArchive" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DocumentArchive" + } + } + }, + "ListResponseDocumentArchive" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DocumentArchive" + } + } + } + }, + "ResponseWrapperListDocumentArchiveModelType" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "NONE", "CUSTOMER", "SUPPLIER", "PROJECT", "ORDER", "OFFER", "PROJECT_OFFER", "PRODUCT", "EMPLOYEE", "ACCOUNT", "ASSET" ] + } + } + } + }, + "BulkUpdateDocumentItemReceiver" : { + "type" : "object", + "properties" : { + "messageIds" : { + "type" : "array", + "items" : { + "type" : "number", + "description" : "List of messageIds to change the receiver", + "format" : "int64" + } + }, + "receiverId" : { + "type" : "integer", + "description" : "Receiver Id", + "format" : "int64" + } + } + }, + "DocumentReceptionResult" : { + "type" : "object", + "properties" : { + "messageId" : { + "type" : "integer", + "format" : "int64" + }, + "documentId" : { + "type" : "integer", + "format" : "int64" + }, + "isValid" : { + "type" : "boolean" + }, + "validationMessages" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + } + }, + "ResponseWrapperListDocumentReceptionResult" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DocumentReceptionResult" + } + } + } + }, + "DocumentReceptionItem" : { + "type" : "object", + "properties" : { + "messageId" : { + "type" : "integer", + "description" : "Message Id.", + "format" : "int64" + }, + "documentId" : { + "type" : "integer", + "description" : "Document Id.", + "format" : "int64" + }, + "documentName" : { + "type" : "string", + "description" : "The name of the document." + }, + "receiverEmployeeId" : { + "type" : "integer", + "description" : "Employee Id of the receiver of the document.", + "format" : "int64" + }, + "receiverName" : { + "type" : "string", + "description" : "Document receiver.", + "readOnly" : true + }, + "senderName" : { + "type" : "string", + "description" : "Document sender.", + "readOnly" : true + }, + "displaySize" : { + "type" : "string", + "description" : "Document size in human readable format.", + "readOnly" : true + }, + "size" : { + "type" : "integer", + "description" : "Document size.", + "format" : "int64", + "readOnly" : true + }, + "created" : { + "type" : "string", + "description" : "Document create date." + }, + "edited" : { + "type" : "string", + "description" : "Document edit date." + }, + "isNew" : { + "type" : "boolean", + "description" : "Is new document.", + "readOnly" : true + }, + "mimeType" : { + "type" : "string", + "description" : "Document mime type.", + "readOnly" : true + } + } + }, + "ListResponseDocumentReceptionItem" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DocumentReceptionItem" + } + } + } + }, + "DocumentReceptionPageContext" : { + "type" : "object", + "properties" : { + "documentReceptionEmail" : { + "type" : "string", + "description" : "document reception email", + "readOnly" : true + }, + "authAllEmployees" : { + "type" : "boolean", + "description" : "Can see all receivers", + "readOnly" : true + }, + "authVoucherReception" : { + "type" : "boolean", + "description" : "Auth Voucher Reception", + "readOnly" : true + }, + "maxFileSize" : { + "type" : "integer", + "description" : "Max file size allowed", + "format" : "int64", + "readOnly" : true + } + } + }, + "ResponseWrapperDocumentReceptionPageContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DocumentReceptionPageContext" + } + } + }, + "DocumentArchiveTargetPath" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseDocumentArchiveTargetPath" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DocumentArchiveTargetPath" + } + } + } + }, + "MoveToVoucher" : { + "type" : "object", + "properties" : { + "messageIds" : { + "type" : "array", + "items" : { + "type" : "number", + "description" : "List of messageIds to move to voucher reception", + "format" : "int64" + } + }, + "messageIdsToSplit" : { + "type" : "array", + "items" : { + "type" : "number", + "description" : "List of messageIds to move to split", + "format" : "int64" + } + } + } + }, + "SendToDocumentArchive" : { + "type" : "object", + "properties" : { + "messageIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "description" : "List of messageIds to move to archive", + "format" : "int64" + } + }, + "pathId" : { + "type" : "integer", + "description" : "Target path in archive", + "format" : "int64" + }, + "fileName" : { + "type" : "string", + "description" : "Override filename" + }, + "modelType" : { + "type" : "string", + "description" : "Add to specific archive", + "enum" : [ "NONE", "CUSTOMER", "SUPPLIER", "PROJECT", "ORDER", "OFFER", "PROJECT_OFFER", "PRODUCT", "EMPLOYEE", "ACCOUNT", "ASSET" ] + }, + "modelId" : { + "type" : "integer", + "description" : "Model ID to archive", + "format" : "int64" + }, + "invoiceArchiveRelation" : { + "type" : "string", + "description" : "Add to document to invoice", + "enum" : [ "ADD_TO_INVOICE_NONE", "ADD_TO_INVOICE_NEXT", "ADD_TO_INVOICE_ALL" ] + } + } + }, + "ResponseWrapperDocumentReceptionItem" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DocumentReceptionItem" + } + } + }, + "ResponseWrapperDocumentReceptionResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DocumentReceptionResult" + } + } + }, + "ResponseWrapperEmployee" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Employee" + } + } + }, + "EmployeeEmail" : { + "type" : "object", + "properties" : { + "email" : { + "type" : "string", + "description" : "Employee e-mail address" + } + } + }, + "ListResponseMobileEmployee" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MobileEmployee" + } + } + } + }, + "MobileEmployee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "employeeNumber" : { + "type" : "string" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "dateOfBirth" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "allowInformationRegistration" : { + "type" : "boolean", + "description" : "Determines if salary information can be registered on the user including hours, travel expenses and employee expenses. The user may also be selected as a project member on projects.", + "readOnly" : true + }, + "isContact" : { + "type" : "boolean", + "readOnly" : true + }, + "pictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperEmployeeCategory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeCategory" + } + } + }, + "ListResponseEmployeeCategory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeCategory" + } + } + } + }, + "EmployeeVacationBalance" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "vacationbalance" : { + "type" : "number" + } + } + }, + "ResponseWrapperEmployeeVacationBalance" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeVacationBalance" + } + } + }, + "ResponseWrapperEmployment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Employment" + } + } + }, + "ListResponseEmployment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employment" + } + } + } + }, + "ResponseWrapperEmploymentDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmploymentDetails" + } + } + }, + "ListResponseEmploymentDetails" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmploymentDetails" + } + } + } + }, + "EmploymentType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employmentType" : { + "type" : "string", + "description" : "Defines the employment type option. ", + "enum" : [ "ORDINARY", "MARITIME", "FREELANCE", "NOT_CHOSEN" ] + }, + "nameNO" : { + "type" : "string" + }, + "code" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseEmploymentType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmploymentType" + } + } + } + }, + "LeaveOfAbsence" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employment" : { + "$ref" : "#/components/schemas/Employment" + }, + "importedLeaveOfAbsenceId" : { + "type" : "string", + "description" : "Existing leave of absence ID used by the current accounting system" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "percentage" : { + "type" : "number" + }, + "isWageDeduction" : { + "type" : "boolean" + }, + "type" : { + "type" : "string", + "description" : "Define the leave of absence type.", + "enum" : [ "LEAVE_OF_ABSENCE", "FURLOUGH", "PARENTAL_BENEFITS", "MILITARY_SERVICE", "EDUCATIONAL", "COMPASSIONATE", "OTHER_NOT_STATUTORILY_REQUIRED", "OTHER_STATUTORILY_REQUIRED", "EDUCATIONAL_NOT_STATUTORILY_REQUIRED", "EDUCATIONAL_STATUTORILY_REQUIRED" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperLeaveOfAbsence" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LeaveOfAbsence" + } + } + }, + "ListResponseLeaveOfAbsence" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LeaveOfAbsence" + } + } + } + }, + "LeaveOfAbsenceType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "leaveOfAbsenceType" : { + "type" : "string", + "description" : "Defines the leave of absence type option.", + "enum" : [ "LEAVE_OF_ABSENCE", "FURLOUGH", "PARENTAL_BENEFITS", "MILITARY_SERVICE", "EDUCATIONAL", "COMPASSIONATE", "OTHER_NOT_STATUTORILY_REQUIRED", "OTHER_STATUTORILY_REQUIRED", "EDUCATIONAL_NOT_STATUTORILY_REQUIRED", "EDUCATIONAL_STATUTORILY_REQUIRED" ] + }, + "nameNO" : { + "type" : "string" + }, + "code" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseLeaveOfAbsenceType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LeaveOfAbsenceType" + } + } + } + }, + "ResponseWrapperOccupationCode" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/OccupationCode" + } + } + }, + "ListResponseOccupationCode" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OccupationCode" + } + } + } + }, + "ListResponseRemunerationType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RemunerationType" + } + } + } + }, + "RemunerationType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "remunerationType" : { + "type" : "string", + "description" : "Defines the remuneration type option. ", + "enum" : [ "MONTHLY_WAGE", "HOURLY_WAGE", "COMMISION_PERCENTAGE", "FEE", "NOT_CHOSEN", "PIECEWORK_WAGE" ] + }, + "nameNO" : { + "type" : "string" + }, + "code" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseWorkingHoursScheme" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WorkingHoursScheme" + } + } + } + }, + "WorkingHoursScheme" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "workingHoursScheme" : { + "type" : "string", + "description" : "Defines the working hours scheme option.", + "enum" : [ "NOT_SHIFT", "ROUND_THE_CLOCK", "SHIFT_365", "OFFSHORE_336", "CONTINUOUS", "OTHER_SHIFT", "NOT_CHOSEN" ] + }, + "nameNO" : { + "type" : "string" + }, + "code" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "HourlyCostAndRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "date" : { + "type" : "string" + }, + "rate" : { + "type" : "number" + }, + "budgetRate" : { + "type" : "number" + }, + "hourCostRate" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ResponseWrapperHourlyCostAndRate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HourlyCostAndRate" + } + } + }, + "ListResponseHourlyCostAndRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/HourlyCostAndRate" + } + } + } + }, + "EmployeeLoginInfo" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "description" : "Employee id", + "format" : "int64", + "readOnly" : true + }, + "username" : { + "type" : "string", + "description" : "Employee username", + "readOnly" : true + }, + "lastLoginDate" : { + "type" : "string", + "description" : "Last successful employee login datetime", + "readOnly" : true + } + } + }, + "ResponseWrapperEmployeeLoginInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeLoginInfo" + } + } + }, + "NextOfKin" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "name" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "address" : { + "type" : "string" + }, + "typeOfRelationship" : { + "type" : "string", + "description" : "Define the employee's next of kin relationtype.
SPOUSE
PARTNER
PARENT
CHILD
SIBLING", + "enum" : [ "SPOUSE", "PARTNER", "PARENT", "CHILD", "SIBLING" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperNextOfKin" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/NextOfKin" + } + } + }, + "ListResponseNextOfKin" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/NextOfKin" + } + } + } + }, + "EmployeePreferences" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "format" : "int32" + }, + "companyId" : { + "type" : "integer", + "format" : "int32" + }, + "filterOnProjectParticipant" : { + "type" : "boolean" + }, + "filterOnProjectManager" : { + "type" : "boolean" + }, + "language" : { + "type" : "string", + "enum" : [ "NO", "EN" ] + }, + "defaultWarehouseId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperEmployeePreferences" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeePreferences" + } + } + }, + "ListResponseEmployeePreferences" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeePreferences" + } + } + } + }, + "ResponseWrapperStandardTime" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/StandardTime" + } + } + }, + "StandardTime" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "fromDate" : { + "type" : "string" + }, + "hoursPerDay" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ListResponseStandardTime" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/StandardTime" + } + } + } + }, + "EmployeeBanner" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeBannerType" : { + "type" : "string", + "readOnly" : true + }, + "closed" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperEmployeeBanner" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeBanner" + } + } + }, + "Enhetsregisteret" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "orgNumber" : { + "type" : "string", + "readOnly" : true + }, + "address" : { + "type" : "string", + "readOnly" : true + }, + "city" : { + "type" : "string", + "readOnly" : true + }, + "postalCode" : { + "type" : "string", + "readOnly" : true + }, + "municipality" : { + "type" : "string", + "readOnly" : true + }, + "registrationDate" : { + "type" : "string", + "readOnly" : true + }, + "vatRegistered" : { + "type" : "boolean", + "readOnly" : true + }, + "email" : { + "type" : "string", + "readOnly" : true + }, + "enterprises" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Enterprise" + } + } + }, + "readOnly" : true + }, + "Enterprise" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "orgNumber" : { + "type" : "string", + "readOnly" : true + }, + "registrationDate" : { + "type" : "string", + "readOnly" : true + }, + "municipality" : { + "type" : "string", + "readOnly" : true + }, + "startDateMunicipality" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseEnhetsregisteret" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Enhetsregisteret" + } + } + } + }, + "Entitlement" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "name" : { + "type" : "string", + "description" : "Descriptive name for the privilege. Might change between releases.", + "readOnly" : true + }, + "entitlementId" : { + "type" : "integer", + "description" : "Unique id for the type of privilege.", + "format" : "int32" + }, + "customer" : { + "$ref" : "#/components/schemas/Company" + } + }, + "readOnly" : true + }, + "ListResponseEntitlement" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Entitlement" + } + } + } + }, + "RestrictedEntitlementChange" : { + "type" : "object", + "properties" : { + "change" : { + "type" : "string" + }, + "customerId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ResponseWrapperEntitlement" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Entitlement" + } + } + }, + "EntitlementTemplate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseEntitlementTemplate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EntitlementTemplate" + } + } + } + }, + "EventInfo" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "payloadModel" : { + "type" : "string", + "readOnly" : true + }, + "examples" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WebHookWrapper" + } + } + } + }, + "ResponseWrapperEventInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EventInfo" + } + } + }, + "WebHookWrapper" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "readOnly" : true + }, + "event" : { + "type" : "string", + "readOnly" : true + }, + "subscriptionId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "EventInfoDescription" : { + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperMapStringEventInfoDescription" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/EventInfoDescription" + } + } + } + }, + "ResponseWrapperListVersionedType" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/VersionedType" + } + } + } + }, + "VersionedType" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "Notification" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "title" : { + "type" : "string" + }, + "message" : { + "type" : "string" + }, + "type" : { + "type" : "string" + }, + "category" : { + "type" : "string" + }, + "link" : { + "type" : "string" + }, + "objectId" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ResponseWrapperNotification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Notification" + } + } + }, + "ListResponseNotification" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Notification" + } + } + } + }, + "ResponseWrapperSpacesuitNotificationMeta" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SpacesuitNotificationMeta" + } + } + }, + "SpacesuitNotificationMeta" : { + "type" : "object", + "properties" : { + "sseUrl" : { + "type" : "string", + "readOnly" : true + }, + "clientName" : { + "type" : "string", + "readOnly" : true + }, + "notificationSettingsUrl" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperUnreadCount" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/UnreadCount" + } + } + }, + "UnreadCount" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "readCursor" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + } + }, + "ResponseWrapperSubscription" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Subscription" + } + } + }, + "Subscription" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "event" : { + "type" : "string", + "description" : "Event name (from /v2/event) you wish to subscribe to. Form should be: *subject.verb*.", + "example" : "customer.create" + }, + "targetUrl" : { + "type" : "string", + "description" : "The callback URL used for subscriptions (including authentication tokens). Must be absolute and use HTTPS. Basic authentication is supported.", + "example" : "https://username:password@myintegration.example/tripletexCallback" + }, + "fields" : { + "type" : "string", + "description" : "The fields in the object delivered with the notification callback, nested as in other API calls.", + "example" : "id,version,number" + }, + "status" : { + "type" : "string", + "description" : "The status of the subscription.", + "enum" : [ "ACTIVE", "DISABLED", "DISABLED_TOO_MANY_ERRORS", "DISABLED_RATE_LIMIT_EXCEEDED", "DISABLED_MISUSE" ] + }, + "authHeaderName" : { + "type" : "string", + "description" : "Custom authentication header name", + "example" : "Authorization" + }, + "authHeaderValue" : { + "type" : "string", + "description" : "Custom authentication header value (write only)", + "example" : "Basic dXNlcm5hbWU6cGFzc3dvcmQ=" + }, + "hmacSharedSecret" : { + "type" : "string", + "description" : "HMAC signing shared secret (write only). Optionally add this field to enable hmac signing. Calculation is header('x-request-signature') = base64(HmacSHA512(header('idempotency-key') + '&' + body))", + "example" : "S5Yd3Dz6FWmj7q2uA4Uy9KcQMGBVpJHeCbTgEnaw" + } + }, + "readOnly" : true + }, + "ListResponseSubscription" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Subscription" + } + } + } + }, + "ExpenseBatchArgs" : { + "type" : "object", + "properties" : { + "expenseIds" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "voucherDate" : { + "type" : "string" + } + } + }, + "ListResponseMapStringObject" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "readOnly" : true + }, + "readOnly" : true + } + } + } + }, + "ExpenseAttachmentReorderArgs" : { + "type" : "object", + "properties" : { + "attachmentIds" : { + "type" : "string" + } + } + }, + "ListResponseTravelExpense" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpense" + } + } + } + }, + "TravelReportFilterParams" : { + "type" : "object", + "properties" : { + "departmentIds" : { + "type" : "string" + }, + "costCategoryIds" : { + "type" : "string" + }, + "paymentTypeIds" : { + "type" : "string" + }, + "employeeIds" : { + "type" : "string" + }, + "attestationApproverIds" : { + "type" : "string" + }, + "projectIds" : { + "type" : "string" + }, + "projectDepartmentIds" : { + "type" : "string" + }, + "projectLeaderIds" : { + "type" : "string" + }, + "numberStart" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "numberEnd" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "dateFrom" : { + "type" : "string" + }, + "dateTo" : { + "type" : "string" + }, + "orderBy" : { + "type" : "string", + "enum" : [ "NUMBER", "TITLE", "DATE", "PROJECT", "DEPARTMENT", "EMPLOYEE_NAME", "AMOUNT", "STATUS", "CHARGEABLE" ] + }, + "orderDirection" : { + "type" : "string", + "enum" : [ "ASC", "DESC" ] + }, + "expenseStatusEnums" : { + "type" : "string" + }, + "expenseTypesEnums" : { + "type" : "string" + }, + "query" : { + "type" : "string" + }, + "idsToShowOnTop" : { + "type" : "string" + }, + "voucheredStatus" : { + "type" : "string", + "enum" : [ "ALL", "VOUCHERED", "NOT_VOUCHERED" ] + }, + "showOnlyExpensesWhereAuthorizedToSeeAttestationFlow" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperUserFeedback" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/UserFeedback" + } + } + }, + "UserFeedback" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "receivedAt" : { + "type" : "string" + }, + "message" : { + "type" : "string" + }, + "contactRequest" : { + "type" : "string" + }, + "browser" : { + "type" : "string" + }, + "pageTitle" : { + "type" : "string" + }, + "team" : { + "type" : "string" + }, + "loginEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "actualEmployeeId" : { + "$ref" : "#/components/schemas/Employee" + } + } + }, + "ResponseWrapperServerHealthStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ServerHealthStatus" + } + } + }, + "ServerHealthStatus" : { + "type" : "object", + "properties" : { + "timestamp" : { + "type" : "string", + "readOnly" : true + }, + "healthCheckDurationMs" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "percentageOfUnhealthyCompanies" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "percentageOfUnhealthyShards" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "shardHealthStatus" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ShardHealthStatus" + } + } + } + }, + "ShardHealthStatus" : { + "type" : "object", + "properties" : { + "shardInfoId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "shardName" : { + "type" : "string", + "readOnly" : true + }, + "clusterInfoId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clusterName" : { + "type" : "string", + "readOnly" : true + }, + "countActiveCompanies" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countInactiveCompanies" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUnhealthyCompanies" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "unhealthy" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "HeatfloorProduct" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "elNumber" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "vktype" : { + "type" : "string" + }, + "manufacturer" : { + "type" : "string" + }, + "nomEffect" : { + "type" : "number", + "readOnly" : true + }, + "length" : { + "type" : "number", + "readOnly" : true + }, + "wattsPerMeter" : { + "type" : "number", + "readOnly" : true + }, + "nomResistance" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperHeatfloorProduct" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HeatfloorProduct" + } + } + }, + "ListResponseHeatfloorProduct" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/HeatfloorProduct" + } + } + } + }, + "IdPortenLogin" : { + "type" : "object", + "properties" : { + "url" : { + "type" : "string", + "description" : "The url which the client needs to redirect for performing authentication", + "readOnly" : true + } + } + }, + "ResponseWrapperIdPortenLogin" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IdPortenLogin" + } + } + }, + "IdPortenLoginRequest" : { + "type" : "object", + "properties" : { + "internalRedirectUrl" : { + "type" : "string", + "description" : "The url where the user should be redirected back to when authentication is complete" + } + } + }, + "IdPortenLoginStatus" : { + "type" : "object", + "properties" : { + "expiresAt" : { + "type" : "string", + "readOnly" : true + }, + "active" : { + "type" : "boolean", + "description" : "Is the token still active?", + "readOnly" : true + } + } + }, + "ResponseWrapperIdPortenLoginStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IdPortenLoginStatus" + } + } + }, + "ClientImport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importFile" : { + "$ref" : "#/components/schemas/Document" + }, + "separator" : { + "type" : "string", + "enum" : [ "NONE", "COMMA", "SEMICOLON" ] + }, + "status" : { + "type" : "string", + "enum" : [ "FILE_UPLOADED", "FIELDS_MAPPED", "IMPORT_STARTED", "IMPORT_COMPLETED", "DELETE_DATA_STARTED" ] + }, + "importHeaders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientImportHeader" + } + }, + "startDate" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "countCreated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUpdated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countIgnored" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "updateSupported" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ClientImportField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "displayNameExpanded" : { + "type" : "string", + "readOnly" : true + }, + "isMandatory" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "dependentOnFieldIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "inputType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SELECT", "TEXTFIELD" ] + }, + "mandatory" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ClientImportHeader" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/ClientImport" + }, + "orderOfColumn" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "sampleValue" : { + "type" : "string" + }, + "suggestedColumnField" : { + "$ref" : "#/components/schemas/ClientImportField" + } + }, + "readOnly" : true + }, + "ResponseWrapperClientImport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ClientImport" + } + } + }, + "ListResponseClientImport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientImport" + } + } + } + }, + "ListResponseClientImportField" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientImportField" + } + } + } + }, + "ListResponseClientImportHeader" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientImportHeader" + } + } + } + }, + "ClientImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/ClientImport" + }, + "header" : { + "$ref" : "#/components/schemas/ClientImportHeader" + }, + "field" : { + "$ref" : "#/components/schemas/ClientImportField" + } + }, + "readOnly" : true + }, + "ListResponseClientImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientImportHeaderFieldsRelation" + } + } + } + }, + "ClientImportRowContent" : { + "type" : "object", + "properties" : { + "accountantId" : { + "type" : "string" + }, + "loginEmployeeId" : { + "type" : "string" + }, + "adminEmail" : { + "type" : "string" + }, + "adminFirstName" : { + "type" : "string" + }, + "adminLastName" : { + "type" : "string" + }, + "invoiceEmail" : { + "type" : "string" + }, + "orgNumber" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "packageName" : { + "type" : "string" + }, + "voucherModule" : { + "type" : "string" + }, + "smartWage" : { + "type" : "string" + }, + "primaryIndustry" : { + "type" : "string" + }, + "yearEnd" : { + "type" : "string" + }, + "invoiceStartDate" : { + "type" : "string" + }, + "invoiceReceiver" : { + "type" : "string" + }, + "companyType" : { + "type" : "string" + }, + "empty" : { + "type" : "boolean" + } + }, + "description" : "rowContent" + }, + "ClientPotential" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/ClientImport" + }, + "rowContent" : { + "$ref" : "#/components/schemas/ClientImportRowContent" + }, + "errorMessage" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ImportRowErrorMessage" + } + }, + "rowStatus" : { + "type" : "string", + "enum" : [ "NEW", "UPDATE", "FAIL", "DUPLICATE", "CREATED" ] + }, + "rowNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "targetId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountantCustomerCardId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ImportRowErrorMessage" : { + "type" : "object", + "properties" : { + "fieldId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "errorMessage" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "errorMessage" + }, + "ResponseWrapperClientPotential" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ClientPotential" + } + } + }, + "ListResponseClientPotential" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ClientPotential" + } + } + } + }, + "CustomerImport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importFile" : { + "$ref" : "#/components/schemas/Document" + }, + "separator" : { + "type" : "string", + "enum" : [ "NONE", "COMMA", "SEMICOLON" ] + }, + "status" : { + "type" : "string", + "enum" : [ "FILE_UPLOADED", "FIELDS_MAPPED", "IMPORT_STARTED", "IMPORT_COMPLETED", "DELETE_DATA_STARTED" ] + }, + "importHeaders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerImportHeader" + } + }, + "startDate" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "countCreated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUpdated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countIgnored" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "updateSupported" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "CustomerImportField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "displayNameExpanded" : { + "type" : "string", + "readOnly" : true + }, + "isMandatory" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "dependentOnFieldIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "inputType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SELECT", "TEXTFIELD" ] + }, + "mandatory" : { + "type" : "boolean", + "writeOnly" : true + } + }, + "readOnly" : true + }, + "CustomerImportHeader" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/CustomerImport" + }, + "orderOfColumn" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "sampleValue" : { + "type" : "string" + }, + "suggestedColumnField" : { + "$ref" : "#/components/schemas/CustomerImportField" + } + }, + "readOnly" : true + }, + "ResponseWrapperCustomerImport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CustomerImport" + } + } + }, + "ListResponseCustomerImport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerImport" + } + } + } + }, + "ListResponseSelectFieldDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SelectFieldDTO" + } + } + } + }, + "SelectFieldDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseCustomerImportField" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerImportField" + } + } + } + }, + "ListResponseCustomerImportHeader" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerImportHeader" + } + } + } + }, + "CustomerImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/CustomerImport" + }, + "header" : { + "$ref" : "#/components/schemas/CustomerImportHeader" + }, + "field" : { + "$ref" : "#/components/schemas/CustomerImportField" + } + }, + "readOnly" : true + }, + "ListResponseCustomerImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerImportHeaderFieldsRelation" + } + } + } + }, + "CustomerImportRowContent" : { + "type" : "object", + "properties" : { + "customerNumber" : { + "type" : "string" + }, + "customerName" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "postalAddress1" : { + "type" : "string" + }, + "postalAddress2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "postalAddressCity" : { + "type" : "string" + }, + "postalAddressCountry" : { + "type" : "string" + }, + "isPrivatePerson" : { + "type" : "string" + }, + "fax" : { + "type" : "string" + }, + "currencyCode" : { + "type" : "string" + }, + "category1Number" : { + "type" : "string" + }, + "category1Name" : { + "type" : "string" + }, + "category2Number" : { + "type" : "string" + }, + "category2Name" : { + "type" : "string" + }, + "category3Number" : { + "type" : "string" + }, + "category3Name" : { + "type" : "string" + }, + "contactFirstName" : { + "type" : "string" + }, + "contactLastName" : { + "type" : "string" + }, + "contactAddress1" : { + "type" : "string" + }, + "contactAddress2" : { + "type" : "string" + }, + "contactAddressPostalCode" : { + "type" : "string" + }, + "contactAddressCity" : { + "type" : "string" + }, + "contactAddressCountry" : { + "type" : "string" + }, + "contactPhoneNumberWork" : { + "type" : "string" + }, + "contactPhoneNumberMobile" : { + "type" : "string" + }, + "contactEmail" : { + "type" : "string" + }, + "businessAddress1" : { + "type" : "string" + }, + "businessAddress2" : { + "type" : "string" + }, + "businessAddressPostalCode" : { + "type" : "string" + }, + "businessAddressCity" : { + "type" : "string" + }, + "businessAddressCountry" : { + "type" : "string" + }, + "deliveryAddress1" : { + "type" : "string" + }, + "deliveryAddress2" : { + "type" : "string" + }, + "deliveryAddressPostalCode" : { + "type" : "string" + }, + "deliveryAddressCity" : { + "type" : "string" + }, + "deliveryAddressCountry" : { + "type" : "string" + }, + "invoiceEmail" : { + "type" : "string" + }, + "invoiceDueDays" : { + "type" : "string" + }, + "departmentName" : { + "type" : "string" + }, + "departmentNumber" : { + "type" : "string" + }, + "empty" : { + "type" : "boolean" + } + }, + "description" : "rowContent" + }, + "CustomerPotential" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/CustomerImport" + }, + "rowContent" : { + "$ref" : "#/components/schemas/CustomerImportRowContent" + }, + "errorMessage" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ImportRowErrorMessage" + } + }, + "rowStatus" : { + "type" : "string", + "enum" : [ "NEW", "UPDATE", "FAIL", "DUPLICATE", "CREATED" ] + }, + "rowNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperCustomerPotential" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CustomerPotential" + } + } + }, + "ListResponseCustomerPotential" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerPotential" + } + } + } + }, + "EmployeeImport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importFile" : { + "$ref" : "#/components/schemas/Document" + }, + "separator" : { + "type" : "string", + "enum" : [ "NONE", "COMMA", "SEMICOLON" ] + }, + "status" : { + "type" : "string", + "enum" : [ "FILE_UPLOADED", "FIELDS_MAPPED", "IMPORT_STARTED", "IMPORT_COMPLETED", "DELETE_DATA_STARTED" ] + }, + "importHeaders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeImportHeader" + } + }, + "startDate" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "countCreated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUpdated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countIgnored" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + } + }, + "EmployeeImportField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "displayNameExpanded" : { + "type" : "string", + "readOnly" : true + }, + "isMandatory" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "dependentOnFieldIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "inputType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SELECT", "TEXTFIELD" ] + }, + "mandatory" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "EmployeeImportHeader" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/EmployeeImport" + }, + "orderOfColumn" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "sampleValue" : { + "type" : "string" + }, + "suggestedColumnField" : { + "$ref" : "#/components/schemas/EmployeeImportField" + } + }, + "readOnly" : true + }, + "ResponseWrapperEmployeeImport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeImport" + } + } + }, + "ListResponseEmployeeImport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeImport" + } + } + } + }, + "ListResponseEmployeeImportField" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeImportField" + } + } + } + }, + "ListResponseEmployeeImportHeader" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeImportHeader" + } + } + } + }, + "EmployeeImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/EmployeeImport" + }, + "header" : { + "$ref" : "#/components/schemas/EmployeeImportHeader" + }, + "field" : { + "$ref" : "#/components/schemas/EmployeeImportField" + } + }, + "readOnly" : true + }, + "ListResponseEmployeeImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeImportHeaderFieldsRelation" + } + } + } + }, + "EmployeeImportRowContent" : { + "type" : "object", + "properties" : { + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "postalAddress1" : { + "type" : "string" + }, + "postalAddress2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "postalAddressCity" : { + "type" : "string" + }, + "postalAddressCountry" : { + "type" : "string" + }, + "phoneNumberWork" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "employeeNumber" : { + "type" : "string" + }, + "percentOfEmployment" : { + "type" : "string" + }, + "dateOfBirth" : { + "type" : "string" + }, + "socialSecurityNumber" : { + "type" : "string" + }, + "getdNumber" : { + "type" : "string" + }, + "bban" : { + "type" : "string" + }, + "iban" : { + "type" : "string" + }, + "swift" : { + "type" : "string" + }, + "vacationAllowanceEarnedYear" : { + "type" : "string" + }, + "vacationAllowanceBasis" : { + "type" : "string" + }, + "vacationAllowanceAmount" : { + "type" : "string" + }, + "vacationAllowanceExtraWeekAmount" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "employmentType" : { + "type" : "string" + }, + "employmentForm" : { + "type" : "string" + }, + "occupationCode" : { + "type" : "string" + }, + "yearlyWage" : { + "type" : "string" + }, + "hourlyWage" : { + "type" : "string" + }, + "divisionNumber" : { + "type" : "string" + }, + "internationalIdNumber" : { + "type" : "string" + }, + "internationalIdType" : { + "type" : "string" + }, + "internationalIdCountry" : { + "type" : "string" + }, + "salaryType" : { + "type" : "string" + }, + "departmentNumber" : { + "type" : "string" + }, + "importedEmploymentId" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "employmentEndReason" : { + "type" : "string" + }, + "employmentScheduleTypeAmeldingTypeId" : { + "type" : "string" + }, + "shiftDurationHours" : { + "type" : "string" + }, + "isMainEmployer" : { + "type" : "string" + }, + "hourRate" : { + "type" : "string" + }, + "hourCost" : { + "type" : "string" + }, + "dateVacationAndHourBalance" : { + "type" : "string" + }, + "vacationBalance" : { + "type" : "string" + }, + "hourBalance" : { + "type" : "string" + }, + "dnumber" : { + "type" : "string", + "writeOnly" : true + }, + "empty" : { + "type" : "boolean" + } + }, + "description" : "rowContent" + }, + "EmployeePotential" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/EmployeeImport" + }, + "rowContent" : { + "$ref" : "#/components/schemas/EmployeeImportRowContent" + }, + "errorMessage" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ImportRowErrorMessage" + } + }, + "rowStatus" : { + "type" : "string", + "enum" : [ "NEW", "UPDATE", "FAIL", "DUPLICATE", "CREATED" ] + }, + "rowNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperEmployeePotential" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeePotential" + } + } + }, + "ListResponseEmployeePotential" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeePotential" + } + } + } + }, + "ResponseWrapperSupplierImport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SupplierImport" + } + } + }, + "SupplierImport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importFile" : { + "$ref" : "#/components/schemas/Document" + }, + "separator" : { + "type" : "string", + "enum" : [ "NONE", "COMMA", "SEMICOLON" ] + }, + "status" : { + "type" : "string", + "enum" : [ "FILE_UPLOADED", "FIELDS_MAPPED", "IMPORT_STARTED", "IMPORT_COMPLETED", "DELETE_DATA_STARTED" ] + }, + "importHeaders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierImportHeader" + } + }, + "startDate" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "countCreated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUpdated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countIgnored" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "updateSupported" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "SupplierImportField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "displayNameExpanded" : { + "type" : "string", + "readOnly" : true + }, + "isMandatory" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "dependentOnFieldIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "inputType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SELECT", "TEXTFIELD" ] + }, + "mandatory" : { + "type" : "boolean", + "writeOnly" : true + } + }, + "readOnly" : true + }, + "SupplierImportHeader" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/SupplierImport" + }, + "orderOfColumn" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "sampleValue" : { + "type" : "string" + }, + "suggestedColumnField" : { + "$ref" : "#/components/schemas/SupplierImportField" + } + }, + "readOnly" : true + }, + "ListResponseSupplierImport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierImport" + } + } + } + }, + "ListResponseSupplierImportField" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierImportField" + } + } + } + }, + "ListResponseSupplierImportHeader" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierImportHeader" + } + } + } + }, + "ListResponseSupplierImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierImportHeaderFieldsRelation" + } + } + } + }, + "SupplierImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/SupplierImport" + }, + "header" : { + "$ref" : "#/components/schemas/SupplierImportHeader" + }, + "field" : { + "$ref" : "#/components/schemas/SupplierImportField" + } + }, + "readOnly" : true + }, + "ResponseWrapperSupplierPotential" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SupplierPotential" + } + } + }, + "SupplierImportRowContent" : { + "type" : "object", + "properties" : { + "supplierNumber" : { + "type" : "string" + }, + "supplierName" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "postalAddress1" : { + "type" : "string" + }, + "postalAddress2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "postalAddressCity" : { + "type" : "string" + }, + "postalAddressCountry" : { + "type" : "string" + }, + "bban" : { + "type" : "string" + }, + "iban" : { + "type" : "string" + }, + "swift" : { + "type" : "string" + }, + "isPrivatePerson" : { + "type" : "string" + }, + "fax" : { + "type" : "string" + }, + "currencyCode" : { + "type" : "string" + }, + "category1Number" : { + "type" : "string" + }, + "category1Name" : { + "type" : "string" + }, + "category2Number" : { + "type" : "string" + }, + "category2Name" : { + "type" : "string" + }, + "category3Number" : { + "type" : "string" + }, + "category3Name" : { + "type" : "string" + }, + "contactFirstName" : { + "type" : "string" + }, + "contactLastName" : { + "type" : "string" + }, + "contactAddress1" : { + "type" : "string" + }, + "contactAddress2" : { + "type" : "string" + }, + "contactAddressPostalCode" : { + "type" : "string" + }, + "contactAddressCity" : { + "type" : "string" + }, + "contactAddressCountry" : { + "type" : "string" + }, + "contactPhoneNumberWork" : { + "type" : "string" + }, + "contactPhoneNumberMobile" : { + "type" : "string" + }, + "contactEmail" : { + "type" : "string" + }, + "businessAddress1" : { + "type" : "string" + }, + "businessAddress2" : { + "type" : "string" + }, + "businessAddressPostalCode" : { + "type" : "string" + }, + "businessAddressCity" : { + "type" : "string" + }, + "businessAddressCountry" : { + "type" : "string" + }, + "deliveryAddress1" : { + "type" : "string" + }, + "deliveryAddress2" : { + "type" : "string" + }, + "deliveryAddressPostalCode" : { + "type" : "string" + }, + "deliveryAddressCity" : { + "type" : "string" + }, + "deliveryAddressCountry" : { + "type" : "string" + }, + "selfEmployedWithoutBusinessAddress" : { + "type" : "string" + }, + "socialSecurityNumber" : { + "type" : "string" + }, + "departmentName" : { + "type" : "string" + }, + "departmentNumber" : { + "type" : "string" + }, + "empty" : { + "type" : "boolean" + } + }, + "description" : "rowContent" + }, + "SupplierPotential" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/SupplierImport" + }, + "rowContent" : { + "$ref" : "#/components/schemas/SupplierImportRowContent" + }, + "errorMessage" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ImportRowErrorMessage" + } + }, + "rowStatus" : { + "type" : "string", + "enum" : [ "NEW", "UPDATE", "FAIL", "DUPLICATE", "CREATED" ] + }, + "rowNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseSupplierPotential" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierPotential" + } + } + } + }, + "ResponseWrapperVoucherImport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherImport" + } + } + }, + "VoucherImport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importFile" : { + "$ref" : "#/components/schemas/Document" + }, + "separator" : { + "type" : "string", + "enum" : [ "NONE", "COMMA", "SEMICOLON" ] + }, + "status" : { + "type" : "string", + "enum" : [ "FILE_UPLOADED", "FIELDS_MAPPED", "IMPORT_STARTED", "IMPORT_COMPLETED", "DELETE_DATA_STARTED" ] + }, + "importHeaders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherImportHeader" + } + }, + "startDate" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "countCreated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUpdated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countIgnored" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + } + }, + "VoucherImportField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "displayNameExpanded" : { + "type" : "string", + "readOnly" : true + }, + "isMandatory" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "dependentOnFieldIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "inputType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SELECT", "TEXTFIELD" ] + }, + "mandatory" : { + "type" : "boolean", + "writeOnly" : true + } + }, + "readOnly" : true + }, + "VoucherImportHeader" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/VoucherImport" + }, + "orderOfColumn" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "sampleValue" : { + "type" : "string" + }, + "suggestedColumnField" : { + "$ref" : "#/components/schemas/VoucherImportField" + } + }, + "readOnly" : true + }, + "ListResponseVoucherImport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherImport" + } + } + } + }, + "ListResponseVoucherImportField" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherImportField" + } + } + } + }, + "ListResponseVoucherImportHeader" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherImportHeader" + } + } + } + }, + "ListResponseVoucherImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherImportHeaderFieldsRelation" + } + } + } + }, + "VoucherImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/VoucherImport" + }, + "header" : { + "$ref" : "#/components/schemas/VoucherImportHeader" + }, + "field" : { + "$ref" : "#/components/schemas/VoucherImportField" + } + }, + "readOnly" : true + }, + "ResponseWrapperVoucherPotential" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherPotential" + } + } + }, + "VoucherImportRowContent" : { + "type" : "object", + "properties" : { + "voucherNumber" : { + "type" : "string" + }, + "date" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "accountNumber" : { + "type" : "string" + }, + "amount" : { + "type" : "string" + }, + "currency" : { + "type" : "string" + }, + "amountCurrency" : { + "type" : "string" + }, + "vatType" : { + "type" : "string" + }, + "voucherType" : { + "type" : "string" + }, + "asset" : { + "type" : "string" + }, + "quantity1" : { + "type" : "string" + }, + "quantity2" : { + "type" : "string" + }, + "taxTransactionType" : { + "type" : "string" + }, + "freeDimension1" : { + "type" : "string" + }, + "freeDimension2" : { + "type" : "string" + }, + "freeDimension3" : { + "type" : "string" + }, + "department" : { + "type" : "string" + }, + "project" : { + "type" : "string" + }, + "customer" : { + "type" : "string" + }, + "supplier" : { + "type" : "string" + }, + "employee" : { + "type" : "string" + }, + "product" : { + "type" : "string" + }, + "empty" : { + "type" : "boolean" + } + }, + "description" : "rowContent" + }, + "VoucherPotential" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importComponent" : { + "$ref" : "#/components/schemas/VoucherImport" + }, + "rowContent" : { + "$ref" : "#/components/schemas/VoucherImportRowContent" + }, + "errorMessage" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ImportRowErrorMessage" + } + }, + "rowStatus" : { + "type" : "string", + "enum" : [ "NEW", "UPDATE", "FAIL", "DUPLICATE", "CREATED" ] + }, + "rowNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseVoucherPotential" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherPotential" + } + } + } + }, + "IncomingInvoicePaymentWrite" : { + "type" : "object", + "properties" : { + "clientUUId" : { + "type" : "string", + "description" : "Client UUID." + }, + "payLater" : { + "type" : "boolean", + "description" : "Flag to postpone the payment of the invoice." + }, + "paymentTypeClientUUId" : { + "type" : "string", + "description" : "Payment type client UUID." + }, + "amountCurrency" : { + "type" : "number", + "description" : "Amount in currency." + }, + "oppositeAmountCurrency" : { + "type" : "number", + "description" : "Opposite amount from currency exchange." + }, + "paymentDate" : { + "type" : "string", + "description" : "Payment date." + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency ID.", + "format" : "int64" + }, + "creditorIbanOrBban" : { + "type" : "string", + "description" : "Creditor IBAN or BBAN." + }, + "originalInvoiceIbanOrBban" : { + "type" : "string", + "description" : "Bank account on an invoice." + }, + "creditorIbanOrBbanIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the creditor IBAN or BBAN is automated." + }, + "kidOrReceiverReference" : { + "type" : "string", + "description" : "KID or receiver reference." + }, + "kidIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the KID or receiver reference is automated." + }, + "foreignPayment" : { + "type" : "boolean", + "description" : "Flag for foreign payment." + }, + "regulatoryReportingCode" : { + "type" : "string", + "description" : "Regulatory reporting code." + }, + "regulatoryReportingInfo" : { + "type" : "string", + "description" : "Regulatory reporting info." + }, + "creditorName" : { + "type" : "string", + "description" : "Creditor name." + }, + "creditorBIC" : { + "type" : "string", + "description" : "Creditor BIC." + }, + "creditorBicIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the creditor BIC is automated." + }, + "creditorAddress" : { + "type" : "string", + "description" : "Creditor address." + }, + "creditorPostalCity" : { + "type" : "string", + "description" : "Creditor postal city." + }, + "creditorPostalCode" : { + "type" : "string", + "description" : "Creditor postal code." + }, + "creditorCountryId" : { + "type" : "integer", + "description" : "Creditor country ID.", + "format" : "int64" + }, + "creditorBankName" : { + "type" : "string", + "description" : "Creditor bank name." + }, + "creditorBankAddress" : { + "type" : "string", + "description" : "Creditor bank address." + }, + "creditorBankPostalCity" : { + "type" : "string", + "description" : "Creditor bank postal city." + }, + "creditorBankPostalCode" : { + "type" : "string", + "description" : "Creditor bank postal code." + }, + "creditorBankCountryId" : { + "type" : "integer", + "description" : "Creditor bank country ID.", + "format" : "int64" + }, + "creditorClearingCode" : { + "type" : "string", + "description" : "Creditor clearing code." + }, + "creditorBankIdentificator" : { + "type" : "integer", + "description" : "Creditor bank identifier.", + "format" : "int64" + }, + "interpretKidRefFieldAsKid" : { + "type" : "boolean", + "description" : "Flag for interpreting kid ref field as kid." + }, + "selectedCreditNotes" : { + "type" : "array", + "description" : "Credit notes deducted from payment amount.", + "items" : { + "type" : "integer", + "description" : "Credit notes deducted from payment amount.", + "format" : "int64" + } + }, + "goToApprovePayment" : { + "type" : "boolean", + "description" : "Flag to go to payment approval after book." + }, + "prepaidAmount" : { + "type" : "number", + "description" : "Amount already paid for EHF." + } + }, + "description" : "The invoice payment.", + "readOnly" : true + }, + "IncomingInvoiceDuplicateCheckerResult" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "numberAsString" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperIncomingInvoiceDuplicateCheckerResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoiceDuplicateCheckerResult" + } + } + }, + "IncomingInvoicePaymentHistory" : { + "type" : "object", + "properties" : { + "baseVoucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "baseVoucherRevision" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "transactions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoicePaymentHistoryTransaction" + } + }, + "remainingAmountToPay" : { + "type" : "number", + "readOnly" : true + }, + "remainingAmountToPayCurrency" : { + "type" : "number", + "readOnly" : true + } + } + }, + "IncomingInvoicePaymentHistoryTransaction" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "VENDOR_POSTING", "POSTING_RULE", "AUTOPAY", "ZTL", "REMIT", "OPEN_POST", "CREDIT_NOTE", "CLOSED", "UNKNOWN" ] + }, + "paymentType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NONE", "NOT_PAID", "NETS", "AUTOPAY", "POSTING_RULE", "ZTL" ] + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "$ref" : "#/components/schemas/Status" + }, + "baseVoucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "postingId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherNumberAsString" : { + "type" : "string", + "readOnly" : true + }, + "voucherDetailsUrl" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + }, + "text1" : { + "type" : "string", + "readOnly" : true + }, + "text2" : { + "type" : "string", + "readOnly" : true + }, + "text3" : { + "type" : "string", + "readOnly" : true + }, + "amountNegative" : { + "type" : "number", + "readOnly" : true + }, + "amountCurrencyNegative" : { + "type" : "number", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + }, + "isDeletable" : { + "type" : "boolean", + "readOnly" : true + }, + "isReversed" : { + "type" : "boolean", + "readOnly" : true + }, + "deleteMessage" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperIncomingInvoicePaymentHistory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoicePaymentHistory" + } + } + }, + "Status" : { + "type" : "object", + "properties" : { + "text" : { + "type" : "string" + }, + "variant" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "IncomingInvoiceAccount" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vatLocked" : { + "type" : "boolean", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "departmentLocked" : { + "type" : "boolean", + "readOnly" : true + }, + "requiresDepartment" : { + "type" : "boolean", + "readOnly" : true + }, + "requiresProject" : { + "type" : "boolean", + "readOnly" : true + }, + "productUnit1Id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "productUnit2Id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "currentAccountBook" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "GENERAL", "CUSTOMER", "VENDOR", "EMPLOYEE", "ASSET" ] + }, + "requiresFreeDimension1" : { + "type" : "boolean", + "readOnly" : true + }, + "requiresFreeDimension2" : { + "type" : "boolean", + "readOnly" : true + }, + "requiresFreeDimension3" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "IncomingInvoiceAggregateRead" : { + "type" : "object", + "properties" : { + "invoiceHeader" : { + "$ref" : "#/components/schemas/IncomingInvoiceHeaderRead" + }, + "orderLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineRead" + } + }, + "paymentDraft" : { + "$ref" : "#/components/schemas/IncomingInvoicePaymentRead" + }, + "lookupData" : { + "$ref" : "#/components/schemas/IncomingInvoiceLookupData" + }, + "metadata" : { + "$ref" : "#/components/schemas/IncomingInvoiceMetadata" + }, + "permissions" : { + "$ref" : "#/components/schemas/IncomingInvoicePermissions" + }, + "pageOptions" : { + "$ref" : "#/components/schemas/IncomingInvoicePageOptions" + }, + "voucherDocuments" : { + "type" : "array", + "description" : "Documents linked to this invoice", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherDocument" + } + }, + "attestationActions" : { + "type" : "array", + "description" : "Valid attestation actions for this voucher.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Link" + } + } + } + }, + "IncomingInvoiceAsset" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Assets", + "readOnly" : true + }, + "IncomingInvoiceCompany" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "description" : "Vendors and Customers", + "readOnly" : true + }, + "IncomingInvoiceDepartment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "vatReportType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + } + }, + "description" : "Departments", + "readOnly" : true + }, + "IncomingInvoiceEmployee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "IncomingInvoiceFreeDimension" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Free Dimension 3", + "readOnly" : true + }, + "IncomingInvoiceHeaderRead" : { + "type" : "object", + "properties" : { + "vendorId" : { + "type" : "integer", + "description" : "Id of the vendor", + "format" : "int64", + "readOnly" : true + }, + "vendorIsAutomated" : { + "type" : "boolean", + "description" : "Is vendor automated", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "integer", + "description" : "Voucher number", + "format" : "int32", + "readOnly" : true + }, + "voucherTempNumber" : { + "type" : "integer", + "description" : "Voucher number", + "format" : "int32", + "readOnly" : true + }, + "voucherYear" : { + "type" : "integer", + "description" : "Voucher number", + "format" : "int32", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "description" : "Invoice date", + "readOnly" : true + }, + "invoiceDateIsAutomated" : { + "type" : "boolean", + "description" : "Is invoice date automated", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "description" : "Invoice number", + "readOnly" : true + }, + "invoiceNumberIsAutomated" : { + "type" : "boolean", + "description" : "Is invoice number automated", + "readOnly" : true + }, + "invoiceAmount" : { + "type" : "number", + "description" : "Invoice amount in the company's currency.", + "readOnly" : true + }, + "invoiceAmountCurrency" : { + "type" : "number", + "description" : "Invoice amount in the currency used on the invoice.", + "readOnly" : true + }, + "invoiceAmountIsAutomated" : { + "type" : "boolean", + "description" : "Is invoice amount automated", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "description" : "Due date", + "readOnly" : true + }, + "dueDateIsAutomated" : { + "type" : "boolean", + "description" : "Is due date automated", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency id", + "format" : "int64", + "readOnly" : true + }, + "currencyIsAutomated" : { + "type" : "boolean", + "description" : "Is currency automated", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description", + "readOnly" : true + }, + "voucherTypeId" : { + "type" : "integer", + "description" : "Voucher type", + "format" : "int64", + "readOnly" : true + }, + "purchaseOrderId" : { + "type" : "integer", + "description" : "Purchase order id", + "format" : "int64", + "readOnly" : true + }, + "changedAt" : { + "type" : "string", + "description" : "Last changed date of the header", + "readOnly" : true + }, + "note" : { + "type" : "string", + "description" : "Note", + "readOnly" : true + }, + "ediDocumentId" : { + "type" : "integer", + "description" : "edi document id", + "format" : "int64", + "readOnly" : true + }, + "attachmentId" : { + "type" : "integer", + "description" : "main attachment id.", + "format" : "int64", + "readOnly" : true + }, + "includeAttachmentsOnReInvoiceOrderLines" : { + "type" : "boolean", + "description" : "Include receipts when re-invoicing", + "readOnly" : true + } + }, + "description" : "The invoice header.", + "readOnly" : true + }, + "IncomingInvoiceLookupData" : { + "type" : "object", + "properties" : { + "vendorsAndCustomers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceCompany" + } + }, + "accounts" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceAccount" + } + }, + "vatTypes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceVatType" + } + }, + "departments" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceDepartment" + } + }, + "freeDimension1" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceFreeDimension" + } + }, + "freeDimension2" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceFreeDimension" + } + }, + "freeDimension3" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceFreeDimension" + } + }, + "projects" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceProject" + } + }, + "projectSubContracts" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceProjectSubContract" + } + }, + "assets" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceAsset" + } + }, + "employees" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceEmployee" + } + }, + "products" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceProduct" + } + } + }, + "description" : "The invoice lookup data.", + "readOnly" : true + }, + "IncomingInvoiceMetadata" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "description" : "Voucher Id of the incoming invoice", + "format" : "int64", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "integer", + "description" : "Voucher number", + "format" : "int32", + "readOnly" : true + }, + "voucherTempNumber" : { + "type" : "integer", + "description" : "Voucher temporary number", + "format" : "int32", + "readOnly" : true + }, + "voucherYear" : { + "type" : "integer", + "description" : "Voucher year", + "format" : "int32", + "readOnly" : true + }, + "version" : { + "type" : "integer", + "description" : "Voucher version", + "format" : "int32", + "readOnly" : true + }, + "invoiceSourceType" : { + "type" : "string", + "description" : "Invoice Source Type.", + "readOnly" : true, + "enum" : [ "PDF", "EHF", "EFO_NELFO" ] + }, + "automationPostingSource" : { + "type" : "string", + "description" : "How the invoice was posted (manual, suggestions accepted, auto by rule/AI, auto then modified).", + "readOnly" : true, + "enum" : [ "MANUAL", "SUGGESTIONS_ACCEPTED", "AUTO_POSTED_BY_RULE", "AUTO_POSTED_BY_AI", "AUTO_POSTED_THEN_MODIFIED" ] + }, + "invoiceLifeCycle" : { + "type" : "string", + "description" : "Invoice Life Cycle.", + "readOnly" : true, + "enum" : [ "DRAFT_IN_INBOX", "DRAFT_IN_NON_POSTED", "TEMPORARY_IN_LEDGER", "IN_LEDGER" ] + }, + "costLineMode" : { + "type" : "string", + "description" : "Cost line mode for the invoice", + "readOnly" : true, + "enum" : [ "GROUPED", "MIRRORED" ] + }, + "reverseVoucherId" : { + "type" : "integer", + "description" : "Id of reverse voucher", + "format" : "int64", + "readOnly" : true + }, + "reverseVoucherNumber" : { + "type" : "string", + "description" : "Number of reverse voucher", + "readOnly" : true + }, + "accountingPeriodClosed" : { + "type" : "boolean", + "description" : "If accounting period is closed", + "readOnly" : true + }, + "annualAccountsId" : { + "type" : "integer", + "description" : "The accounting period id this voucher belongs to", + "format" : "int64", + "readOnly" : true + }, + "primaryIndustryVatPeriodClosed" : { + "type" : "boolean", + "description" : "If vat period is closed for primary industries", + "readOnly" : true + }, + "primaryIndustryVatPeriodClosedReportId" : { + "type" : "integer", + "description" : "If vat period is closed for primary industries report ID", + "format" : "int64", + "readOnly" : true + }, + "generalIndustryVatPeriodClosed" : { + "type" : "boolean", + "description" : "If vat period is closed for general industries", + "readOnly" : true + }, + "generalIndustryVatPeriodClosedReportId" : { + "type" : "integer", + "description" : "If vat period is closed for general industries report ID", + "format" : "int64", + "readOnly" : true + }, + "defaultVatReportType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + }, + "changedAt" : { + "type" : "string", + "description" : "Changed at", + "readOnly" : true + }, + "changedByEmployeeId" : { + "type" : "integer", + "description" : "Changed by employee ID", + "format" : "int64", + "readOnly" : true + }, + "changedByActualEmployeeId" : { + "type" : "integer", + "description" : "Changed by actual employee ID", + "format" : "int64", + "readOnly" : true + }, + "changedByActualCompanyId" : { + "type" : "integer", + "description" : "Changed by actual Company ID", + "format" : "int64", + "readOnly" : true + }, + "brregCompanyLookup" : { + "$ref" : "#/components/schemas/BrregCompanyLookup" + }, + "attestationApproved" : { + "type" : "boolean", + "description" : "Whether the attestation flow is fully approved", + "readOnly" : true + } + }, + "description" : "The invoice meta data.", + "readOnly" : true + }, + "IncomingInvoicePageOptions" : { + "type" : "object", + "properties" : { + "data" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "description" : "The actual options as a JSON blob" + }, + "description" : "The actual options as a JSON blob" + } + }, + "description" : "Page options", + "readOnly" : true + }, + "IncomingInvoicePaymentRead" : { + "type" : "object", + "properties" : { + "clientUUId" : { + "type" : "string", + "description" : "Client UUID.", + "readOnly" : true + }, + "payLater" : { + "type" : "boolean", + "description" : "Flag to postpone the payment of the invoice." + }, + "paymentTypeClientUUId" : { + "type" : "string", + "description" : "Payment type client UUID.", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "Amount in currency.", + "readOnly" : true + }, + "amountIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating amount in currency is automated", + "readOnly" : true + }, + "oppositeAmountCurrency" : { + "type" : "number", + "description" : "Opposite amount from currency exchange." + }, + "paymentDate" : { + "type" : "string", + "description" : "Payment date.", + "readOnly" : true + }, + "paymentDateIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating payment date is automated", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency ID.", + "format" : "int64", + "readOnly" : true + }, + "creditorIbanOrBban" : { + "type" : "string", + "description" : "Creditor IBAN or BBAN.", + "readOnly" : true + }, + "originalInvoiceIbanOrBban" : { + "type" : "string", + "description" : "Bank account on an invoice.", + "readOnly" : true + }, + "creditorIbanOrBbanIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the creditor IBAN or BBAN is automated.", + "readOnly" : true + }, + "kidOrReceiverReference" : { + "type" : "string", + "description" : "KID or receiver reference.", + "readOnly" : true + }, + "kidIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the KID or receiver reference is automated.", + "readOnly" : true + }, + "foreignPayment" : { + "type" : "boolean", + "description" : "Flag for foreign payment.", + "readOnly" : true + }, + "regulatoryReportingCode" : { + "type" : "string", + "description" : "Regulatory reporting code.", + "readOnly" : true + }, + "regulatoryReportingInfo" : { + "type" : "string", + "description" : "Regulatory reporting info.", + "readOnly" : true + }, + "creditorName" : { + "type" : "string", + "description" : "Creditor name.", + "readOnly" : true + }, + "creditorBIC" : { + "type" : "string", + "description" : "Creditor BIC.", + "readOnly" : true + }, + "creditorBicIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the creditor BIC is automated.", + "readOnly" : true + }, + "creditorAddress" : { + "type" : "string", + "description" : "Creditor address.", + "readOnly" : true + }, + "creditorPostalCity" : { + "type" : "string", + "description" : "Creditor postal city.", + "readOnly" : true + }, + "creditorPostalCode" : { + "type" : "string", + "description" : "Creditor postal code.", + "readOnly" : true + }, + "creditorCountryId" : { + "type" : "integer", + "description" : "Creditor country ID.", + "format" : "int64", + "readOnly" : true + }, + "creditorBankName" : { + "type" : "string", + "description" : "Creditor bank name.", + "readOnly" : true + }, + "creditorBankAddress" : { + "type" : "string", + "description" : "Creditor bank address.", + "readOnly" : true + }, + "creditorBankPostalCity" : { + "type" : "string", + "description" : "Creditor bank postal city.", + "readOnly" : true + }, + "creditorBankPostalCode" : { + "type" : "string", + "description" : "Creditor bank postal code.", + "readOnly" : true + }, + "creditorBankCountryId" : { + "type" : "integer", + "description" : "Creditor bank country ID.", + "format" : "int64", + "readOnly" : true + }, + "creditorClearingCode" : { + "type" : "string", + "description" : "Creditor clearing code.", + "readOnly" : true + }, + "creditorBankIdentificator" : { + "type" : "integer", + "description" : "Creditor bank identifier.", + "format" : "int64", + "readOnly" : true + }, + "selectedCreditNotes" : { + "type" : "array", + "description" : "Credit notes deducted from payment amount.", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "Credit notes deducted from payment amount.", + "format" : "int64", + "readOnly" : true + } + }, + "goToApprovePayment" : { + "type" : "boolean", + "description" : "Flag to go to payment approval after book.", + "readOnly" : true + }, + "prepaidAmount" : { + "type" : "number", + "description" : "Amount already paid for EHF", + "readOnly" : true + } + } + }, + "IncomingInvoicePermissions" : { + "type" : "object", + "properties" : { + "hasReadPermission" : { + "type" : "boolean", + "description" : "Whether the caller may read this invoice.", + "readOnly" : true + }, + "hasUpdatePermission" : { + "type" : "boolean", + "description" : "Whether the caller may update this invoice (also required to upload or change attachments).", + "readOnly" : true + }, + "hasSendToNonPostedPermission" : { + "type" : "boolean", + "description" : "Whether the caller may send this invoice to the non-posted (draft) state.", + "readOnly" : true + }, + "hasSendToLedgerPermission" : { + "type" : "boolean", + "description" : "Whether the caller may book this invoice to the ledger.", + "readOnly" : true + }, + "hasRegisterPaymentPermission" : { + "type" : "boolean", + "description" : "Whether the caller may register a payment on this invoice.", + "readOnly" : true + }, + "hasRestrictedWageInfo" : { + "type" : "boolean", + "description" : "True when the invoice contains wage information the caller is not allowed to see; such invoices cannot be updated by the caller.", + "readOnly" : true + } + }, + "description" : "The user rights for invoice.", + "readOnly" : true + }, + "IncomingInvoiceProduct" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "priceExcludingVatCurrency" : { + "type" : "number", + "readOnly" : true + }, + "markupNetPercentage" : { + "type" : "number", + "readOnly" : true + }, + "markupListPercentage" : { + "type" : "number", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "stockItem" : { + "type" : "boolean", + "readOnly" : true + }, + "resaleProductIsStockItem" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "IncomingInvoiceProject" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "fixedPrice" : { + "type" : "boolean", + "readOnly" : true + }, + "internalProject" : { + "type" : "boolean", + "readOnly" : true + }, + "closed" : { + "type" : "boolean", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "markup" : { + "type" : "number", + "readOnly" : true + }, + "discount" : { + "type" : "number", + "readOnly" : true + }, + "useProductNetPrice" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "IncomingInvoiceProjectSubContract" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "projectId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vendorId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "IncomingInvoiceVatType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "direction" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "IN", "OUT" ] + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "basisPercentage" : { + "type" : "number", + "readOnly" : true + }, + "percentage" : { + "type" : "number", + "readOnly" : true + }, + "isReverseInDeductableVatCode" : { + "type" : "boolean", + "readOnly" : true + }, + "isReverseInNonDeductableVatCode" : { + "type" : "boolean", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "reverseInDeductableVatCode" : { + "type" : "boolean" + }, + "reverseInNonDeductableVatCode" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "IncomingOrderLineRead" : { + "type" : "object", + "properties" : { + "clientUUId" : { + "type" : "string", + "description" : "Client UUID.", + "readOnly" : true + }, + "row" : { + "type" : "integer", + "description" : "Row number of the order line.", + "format" : "int32", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description of the order line.", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "description" : "ID of the account.", + "format" : "int64", + "readOnly" : true + }, + "accountIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the account is automated.", + "readOnly" : true + }, + "count" : { + "type" : "number", + "description" : "Count of the order line.", + "readOnly" : true + }, + "unitPrice" : { + "type" : "number", + "description" : "Unit price of the order line, in the currency used on the invoice.", + "readOnly" : true + }, + "unitPriceCurrency" : { + "type" : "number", + "description" : "Unit price of the order line, in the currency used on the invoice.", + "readOnly" : true + }, + "amountInclVat" : { + "type" : "number", + "description" : "Amount including VAT, in the currency used on the invoice.", + "readOnly" : true + }, + "amountInclVatCurrency" : { + "type" : "number", + "description" : "Amount including VAT, in the currency used on the invoice.", + "readOnly" : true + }, + "amountIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the amount is automated.", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "description" : "ID of the VAT type.", + "format" : "int64", + "readOnly" : true + }, + "vatTypeIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the VAT type is automated.", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "description" : "ID of the department.", + "format" : "int64", + "readOnly" : true + }, + "departmentIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the department is automated.", + "readOnly" : true + }, + "projectId" : { + "type" : "integer", + "description" : "ID of the project.", + "format" : "int64", + "readOnly" : true + }, + "projectIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the project is automated.", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "description" : "ID of the employee.", + "format" : "int64", + "readOnly" : true + }, + "productId" : { + "type" : "integer", + "description" : "ID of the product.", + "format" : "int64", + "readOnly" : true + }, + "assetId" : { + "type" : "integer", + "description" : "ID of the asset.", + "format" : "int64", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "description" : "ID of the customer.", + "format" : "int64", + "readOnly" : true + }, + "vendorId" : { + "type" : "integer", + "description" : "ID of the vendor.", + "format" : "int64", + "readOnly" : true + }, + "taxTransactionTypeId" : { + "type" : "integer", + "description" : "Type of tax transaction.", + "format" : "int64", + "readOnly" : true + }, + "quantityAmount1" : { + "type" : "number", + "description" : "Quantity amount 1.", + "readOnly" : true + }, + "productUnitId1" : { + "type" : "integer", + "description" : "ID of the product unit 1.", + "format" : "int64", + "readOnly" : true + }, + "quantityAmount2" : { + "type" : "number", + "description" : "Quantity amount 2.", + "readOnly" : true + }, + "productUnitId2" : { + "type" : "integer", + "description" : "ID of the product unit 2.", + "format" : "int64", + "readOnly" : true + }, + "projectOrderLineIsApprovedOrCharged" : { + "type" : "boolean", + "description" : "Is project orderline approved or charged.", + "readOnly" : true + }, + "reInvoiceOnProject" : { + "type" : "boolean", + "description" : "Re-invoice on project flag.", + "readOnly" : true + }, + "reInvoiceProjectId" : { + "type" : "integer", + "description" : "Re-invoice project ID.", + "format" : "int64", + "readOnly" : true + }, + "reInvoiceSubContractId" : { + "type" : "integer", + "description" : "Re-invoice subcontract ID.", + "format" : "int64", + "readOnly" : true + }, + "reInvoiceMarkup" : { + "type" : "number", + "description" : "Re-invoice markup.", + "readOnly" : true + }, + "reInvoiceDiscount" : { + "type" : "number", + "description" : "Re-invoice discount.", + "readOnly" : true + }, + "reInvoiceUnitPrice" : { + "type" : "number", + "description" : "Re-invoice unit price in the project currency.", + "readOnly" : true + }, + "reInvoiceVatTypeId" : { + "type" : "integer", + "description" : "Re-invoice VAT type ID.", + "format" : "int64", + "readOnly" : true + }, + "budgetOrderLineId" : { + "type" : "integer", + "description" : "ID of orderline in budget post", + "format" : "int64", + "readOnly" : true + }, + "changedAt" : { + "type" : "string", + "description" : "The date the order line was last changed.", + "readOnly" : true + }, + "changedByEmployeeId" : { + "type" : "integer", + "description" : "Employee that changed the order line.", + "format" : "int64", + "readOnly" : true + }, + "changedByActualEmployeeId" : { + "type" : "integer", + "description" : "Actual employee that changed the order line.", + "format" : "int64", + "readOnly" : true + }, + "changedByActualCompanyId" : { + "type" : "integer", + "description" : "Company that changed the order line.", + "format" : "int64", + "readOnly" : true + }, + "periodizationAccountId" : { + "type" : "integer", + "description" : "Periodization Account ID.", + "format" : "int64", + "readOnly" : true + }, + "periodizationStartMonth" : { + "type" : "integer", + "description" : "Periodization Start Month.", + "format" : "int32", + "readOnly" : true + }, + "periodizationStartYear" : { + "type" : "integer", + "description" : "Periodization Start Year.", + "format" : "int32", + "readOnly" : true + }, + "periodizationPeriodsCount" : { + "type" : "integer", + "description" : "Number of Periodization Periods.", + "format" : "int32", + "readOnly" : true + }, + "saveOrderLine" : { + "type" : "boolean", + "description" : "The orderline has applied suggestions that has not been saved to the database and needs to be saved.", + "readOnly" : true + }, + "freeDimension1Id" : { + "type" : "integer", + "description" : "Free dimension 1 value id.", + "format" : "int64", + "readOnly" : true + }, + "freeDimension2Id" : { + "type" : "integer", + "description" : "Free dimension 2 value id.", + "format" : "int64", + "readOnly" : true + }, + "freeDimension3Id" : { + "type" : "integer", + "description" : "Free dimension 3 value id.", + "format" : "int64", + "readOnly" : true + }, + "warehouseId" : { + "type" : "integer", + "description" : "ID of the warehouse for goods receipt.", + "format" : "int64", + "readOnly" : true + }, + "warehouseLocationId" : { + "type" : "integer", + "description" : "ID of the warehouse location for goods receipt.", + "format" : "int64", + "readOnly" : true + }, + "originalOrderLineIds" : { + "type" : "array", + "description" : "IDs of the original order lines from EHF/PDF import that this order line was derived from.", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "IDs of the original order lines from EHF/PDF import that this order line was derived from.", + "format" : "int64", + "readOnly" : true + } + } + }, + "readOnly" : true + }, + "ResponseWrapperIncomingInvoiceAggregateRead" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoiceAggregateRead" + } + } + }, + "VoucherDocument" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Document ID", + "format" : "int64", + "readOnly" : true + }, + "title" : { + "type" : "string", + "description" : "Title of the document, usually the file name", + "readOnly" : true + }, + "mimeType" : { + "type" : "string", + "description" : "MIME type of the document", + "readOnly" : true + }, + "size" : { + "type" : "integer", + "description" : "Size of the document in bytes", + "format" : "int32", + "readOnly" : true + }, + "isDeletable" : { + "type" : "boolean", + "description" : "Whether the document can be deleted", + "readOnly" : true + }, + "isAllowSendToInbox" : { + "type" : "boolean", + "description" : "Whether the document can be sent to inbox", + "readOnly" : true + }, + "isVoucher" : { + "type" : "boolean", + "description" : "Whether the document represents the voucher attachment", + "readOnly" : true + } + }, + "description" : "All documents linked to this voucher for PDF display", + "readOnly" : true + }, + "IncomingInvoiceAnomaly" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "description" : "voucherId of the IncomingInvoiceOriginal.", + "format" : "int64", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "readOnly" : true + }, + "vendorId" : { + "type" : "string", + "description" : "Vendor organisation number.", + "readOnly" : true + }, + "vendorName" : { + "type" : "string", + "description" : "Official name from enhetsregisteret if available, otherwise the name on the invoice.", + "readOnly" : true + }, + "bankAccountNumber" : { + "type" : "string", + "description" : "Domestic bank account; falls back to IBAN when domestic is blank.", + "readOnly" : true + }, + "kidNumber" : { + "type" : "string", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "invoiceAmount" : { + "type" : "number", + "description" : "Amount including VAT.", + "readOnly" : true + }, + "currency" : { + "type" : "string", + "readOnly" : true + }, + "vendorIsInsolvent" : { + "type" : "boolean", + "description" : "True when the vendor is flagged as bankrupt in enhetsregisteret.", + "readOnly" : true + }, + "invoiceLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceAnomalyLine" + } + }, + "vendorRegisteredInBrreg" : { + "type" : "boolean" + }, + "vendorVatRegistered" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "IncomingInvoiceAnomalyExport" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "string", + "description" : "Official company name from enhetsregisteret if resolved, else the Tripletex company name, else the companyId.", + "readOnly" : true + }, + "invoices" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceAnomaly" + } + }, + "companyVatRegistered" : { + "type" : "boolean" + } + } + }, + "IncomingInvoiceAnomalyLine" : { + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "description" : "Line description; falls back to name or productName when blank.", + "readOnly" : true + }, + "invoiceLineId" : { + "type" : "integer", + "description" : "IncomingOrderLineOriginal.id.", + "format" : "int64", + "readOnly" : true + }, + "productId" : { + "type" : "string", + "description" : "Sellers product id; falls back to the standard product identification.", + "readOnly" : true + }, + "vatNumber" : { + "type" : "number", + "description" : "VAT rate in percentage, from the original order line.", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "description" : "Total amount of the order line including VAT.", + "readOnly" : true + }, + "quantity" : { + "type" : "number", + "description" : "Quantity/count.", + "readOnly" : true + }, + "invoiceProductPrice" : { + "type" : "number", + "description" : "Unit price on the invoice line, excluding VAT.", + "readOnly" : true + }, + "tripletexRegisteredProductPrice" : { + "type" : "number", + "description" : "Price from Tripletex's product table for the same productId. Null when not resolved.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseVoucherDocument" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherDocument" + } + } + } + }, + "ListResponseVoucherInboxAttachment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherInboxAttachment" + } + } + } + }, + "VoucherInboxAttachment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id for this voucher inbox attachment", + "format" : "int64", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description of this voucher inbox attachment", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Date uploaded for this voucher inbox attachment", + "readOnly" : true + }, + "attachmentId" : { + "type" : "integer", + "description" : "attachmentId for this voucher inbox attachment", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "CreditNotePosting" : { + "type" : "object", + "properties" : { + "postingId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "voucherDetailsUrl" : { + "type" : "string", + "readOnly" : true + }, + "posted" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ListResponseCreditNotePosting" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CreditNotePosting" + } + } + } + }, + "ListResponseIncomingInvoiceDepartment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceDepartment" + } + } + } + }, + "IncomingInvoiceHistory" : { + "type" : "object", + "properties" : { + "date" : { + "type" : "string", + "format" : "date", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "paymentStatus" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseIncomingInvoiceHistory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceHistory" + } + } + } + }, + "LastVendorInvoice" : { + "type" : "object", + "properties" : { + "currencyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "projectId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "productId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "freeDimension1Id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "freeDimension2Id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "freeDimension3Id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + } + }, + "ResponseWrapperLastVendorInvoice" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LastVendorInvoice" + } + } + }, + "ResponseWrapperIncomingInvoicePageOptions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoicePageOptions" + } + } + }, + "ListResponseIncomingInvoiceCompany" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceCompany" + } + } + } + }, + "IncomingInvoiceSaveResult" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "description" : "Voucher Id of the incoming invoice", + "format" : "int64", + "readOnly" : true + }, + "revision" : { + "type" : "integer", + "description" : "Voucher revision", + "format" : "int32", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "integer", + "description" : "Voucher number of the incoming invoice", + "format" : "int32", + "readOnly" : true + }, + "voucherTempNumber" : { + "type" : "integer", + "description" : "Temporary voucher number of the incoming invoice", + "format" : "int32", + "readOnly" : true + }, + "voucherYear" : { + "type" : "integer", + "description" : "Voucher year of the incoming invoice", + "format" : "int32", + "readOnly" : true + }, + "invoiceLifeCycle" : { + "type" : "string", + "description" : "Invoice Life Cycle.", + "readOnly" : true, + "enum" : [ "DRAFT_IN_INBOX", "DRAFT_IN_NON_POSTED", "TEMPORARY_IN_LEDGER", "IN_LEDGER" ] + }, + "paymentIdsToApprove" : { + "type" : "array", + "description" : "List of payment ids that need to be approved", + "readOnly" : true, + "items" : { + "type" : "integer", + "description" : "List of payment ids that need to be approved", + "format" : "int64", + "readOnly" : true + } + }, + "redirectUrl" : { + "type" : "string", + "description" : "Redirect URL after booking the incoming invoice", + "readOnly" : true + } + } + }, + "ResponseWrapperIncomingInvoiceSaveResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoiceSaveResult" + } + } + }, + "IncomingInvoiceAggregateWrite" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "description" : "Voucher Id of the incoming invoice", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "description" : "Voucher version", + "format" : "int32" + }, + "costLineMode" : { + "type" : "string", + "description" : "Cost line mode for the invoice", + "enum" : [ "GROUPED", "MIRRORED" ] + }, + "invoiceHeader" : { + "$ref" : "#/components/schemas/IncomingInvoiceHeaderWrite" + }, + "orderLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineWrite" + } + }, + "paymentDraft" : { + "$ref" : "#/components/schemas/IncomingInvoicePaymentWrite" + }, + "deletedOrderLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineWrite" + } + }, + "purchaseOrderRelation" : { + "$ref" : "#/components/schemas/PurchaseOrderRelationWrite" + } + } + }, + "IncomingInvoiceHeaderWrite" : { + "type" : "object", + "properties" : { + "vendorId" : { + "type" : "integer", + "description" : "The Incoming invoice draft vendor", + "format" : "int64" + }, + "vendorIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the vendor is automated." + }, + "invoiceDate" : { + "type" : "string", + "description" : "The date the invoice was issued." + }, + "invoiceDateIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the invoice date is automated." + }, + "dueDate" : { + "type" : "string", + "description" : "The date the invoice is due." + }, + "dueDateIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the due date is automated." + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency used in the invoice.", + "format" : "int64" + }, + "currencyIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the currency is automated." + }, + "invoiceAmount" : { + "type" : "number", + "description" : "Amount including VAT, in the company's currency. On a foreign-currency invoice, send it together with invoiceAmountCurrency to set an explicit company-side amount that overrides the default exchange rate. When omitted, it is calculated from invoiceAmountCurrency using the default exchange rate at the invoice date." + }, + "invoiceAmountCurrency" : { + "type" : "number", + "description" : "Invoice amount in the currency used on the invoice." + }, + "invoiceAmountIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the invoice amount is automated." + }, + "description" : { + "type" : "string", + "description" : "Description of the invoice." + }, + "invoiceNumber" : { + "type" : "string", + "description" : "If value is set to 0, the invoice number will be generated." + }, + "invoiceNumberIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the invoice number is automated." + }, + "voucherTypeId" : { + "type" : "integer", + "description" : "Voucher type of the invoice.", + "format" : "int64" + }, + "purchaseOrderId" : { + "type" : "integer", + "description" : "The purchase order that the invoice belongs to.", + "format" : "int64" + }, + "includeAttachmentsOnReInvoiceOrderLines" : { + "type" : "boolean", + "description" : "Include receipts when re-invoicing" + } + }, + "description" : "The invoice header.", + "readOnly" : true + }, + "IncomingOrderLineWrite" : { + "type" : "object", + "properties" : { + "clientUUId" : { + "type" : "string", + "description" : "Client UUID." + }, + "row" : { + "minimum" : 0, + "type" : "integer", + "description" : "Row number of the order line.", + "format" : "int32" + }, + "description" : { + "type" : "string", + "description" : "Description of the order line." + }, + "accountId" : { + "type" : "integer", + "description" : "ID of the account.", + "format" : "int64" + }, + "accountIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the account is automated." + }, + "count" : { + "type" : "number", + "description" : "Count of the order line." + }, + "amountInclVatCurrency" : { + "type" : "number", + "description" : "Amount including VAT, in the currency used on the invoice." + }, + "amountEditOrder" : { + "type" : "string", + "description" : "Amount edit order." + }, + "amountIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the amount is automated." + }, + "vatTypeId" : { + "type" : "integer", + "description" : "ID of the VAT type.", + "format" : "int64" + }, + "vatTypeIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the VAT type is automated." + }, + "departmentId" : { + "type" : "integer", + "description" : "ID of the department.", + "format" : "int64" + }, + "departmentIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the department is automated." + }, + "projectId" : { + "type" : "integer", + "description" : "ID of the project.", + "format" : "int64" + }, + "projectIsAutomated" : { + "type" : "boolean", + "description" : "Indicates if the project is automated." + }, + "employeeId" : { + "type" : "integer", + "description" : "ID of the employee.", + "format" : "int64" + }, + "productId" : { + "type" : "integer", + "description" : "ID of the product.", + "format" : "int64" + }, + "assetId" : { + "type" : "integer", + "description" : "ID of the asset.", + "format" : "int64" + }, + "customerId" : { + "type" : "integer", + "description" : "ID of the customer.", + "format" : "int64" + }, + "vendorId" : { + "type" : "integer", + "description" : "ID of the vendor.", + "format" : "int64" + }, + "taxTransactionTypeId" : { + "type" : "integer", + "description" : "ID of tax transaction.", + "format" : "int64" + }, + "quantityAmount1" : { + "type" : "number", + "description" : "Quantity amount 1." + }, + "productUnitId1" : { + "type" : "integer", + "description" : "ID of the product unit 1.", + "format" : "int64" + }, + "quantityAmount2" : { + "type" : "number", + "description" : "Quantity amount 2." + }, + "productUnitId2" : { + "type" : "integer", + "description" : "ID of the product unit 2.", + "format" : "int64" + }, + "reInvoiceOnProject" : { + "type" : "boolean", + "description" : "Re-invoice on project flag." + }, + "reInvoiceProjectId" : { + "type" : "integer", + "description" : "Re-invoice project ID.", + "format" : "int64" + }, + "reInvoiceSubContractId" : { + "type" : "integer", + "description" : "Re-invoice subcontract ID.", + "format" : "int64" + }, + "reInvoiceMarkup" : { + "type" : "number", + "description" : "Re-invoice markup." + }, + "reInvoiceDiscount" : { + "type" : "number", + "description" : "Re-invoice discount." + }, + "reInvoiceUnitPrice" : { + "type" : "number", + "description" : "Re-invoice unit price in the project currency." + }, + "reInvoiceVatTypeId" : { + "type" : "integer", + "description" : "Re-invoice VAT type ID.", + "format" : "int64" + }, + "budgetOrderLineId" : { + "type" : "integer", + "description" : "ID of orderline used as budget item", + "format" : "int64" + }, + "periodizationAccountId" : { + "type" : "integer", + "description" : "Periodization Account ID.", + "format" : "int64" + }, + "periodizationStartMonth" : { + "maximum" : 12, + "minimum" : 1, + "type" : "integer", + "description" : "Periodization Start Month.", + "format" : "int32" + }, + "periodizationStartYear" : { + "minimum" : 1990, + "type" : "integer", + "description" : "Periodization Start Year.", + "format" : "int32" + }, + "periodizationPeriodsCount" : { + "minimum" : 1, + "type" : "integer", + "description" : "Number of Periodization Periods.", + "format" : "int32" + }, + "freeDimension1Id" : { + "type" : "integer", + "description" : "Free dimension 1 value id.", + "format" : "int64" + }, + "freeDimension2Id" : { + "type" : "integer", + "description" : "Free dimension 2 value id.", + "format" : "int64" + }, + "freeDimension3Id" : { + "type" : "integer", + "description" : "Free dimension 3 value id.", + "format" : "int64" + }, + "warehouseId" : { + "type" : "integer", + "description" : "ID of the warehouse for goods receipt.", + "format" : "int64" + }, + "warehouseLocationId" : { + "type" : "integer", + "description" : "ID of the warehouse location for goods receipt.", + "format" : "int64" + }, + "originalOrderLineIds" : { + "type" : "array", + "description" : "IDs of the original order lines from EHF/PDF import that this order line was derived from.", + "items" : { + "type" : "integer", + "description" : "IDs of the original order lines from EHF/PDF import that this order line was derived from.", + "format" : "int64" + } + } + }, + "description" : "The invoice deleted order lines.", + "readOnly" : true + }, + "PurchaseOrderRelationWrite" : { + "type" : "object", + "properties" : { + "orderOutId" : { + "type" : "integer", + "description" : "Purchase order ID for manual PO link. 0 or null for automatic goods receipt.", + "format" : "int32" + }, + "registerGoodsReceipt" : { + "type" : "boolean", + "description" : "Whether to register goods receipt automatically when posting." + }, + "delete" : { + "type" : "boolean", + "description" : "Set to true to delete an existing relation." + } + }, + "description" : "Purchase order relation for goods receipt. If provided, the relation will be created/updated/deleted as part of the save." + }, + "ListResponseIncomingOrderLineRead" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineRead" + } + } + } + }, + "ListResponseString" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + } + }, + "ListResponseIncomingInvoiceAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceAccount" + } + } + } + }, + "IncomingInvoiceCurrencyRate" : { + "type" : "object", + "properties" : { + "currencyId" : { + "type" : "integer", + "description" : "Id of the currency the rate applies to.", + "format" : "int64", + "readOnly" : true + }, + "rate" : { + "type" : "number", + "description" : "Exchange rate expressed in company currency (NOK) per one unit of the currency, with the currency factor already applied.", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Date of the exchange rate actually used (the latest rate on or before the requested date). Used by the client to flag rates that are too old.", + "readOnly" : true + } + }, + "description" : "A NorgesBank exchange rate for a single currency on a given date, tailored for the incoming invoice page. The currency factor is already folded into the rate, so no separate factor is needed.", + "readOnly" : true + }, + "ListResponseIncomingInvoiceCurrencyRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceCurrencyRate" + } + } + } + }, + "ListResponseIncomingInvoiceEmployee" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceEmployee" + } + } + } + }, + "IncomingInvoicePaymentExternalWrite" : { + "type" : "object", + "properties" : { + "paymentTypeClientUUId" : { + "maxLength" : 50, + "minLength" : 0, + "type" : "string", + "description" : "Payment type client UUID — the uniqueId from GET /bank/paymentWidget/advanced/paymentTypes?scenario=INCOMING_INVOICE_NEW. When useDefaultPaymentType is true, or this is left blank/omitted, the vendor's last-used payment type (else the scenario default) is used instead." + }, + "amountCurrency" : { + "type" : "number", + "description" : "Amount to pay, in the invoice currency. Defaults to the remaining-to-pay amount when omitted." + }, + "oppositeAmountCurrency" : { + "type" : "number", + "description" : "Opposite amount from currency exchange — the company-currency (NOK) equivalent of `amountCurrency`. Only consulted when the invoice currency differs from the company currency. When omitted, backfilled at booking time from the exchange rate on `paymentDate`." + }, + "paymentDate" : { + "type" : "string", + "description" : "Payment date." + }, + "creditorIbanOrBban" : { + "maxLength" : 50, + "minLength" : 0, + "type" : "string", + "description" : "Creditor IBAN or BBAN. Defaults to the vendor's account when omitted." + }, + "kidOrReceiverReference" : { + "maxLength" : 25, + "minLength" : 0, + "type" : "string", + "description" : "KID or receiver reference. A digits-only value is treated as a KID; any value containing letters is treated as a free-text reference." + }, + "useDefaultPaymentType" : { + "type" : "boolean", + "description" : "Set paymentType to last type for vendor, autopay, ztl or first available other type" + }, + "partialPayment" : { + "type" : "boolean", + "description" : "Set to true to allow multiple payments registered. Must be true when the invoice already has payment history, otherwise the request is rejected." + }, + "foreignPayment" : { + "type" : "boolean", + "description" : "Flag for foreign payment. Must be true when sending to a creditor outside Norway via Autopay or ZTL — all other abroad fields below are only consulted when this is true." + }, + "regulatoryReportingCode" : { + "maxLength" : 5, + "minLength" : 0, + "type" : "string", + "description" : "Regulatory reporting code for foreign payments (both SWIFT/BIC and clearing-code routes). Required by Norges Bank when a single overseas payment exceeds 100 000 NOK. If set, `regulatoryReportingInfo` must also be set." + }, + "regulatoryReportingInfo" : { + "maxLength" : 100, + "minLength" : 0, + "type" : "string", + "description" : "Free-text justification accompanying `regulatoryReportingCode` (both SWIFT/BIC and clearing-code routes). Required when `regulatoryReportingCode` is set." + }, + "creditorName" : { + "maxLength" : 250, + "minLength" : 0, + "type" : "string", + "description" : "Creditor (payee) name. Required for both SWIFT/BIC and clearing-code routes." + }, + "creditorBIC" : { + "maxLength" : 50, + "minLength" : 0, + "type" : "string", + "description" : "Creditor's bank BIC / SWIFT code. Required for the **SWIFT/BIC route** (`creditorBankIdentificator` = 0). Validated as an ISO 9362 SWIFT code; the country segment (chars 5–6) must match the IBAN country and `creditorBankCountryId`, and must not be NO." + }, + "creditorAddress" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Creditor street address. Required for both SWIFT/BIC and clearing-code routes." + }, + "creditorPostalCode" : { + "maxLength" : 50, + "minLength" : 0, + "type" : "string", + "description" : "Creditor postal code. Required for both SWIFT/BIC and clearing-code routes. Autopay rejects values longer than 16 characters at send-time." + }, + "creditorPostalCity" : { + "maxLength" : 50, + "minLength" : 0, + "type" : "string", + "description" : "Creditor postal city. Required for both SWIFT/BIC and clearing-code routes. Autopay rejects values longer than 35 characters at send-time." + }, + "creditorCountryId" : { + "type" : "integer", + "description" : "Creditor country ID (Tripletex country reference). Required for both SWIFT/BIC and clearing-code routes.", + "format" : "int64" + }, + "creditorBankName" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Creditor's bank name. Required for the **clearing-code route** (`creditorBankIdentificator` = 1); ignored on the SWIFT/BIC route. Autopay rejects values longer than 140 characters at send-time." + }, + "creditorBankAddress" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Creditor's bank address. Required for the **clearing-code route** (`creditorBankIdentificator` = 1); ignored on the SWIFT/BIC route. Autopay rejects values longer than 70 characters at send-time." + }, + "creditorBankPostalCode" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Creditor's bank postal code. Required for the **clearing-code route** (`creditorBankIdentificator` = 1); ignored on the SWIFT/BIC route. Autopay rejects values longer than 16 characters at send-time." + }, + "creditorBankPostalCity" : { + "maxLength" : 35, + "minLength" : 0, + "type" : "string", + "description" : "Creditor's bank postal city. Required for the **clearing-code route** (`creditorBankIdentificator` = 1); ignored on the SWIFT/BIC route." + }, + "creditorBankCountryId" : { + "type" : "integer", + "description" : "Creditor's bank country ID. Required for both SWIFT/BIC and clearing-code routes. Must match the IBAN country (when IBAN is supplied) and must not be NO.", + "format" : "int64" + }, + "creditorClearingCode" : { + "maxLength" : 50, + "minLength" : 0, + "type" : "string", + "description" : "Creditor bank clearing/routing code (e.g. ABA routing in the US, BSB in AU, IFSC in IN). Required for the **clearing-code route** (`creditorBankIdentificator` = 1); ignored on the SWIFT/BIC route. Autopay rejects values longer than 35 characters at send-time." + }, + "creditorBankIdentificator" : { + "type" : "integer", + "description" : "Which identifier is used to route the foreign payment to the creditor's bank. **0 = SWIFT/BIC** — the bank is addressed by `creditorBIC` only; `creditorBank*` fields are not required. **1 = Clearing code** — the bank is addressed by `creditorClearingCode` and the full `creditorBank*` block (name, address, postal code, postal city, country) is required. Required when `foreignPayment` is true.", + "format" : "int64", + "enum" : [ 0, 1 ] + } + } + }, + "IncomingInvoiceAggregateExternalRead" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "description" : "Voucher Id of the incoming invoice", + "format" : "int64", + "readOnly" : true + }, + "invoiceHeader" : { + "$ref" : "#/components/schemas/IncomingInvoiceHeaderExternalRead" + }, + "orderLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineExternalRead" + } + }, + "metadata" : { + "$ref" : "#/components/schemas/IncomingInvoiceMetadataExternal" + }, + "permissions" : { + "$ref" : "#/components/schemas/IncomingInvoicePermissions" + } + }, + "readOnly" : true + }, + "IncomingInvoiceHeaderExternalRead" : { + "type" : "object", + "properties" : { + "vendorId" : { + "type" : "integer", + "description" : "Id of the vendor", + "format" : "int64", + "readOnly" : true + }, + "vendorIsAutomated" : { + "type" : "boolean", + "description" : "Is vendor automated", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "description" : "Invoice date", + "readOnly" : true + }, + "invoiceDateIsAutomated" : { + "type" : "boolean", + "description" : "Is invoice date automated", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "description" : "Invoice number", + "readOnly" : true + }, + "invoiceNumberIsAutomated" : { + "type" : "boolean", + "description" : "Is invoice number automated", + "readOnly" : true + }, + "invoiceAmount" : { + "type" : "number", + "description" : "Invoice amount, in the company's currency", + "readOnly" : true + }, + "invoiceAmountCurrency" : { + "type" : "number", + "description" : "Invoice amount, in the currency used on the invoice", + "readOnly" : true + }, + "invoiceAmountIsAutomated" : { + "type" : "boolean", + "description" : "Is invoice amount automated", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "description" : "Due date", + "readOnly" : true + }, + "dueDateIsAutomated" : { + "type" : "boolean", + "description" : "Is due date automated", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency id", + "format" : "int64", + "readOnly" : true + }, + "currencyIsAutomated" : { + "type" : "boolean", + "description" : "Is currency automated", + "readOnly" : true + }, + "companyCurrencyId" : { + "type" : "integer", + "description" : "Company currency id", + "format" : "int64", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description", + "readOnly" : true + }, + "voucherTypeId" : { + "type" : "integer", + "description" : "Voucher type", + "format" : "int64", + "readOnly" : true + }, + "purchaseOrderId" : { + "type" : "integer", + "description" : "Purchase order id", + "format" : "int64", + "readOnly" : true + }, + "note" : { + "type" : "string", + "description" : "Note", + "readOnly" : true + } + }, + "description" : "The invoice header.", + "readOnly" : true + }, + "IncomingInvoiceMetadataExternal" : { + "type" : "object", + "properties" : { + "voucherNumber" : { + "type" : "integer", + "description" : "Voucher number", + "format" : "int32", + "readOnly" : true + }, + "voucherTempNumber" : { + "type" : "integer", + "description" : "Voucher temporary number", + "format" : "int32", + "readOnly" : true + }, + "voucherYear" : { + "type" : "integer", + "description" : "Voucher year", + "format" : "int32", + "readOnly" : true + }, + "revision" : { + "type" : "integer", + "description" : "Voucher revision", + "format" : "int32", + "readOnly" : true + }, + "invoiceLifeCycle" : { + "type" : "string", + "description" : "Invoice Life Cycle.", + "readOnly" : true, + "enum" : [ "DRAFT_IN_INBOX", "DRAFT_IN_NON_POSTED", "TEMPORARY_IN_LEDGER", "IN_LEDGER" ] + }, + "reverseVoucherId" : { + "type" : "integer", + "description" : "Id of reverse voucher", + "format" : "int64", + "readOnly" : true + }, + "accountingPeriodClosed" : { + "type" : "boolean", + "description" : "If accounting period is closed", + "readOnly" : true + }, + "primaryIndustryVatPeriodClosed" : { + "type" : "boolean", + "description" : "If vat period is closed for primary industries", + "readOnly" : true + }, + "generalIndustryVatPeriodClosed" : { + "type" : "boolean", + "description" : "If vat period is closed for general industries", + "readOnly" : true + }, + "defaultVatReportType" : { + "type" : "string", + "description" : "Default VAT report type for the invoice (primary vs general industry).", + "readOnly" : true, + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + } + }, + "description" : "The invoice meta data.", + "readOnly" : true + }, + "IncomingOrderLineExternalRead" : { + "type" : "object", + "properties" : { + "externalId" : { + "type" : "string", + "description" : "Client UUID.", + "readOnly" : true + }, + "row" : { + "type" : "integer", + "description" : "Row number of the order line.", + "format" : "int32", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description of the order line.", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "description" : "ID of the account.", + "format" : "int64", + "readOnly" : true + }, + "accountIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the account is automated.", + "readOnly" : true + }, + "count" : { + "type" : "number", + "description" : "Count of the order line.", + "readOnly" : true + }, + "unitPrice" : { + "type" : "number", + "description" : "Unit price of the order line, in the company's currency.", + "readOnly" : true + }, + "unitPriceCurrency" : { + "type" : "number", + "description" : "Unit price of the order line, in the currency used on the invoice.", + "readOnly" : true + }, + "amountInclVat" : { + "type" : "number", + "description" : "Amount including VAT, in the company's currency.", + "readOnly" : true + }, + "amountInclVatCurrency" : { + "type" : "number", + "description" : "Amount including VAT, in the currency used on the invoice.", + "readOnly" : true + }, + "amountIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the amount is automated.", + "readOnly" : true + }, + "amountExclVat" : { + "type" : "number", + "description" : "Amount excluding VAT.", + "readOnly" : true + }, + "amountVat" : { + "type" : "number", + "description" : "Total VAT amount.", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "description" : "ID of the VAT type.", + "format" : "int64", + "readOnly" : true + }, + "vatTypeIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the VAT type is automated.", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "description" : "ID of the department.", + "format" : "int64", + "readOnly" : true + }, + "departmentIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the department is automated.", + "readOnly" : true + }, + "projectId" : { + "type" : "integer", + "description" : "ID of the project.", + "format" : "int64", + "readOnly" : true + }, + "projectIsAutomated" : { + "type" : "boolean", + "description" : "Flag indicating if the project is automated.", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "description" : "ID of the employee.", + "format" : "int64", + "readOnly" : true + }, + "productId" : { + "type" : "integer", + "description" : "ID of the product.", + "format" : "int64", + "readOnly" : true + }, + "assetId" : { + "type" : "integer", + "description" : "ID of the asset.", + "format" : "int64", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "description" : "ID of the customer.", + "format" : "int64", + "readOnly" : true + }, + "vendorId" : { + "type" : "integer", + "description" : "ID of the vendor.", + "format" : "int64", + "readOnly" : true + }, + "taxTransactionTypeId" : { + "type" : "integer", + "description" : "Type of tax transaction.", + "format" : "int64", + "readOnly" : true + }, + "quantityAmount1" : { + "type" : "number", + "description" : "Quantity amount 1.", + "readOnly" : true + }, + "productUnitId1" : { + "type" : "integer", + "description" : "ID of the product unit 1.", + "format" : "int64", + "readOnly" : true + }, + "quantityAmount2" : { + "type" : "number", + "description" : "Quantity amount 2.", + "readOnly" : true + }, + "productUnitId2" : { + "type" : "integer", + "description" : "ID of the product unit 2.", + "format" : "int64", + "readOnly" : true + }, + "reInvoiceOnProject" : { + "type" : "boolean", + "description" : "Re-invoice on project flag.", + "readOnly" : true + }, + "periodizationAccountId" : { + "type" : "integer", + "description" : "Periodization Account ID.", + "format" : "int64", + "readOnly" : true + }, + "periodizationStartMonth" : { + "type" : "integer", + "description" : "Periodization Start Month.", + "format" : "int32", + "readOnly" : true + }, + "periodizationStartYear" : { + "type" : "integer", + "description" : "Periodization Start Year.", + "format" : "int32", + "readOnly" : true + }, + "periodizationPeriodsCount" : { + "type" : "integer", + "description" : "Number of Periodization Periods.", + "format" : "int32", + "readOnly" : true + }, + "budgetOrderLineId" : { + "type" : "integer", + "description" : "ID of order line used as budget item.", + "format" : "int64", + "readOnly" : true + }, + "freeDimension1Id" : { + "type" : "integer", + "description" : "Free dimension 1 value id.", + "format" : "int64", + "readOnly" : true + }, + "freeDimension2Id" : { + "type" : "integer", + "description" : "Free dimension 2 value id.", + "format" : "int64", + "readOnly" : true + }, + "freeDimension3Id" : { + "type" : "integer", + "description" : "Free dimension 3 value id.", + "format" : "int64", + "readOnly" : true + } + }, + "description" : "The invoice order lines.", + "readOnly" : true + }, + "ResponseWrapperIncomingInvoiceAggregateExternalRead" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoiceAggregateExternalRead" + } + } + }, + "IncomingInvoiceAggregateExternalCreate" : { + "type" : "object", + "properties" : { + "invoiceHeader" : { + "$ref" : "#/components/schemas/IncomingInvoiceHeaderExternalWrite" + }, + "orderLines" : { + "type" : "array", + "description" : "The invoice order lines. At least one is required.", + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineExternalWrite" + } + } + } + }, + "IncomingInvoiceHeaderExternalWrite" : { + "type" : "object", + "properties" : { + "vendorId" : { + "type" : "integer", + "description" : "The Incoming invoice vendor", + "format" : "int64" + }, + "invoiceDate" : { + "type" : "string", + "description" : "The date the invoice was issued. Also the date used to look up the default exchange rate when invoiceAmount is omitted." + }, + "dueDate" : { + "type" : "string", + "description" : "The date the invoice is due." + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency used in the invoice.", + "format" : "int64" + }, + "invoiceAmount" : { + "type" : "number", + "description" : "Amount including VAT, in the company's currency. On a foreign-currency invoice, send it together with invoiceAmountCurrency to set an explicit company-side amount that overrides the default exchange rate. When omitted, it is calculated from invoiceAmountCurrency using the default exchange rate at the invoice date." + }, + "invoiceAmountCurrency" : { + "type" : "number", + "description" : "Amount including VAT, in the currency used on the invoice. Always send this on write; the company-currency amount (invoiceAmount) is derived from it when not supplied explicitly." + }, + "description" : { + "maxLength" : 65535, + "minLength" : 0, + "type" : "string", + "description" : "Description of the invoice." + }, + "invoiceNumber" : { + "maxLength" : 100, + "minLength" : 0, + "type" : "string", + "description" : "Number of the invoice" + }, + "voucherTypeId" : { + "type" : "integer", + "description" : "Voucher type of the invoice.", + "format" : "int64" + }, + "purchaseOrderId" : { + "type" : "integer", + "description" : "The purchase order that the invoice belongs to.", + "format" : "int64" + } + }, + "description" : "The invoice header." + }, + "IncomingOrderLineExternalWrite" : { + "type" : "object", + "properties" : { + "externalId" : { + "type" : "string", + "description" : "Your id for this order line, unique among the order lines on the same invoice. Used in validation messages. On update it is the match key: keep it stable across updates, since any existing line whose externalId is not resent is deleted." + }, + "row" : { + "minimum" : 1, + "type" : "integer", + "description" : "Row number of the order line. Starts at 1", + "format" : "int32" + }, + "description" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Description of the order line." + }, + "accountId" : { + "type" : "integer", + "description" : "ID of the account.", + "format" : "int64" + }, + "count" : { + "type" : "number", + "description" : "Count of the order line. Max 10 decimals" + }, + "amountInclVatCurrency" : { + "type" : "number", + "description" : "Amount including VAT, in the currency used on the invoice. Max 2 decimals. Order lines only accept the invoice-currency amount; the company-currency line amounts (amountInclVat, unitPrice, amountExclVat, amountVat) are computed server-side from the resolved header exchange rate." + }, + "vatTypeId" : { + "type" : "integer", + "description" : "ID of the VAT type.", + "format" : "int64" + }, + "departmentId" : { + "type" : "integer", + "description" : "ID of the department.", + "format" : "int64" + }, + "projectId" : { + "type" : "integer", + "description" : "ID of the project.", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "description" : "ID of the employee.", + "format" : "int64" + }, + "productId" : { + "type" : "integer", + "description" : "ID of the product.", + "format" : "int64" + }, + "assetId" : { + "type" : "integer", + "description" : "ID of the asset.", + "format" : "int64" + }, + "customerId" : { + "type" : "integer", + "description" : "ID of the customer.", + "format" : "int64" + }, + "vendorId" : { + "type" : "integer", + "description" : "ID of the vendor.", + "format" : "int64" + }, + "taxTransactionTypeId" : { + "type" : "integer", + "description" : "ID of tax transaction.", + "format" : "int64" + }, + "quantityAmount1" : { + "type" : "number", + "description" : "Quantity amount 1." + }, + "productUnitId1" : { + "type" : "integer", + "description" : "ID of the product unit 1.", + "format" : "int64" + }, + "quantityAmount2" : { + "type" : "number", + "description" : "Quantity amount 2." + }, + "productUnitId2" : { + "type" : "integer", + "description" : "ID of the product unit 2.", + "format" : "int64" + }, + "reInvoiceOnProject" : { + "type" : "boolean", + "description" : "Re-invoice on project flag." + }, + "budgetOrderLineId" : { + "type" : "integer", + "description" : "ID of order line used as budget item", + "format" : "int64" + }, + "periodizationAccountId" : { + "type" : "integer", + "description" : "Periodization Account ID.", + "format" : "int64" + }, + "periodizationStartMonth" : { + "maximum" : 12, + "minimum" : 1, + "type" : "integer", + "description" : "Periodization Start Month.", + "format" : "int32" + }, + "periodizationStartYear" : { + "minimum" : 1990, + "type" : "integer", + "description" : "Periodization Start Year.", + "format" : "int32" + }, + "periodizationPeriodsCount" : { + "minimum" : 1, + "type" : "integer", + "description" : "Number of Periodization Periods.", + "format" : "int32" + }, + "freeDimension1Id" : { + "type" : "integer", + "description" : "Free dimension 1 value id.", + "format" : "int64" + }, + "freeDimension2Id" : { + "type" : "integer", + "description" : "Free dimension 2 value id.", + "format" : "int64" + }, + "freeDimension3Id" : { + "type" : "integer", + "description" : "Free dimension 3 value id.", + "format" : "int64" + } + } + }, + "ResponseWrapperVoucherDocument" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherDocument" + } + } + }, + "IncomingInvoiceAggregateExternalUpdate" : { + "type" : "object", + "properties" : { + "revision" : { + "type" : "integer", + "description" : "Voucher revision, used for optimistic locking", + "format" : "int32" + }, + "invoiceHeader" : { + "$ref" : "#/components/schemas/IncomingInvoiceHeaderExternalWrite" + }, + "orderLines" : { + "type" : "array", + "description" : "The invoice order lines. Replaces the whole set, matched by externalId — any existing line whose externalId is absent here is deleted. At least one is required.", + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineExternalWrite" + } + } + } + }, + "ListResponseIncomingInvoiceAggregateExternalRead" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceAggregateExternalRead" + } + } + } + }, + "ResponseWrapperIncomingInvoicePaymentRead" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomingInvoicePaymentRead" + } + } + }, + "ListResponseIncomingInvoiceProduct" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceProduct" + } + } + } + }, + "ListResponseProductMarkupResponse" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductMarkupResponse" + } + } + } + }, + "ProductMarkupResponse" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "description" : "Project ID", + "format" : "int64", + "readOnly" : true + }, + "productId" : { + "type" : "integer", + "description" : "Product ID", + "format" : "int64", + "readOnly" : true + }, + "markupNetPercentage" : { + "type" : "number", + "description" : "Net price markup percentage", + "readOnly" : true + }, + "markupListPercentage" : { + "type" : "number", + "description" : "List price markup percentage", + "readOnly" : true + } + }, + "description" : "Project-specific product markup percentages from discount agreements", + "readOnly" : true + }, + "ProductMarkupRequest" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "productId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ListResponseIncomingInvoiceProject" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceProject" + } + } + } + }, + "ListResponseIncomingInvoiceProjectSubContract" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceProjectSubContract" + } + } + } + }, + "IncomingInvoiceTaxType" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "description" : "The account ID", + "format" : "int64" + }, + "taxTransactionTypeIds" : { + "type" : "array", + "description" : "List of tax transaction type IDs available for this account", + "items" : { + "type" : "integer", + "description" : "List of tax transaction type IDs available for this account", + "format" : "int64" + } + } + }, + "description" : "Tax transaction types for a specific account", + "readOnly" : true + }, + "ListResponseIncomingInvoiceTaxType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceTaxType" + } + } + } + }, + "ListResponseTaxTransactionType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxTransactionType" + } + } + } + }, + "TaxTransactionType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "SmartScanSimulationData" : { + "type" : "object", + "properties" : { + "vendorId" : { + "type" : "integer", + "description" : "The Incoming invoice draft vendor", + "format" : "int64" + }, + "invoiceDate" : { + "type" : "string", + "description" : "The date the invoice was issued." + }, + "dueDate" : { + "type" : "string", + "description" : "The date the invoice is due." + }, + "currencyId" : { + "type" : "integer", + "description" : "Currency used in the invoice.", + "format" : "int64" + }, + "invoiceAmount" : { + "type" : "number", + "description" : "Amount including VAT." + }, + "invoiceNumber" : { + "type" : "string", + "description" : "If value is set to 0, the invoice number will be generated." + }, + "documentType" : { + "type" : "string", + "description" : "Voucher type of the invoice.", + "enum" : [ "TYPE_UNKNOWN", "TYPE_INVOICE", "TYPE_RECEIPT", "TYPE_CREDIT_NOTE" ] + } + } + }, + "ListResponseIncomingInvoiceVatType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingInvoiceVatType" + } + } + } + }, + "LegalVatTypesForAccount" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "legalVatTypeIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + } + }, + "readOnly" : true + }, + "LegalVatTypesForAccounts" : { + "type" : "object", + "properties" : { + "date" : { + "type" : "string", + "readOnly" : true + }, + "legalVatTypes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LegalVatTypesForAccount" + } + } + } + }, + "ResponseWrapperLegalVatTypesForAccounts" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LegalVatTypesForAccounts" + } + } + }, + "IncomingOrderLineOriginal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Unique identifier for the order line.", + "format" : "int64", + "readOnly" : true + }, + "incomingInvoiceOriginalId" : { + "type" : "integer", + "description" : "Reference to the original invoice this order line belongs to.", + "format" : "int64", + "readOnly" : true + }, + "orderLineType" : { + "type" : "string", + "description" : "Type of the order line (e.g., EXPENSE).", + "readOnly" : true, + "enum" : [ "EXPENSE", "ROUND_OFF", "ALLOWANCE", "CHARGE", "MARKUP", "DISCOUNT" ] + }, + "row" : { + "type" : "integer", + "description" : "Sequence number of the order line, starting at 1. Start with 1 to align with posting row numbers.", + "format" : "int32", + "readOnly" : true + }, + "rowId" : { + "type" : "string", + "description" : "Unique identifier for the order line within an EHF invoice.", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Name of the order line.", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description of the order line.", + "readOnly" : true + }, + "count" : { + "type" : "number", + "description" : "Quantity/count of the order line.", + "readOnly" : true + }, + "unitPrice" : { + "type" : "number", + "description" : "Unit price of the order line, excluding VAT, including discount, markup, allowances, and charges.", + "readOnly" : true + }, + "amountExclVat" : { + "type" : "number", + "description" : "Total amount of the order line, excluding VAT, including discount, markup, allowances, and charges.", + "readOnly" : true + }, + "amountInclVat" : { + "type" : "number", + "description" : "Total amount of the order line, including VAT, including discount, markup, allowances, and charges.", + "readOnly" : true + }, + "discount" : { + "type" : "number", + "description" : "Discount and allowance combined, in percentage.", + "readOnly" : true + }, + "markup" : { + "type" : "number", + "description" : "Markup and charge combined, in percentage.", + "readOnly" : true + }, + "vatType" : { + "type" : "string", + "description" : "Vat type code from the EHF standard, e.g., 'S', 'M', 'H', 'E'.", + "readOnly" : true + }, + "vatPercent" : { + "type" : "number", + "description" : "Vat rate in percentage, e.g., 25.0 for 25%.", + "readOnly" : true + }, + "sellersProductIdentification" : { + "type" : "string", + "description" : "Seller's product identification code.", + "readOnly" : true + }, + "standardProductIdentificationId" : { + "type" : "string", + "description" : "Standard product identification ID.", + "readOnly" : true + }, + "standardProductIdentificationSchemeId" : { + "type" : "string", + "description" : "Standard product identification scheme ID.", + "readOnly" : true + }, + "productName" : { + "type" : "string", + "description" : "Product name.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseIncomingOrderLineOriginal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/IncomingOrderLineOriginal" + } + } + } + }, + "ApproveResponse" : { + "type" : "object", + "properties" : { + "redirectUrl" : { + "type" : "string", + "description" : "The redirect URL to AutoPay 2FA or ZTL SCA after payments are sent to be approved", + "readOnly" : true + }, + "toBeApproved" : { + "type" : "array", + "description" : "List of payments that will be sent to AutoPay approval/ZTL", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Payment" + } + }, + "notApproved" : { + "type" : "array", + "description" : "List of payments that won't be sent to AutoPay approval/ZTL", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Payment" + } + }, + "exchangeRateExpiration" : { + "type" : "string", + "description" : "Expiration for given exchangeRate/quote. Only shown for international transactions. Example: 2022-08-05T13:13:59.633957965+02:00", + "readOnly" : true + }, + "exchangeRateSums" : { + "type" : "array", + "description" : "Sum of all to be approved payments by currencies", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + }, + "lockedExchangeRateSums" : { + "type" : "array", + "description" : "Sum of all to be approved payments with locked exchange rates by currencies", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + }, + "nonExchangeRateSums" : { + "type" : "array", + "description" : "Sum of all to be approved payments without exchange rates by currencies", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + }, + "internationalPaymentsNotEnabled" : { + "type" : "boolean", + "description" : "True when approval failed because the company has not enabled international payments with ZTL. The client should offer the enablement flow instead of a generic error.", + "readOnly" : true + } + } + }, + "AutoPayTransaction" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "paymentSource" : { + "type" : "string", + "enum" : [ "AutoPayTransaction", "ZtlTransaction" ] + }, + "paymentDate" : { + "type" : "string" + }, + "bookingDate" : { + "type" : "string", + "readOnly" : true + }, + "valueDate" : { + "type" : "string", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "In the specified currency." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "creditorName" : { + "type" : "string", + "readOnly" : true + }, + "creditorIbanOrBban" : { + "type" : "string", + "readOnly" : true + }, + "creditorBIC" : { + "type" : "string", + "description" : "SWIFT/BIC code of the creditor's bank. Only set for foreign payments.", + "readOnly" : true + }, + "creditorBankCountryName" : { + "type" : "string", + "description" : "The country name of the creditor's bank. Only set for foreign payments.", + "readOnly" : true + }, + "creditorBankName" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankAddress" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankPostalCode" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankPostalCity" : { + "type" : "string", + "readOnly" : true + }, + "statusId" : { + "type" : "string", + "description" : "The payment status Id. Usually all the payments in one batch have the same status ID, at least to the point of being received by bank.NEW: Payment is new.
PENDING_SIGNING: Payment is sent to AutoPay but not signed yet, requires re-approving.
CANCELLED: Payment was cancelled by ERP.
ERROR: Payment that failed.
RECEIVED_BY_BANK: Payment was received by the bank.
ACCEPTED_BY_BANK: Payment was accepted by bank.
CANCELLED_IN_BANK: Payment was cancelled in bank.
REJECTED_BY_BANK: Payment was rejected by bank.
PAID: Payment is paid.
OTHER: In case status in unknown. Will never be a final status.
", + "enum" : [ "NEW", "PENDING_SIGNING", "CANCELLED", "ERROR", "RECEIVED_BY_BANK", "ACCEPTED_BY_BANK", "PENDING_IN_BANK", "PENDING_SIGNING_IN_BANK", "CANCELLED_IN_BANK", "REJECTED_BY_BANK", "PAID", "OTHER" ] + }, + "isFinalStatus" : { + "type" : "boolean", + "readOnly" : true + }, + "isForeignPayment" : { + "type" : "boolean", + "readOnly" : true + }, + "isSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "kid" : { + "type" : "string", + "description" : "KID - Kundeidentifikasjonsnummer.", + "readOnly" : true + }, + "receiverReference" : { + "type" : "string", + "readOnly" : true + }, + "sourceVoucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "postings" : { + "$ref" : "#/components/schemas/Posting" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "amountInAccountCurrency" : { + "type" : "number", + "description" : "Amount specified in the currency of the bank agreements account.", + "readOnly" : true + }, + "isDisabledForUpdate" : { + "type" : "boolean", + "description" : "Can this payment date be changed.", + "readOnly" : true + }, + "isDisabledForAmountChange" : { + "type" : "boolean", + "description" : "Can this payment amount be changed.", + "readOnly" : true + }, + "isDueDateUpdatable" : { + "type" : "boolean", + "description" : "Can this payment due date be changed.", + "readOnly" : true + }, + "isSelectable" : { + "type" : "boolean", + "description" : "Is this payment selectable.", + "readOnly" : true + }, + "isManuallyBookable" : { + "type" : "boolean", + "description" : "Is this payment manually bookable.", + "readOnly" : true + }, + "isCancellableInBank" : { + "type" : "boolean", + "description" : "Can this payment be cancelled in the bank.", + "readOnly" : true + }, + "canBeUnapproved" : { + "type" : "boolean", + "description" : "False when the remove-approver action should be hidden — payment is fully approved and has progressed past NEW_IN_AUTOPAY.", + "readOnly" : true + }, + "cancelInBankRequestOutcome" : { + "type" : "string", + "description" : "Outcome of the cancel-in-bank request for this payment: PENDING, DECLINED or CANCELLED_BY_BANK. Null if no request was submitted.", + "readOnly" : true + }, + "acceptors" : { + "type" : "array", + "description" : "Who approved this payment.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "numberOfApprovedInBank" : { + "type" : "integer", + "description" : "Number of how many times this transaction has been approved in nettbank", + "format" : "int32", + "readOnly" : true + }, + "numberOfApprovers" : { + "type" : "integer", + "description" : "Number of approvers required for this transaction. ZTL: from the ZtlAccount setting. AutoPay: 0 unless the AutoPay4Eyes pilot is on, in which case it returns the bank agreement's effective numberOfApprovers.", + "format" : "int32", + "readOnly" : true + }, + "paymentCategory" : { + "type" : "string", + "description" : "The payment category.", + "readOnly" : true, + "enum" : [ "TRANSFER_BETWEEN_ACCOUNTS", "REIMBURSEMENT", "SUPPLIER_INVOICE", "WITHHOLDING_TAX", "TAX_DEDUCTION", "VAT", "SALARY", "ENI", "REGISTERED" ] + }, + "displayStatus" : { + "type" : "string", + "description" : "The payment filter status.", + "readOnly" : true + }, + "isApproveDisabled" : { + "type" : "boolean", + "description" : "Can this payment be approved.", + "readOnly" : true + }, + "usesAttestationFlow" : { + "type" : "boolean", + "description" : "Does the attestation status of this payment come from the attestation flow rather than legacy voucher approval.", + "readOnly" : true + }, + "isDeleteDisabled" : { + "type" : "boolean", + "description" : "Can this payment be deleted", + "readOnly" : true + }, + "isCancelDisabled" : { + "type" : "boolean", + "description" : "Can this payment be cancelled.", + "readOnly" : true + }, + "urlForVoucher" : { + "type" : "string", + "description" : "The url to access the connected invoice/wage period transaction/vat returns/wage transaction.", + "readOnly" : true + }, + "isSalaryDateInvalid" : { + "type" : "boolean", + "description" : "Is the due date invalid, if this is a salary payment.", + "readOnly" : true + }, + "expired" : { + "type" : "boolean", + "description" : "Is this transaction expired.", + "readOnly" : true + }, + "receiverLink" : { + "type" : "string", + "description" : "The payment receiver link or name.", + "readOnly" : true + }, + "mergingBanksMessage" : { + "type" : "string", + "description" : "Message regarding merging of banks", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "sendToBank" : { + "type" : "boolean", + "readOnly" : true + }, + "smsApproval" : { + "type" : "boolean", + "readOnly" : true + }, + "rejectionMessage" : { + "type" : "string", + "readOnly" : true + }, + "creditorClearingCode" : { + "type" : "string", + "description" : "Bank code of the creditor's bank. Used for foreign AutoPay payments when SWIFT is not applicable.", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NOT_APPROVED", "CANCELLED", "APPROVED", "SENT_TO_AUTOPAY", "RECEIVED_BY_BANK", "ACCEPTED_BY_BANK", "FAILED", "SUCCESS", "NOT_UPDATED", "ON_HOLD", "IMPORTED", "INITIALIZED", "AUTHORIZATION_REQUIRED", "SETTLEMENT_IN_PROGRESS", "REJECTED", "BOOKED", "SETTLEMENT_COMPLETED", "BATCH_FAILED", "BATCH_TIMEOUT", "CANCEL_PENDING", "PAYROLL_AWAITING_AUTHORIZATION", "PAYROLL_SETTLEMENT_IN_PROGRESS", "PAYROLL_SETTLEMENT_COMPLETED", "PAYROLL_CANCELLED", "PAYROLL_SETTLEMENT_NOT_COMPLETED_IN_TIME", "PAYROLL_PAYMENT_INITIATED", "PAYROLL_PAYMENT_ACCEPTED_TECHNICAL_VALIDATION", "PAYROLL_ACCEPTED_FOR_EXECUTION", "PAYROLL_FAILED", "PAYROLL_EXECUTION_COMPLETED", "AUTHORIZATION_REQUIRED_MULTIPLE_APPROVERS", "REJECTED_FUNDS_NOT_RECEIVED_IN_TIME", "BOOKED_READY_FOR_BOOKKEEPING", "UNSIGNED", "IN_PROGRESS", "COMPLETED", "CUSTOMER_ACTION_REQUIRED", "PARTLY_SIGNED", "SMS_CONFIRMATION_REQUIRED", "INSUFFICIENT_FUNDS" ] + } + }, + "readOnly" : true + }, + "CurrencyPaymentsSum" : { + "type" : "object", + "properties" : { + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "sum" : { + "type" : "number", + "description" : "Sum of the payments in currency", + "readOnly" : true + }, + "exchangeRate" : { + "type" : "number", + "description" : "Exchange rate used for the sum", + "readOnly" : true + }, + "displayExchangeRate" : { + "type" : "number", + "description" : "Display exchange rate used for the sum. Eg. EURNOK are displayed per 1 (9.87), while SEKNOK per 100 (98,27)", + "readOnly" : true + }, + "exchangedAmountsSum" : { + "type" : "number", + "description" : "Sum of the amounts after exchange rate applied. Eg. if exchange rate is 10, then 100 EUR will be 1000 NOK", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "description" : "Count of the payments in currency", + "format" : "int32", + "readOnly" : true + } + } + }, + "Payment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "paymentSource" : { + "type" : "string", + "enum" : [ "AutoPayTransaction", "ZtlTransaction" ] + }, + "paymentDate" : { + "type" : "string" + }, + "bookingDate" : { + "type" : "string", + "readOnly" : true + }, + "valueDate" : { + "type" : "string", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "In the specified currency." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "creditorName" : { + "type" : "string", + "readOnly" : true + }, + "creditorIbanOrBban" : { + "type" : "string", + "readOnly" : true + }, + "creditorBIC" : { + "type" : "string", + "description" : "SWIFT/BIC code of the creditor's bank. Only set for foreign payments.", + "readOnly" : true + }, + "creditorBankCountryName" : { + "type" : "string", + "description" : "The country name of the creditor's bank. Only set for foreign payments.", + "readOnly" : true + }, + "creditorBankName" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankAddress" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankPostalCode" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankPostalCity" : { + "type" : "string", + "readOnly" : true + }, + "statusId" : { + "type" : "string", + "description" : "The payment status Id. Usually all the payments in one batch have the same status ID, at least to the point of being received by bank.NEW: Payment is new.
PENDING_SIGNING: Payment is sent to AutoPay but not signed yet, requires re-approving.
CANCELLED: Payment was cancelled by ERP.
ERROR: Payment that failed.
RECEIVED_BY_BANK: Payment was received by the bank.
ACCEPTED_BY_BANK: Payment was accepted by bank.
CANCELLED_IN_BANK: Payment was cancelled in bank.
REJECTED_BY_BANK: Payment was rejected by bank.
PAID: Payment is paid.
OTHER: In case status in unknown. Will never be a final status.
", + "enum" : [ "NEW", "PENDING_SIGNING", "CANCELLED", "ERROR", "RECEIVED_BY_BANK", "ACCEPTED_BY_BANK", "PENDING_IN_BANK", "PENDING_SIGNING_IN_BANK", "CANCELLED_IN_BANK", "REJECTED_BY_BANK", "PAID", "OTHER" ] + }, + "isFinalStatus" : { + "type" : "boolean", + "readOnly" : true + }, + "isForeignPayment" : { + "type" : "boolean", + "readOnly" : true + }, + "isSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "kid" : { + "type" : "string", + "description" : "KID - Kundeidentifikasjonsnummer.", + "readOnly" : true + }, + "receiverReference" : { + "type" : "string", + "readOnly" : true + }, + "sourceVoucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "postings" : { + "$ref" : "#/components/schemas/Posting" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "amountInAccountCurrency" : { + "type" : "number", + "description" : "Amount specified in the currency of the bank agreements account.", + "readOnly" : true + }, + "isDisabledForUpdate" : { + "type" : "boolean", + "description" : "Can this payment date be changed.", + "readOnly" : true + }, + "isDisabledForAmountChange" : { + "type" : "boolean", + "description" : "Can this payment amount be changed.", + "readOnly" : true + }, + "isDueDateUpdatable" : { + "type" : "boolean", + "description" : "Can this payment due date be changed.", + "readOnly" : true + }, + "isSelectable" : { + "type" : "boolean", + "description" : "Is this payment selectable.", + "readOnly" : true + }, + "isManuallyBookable" : { + "type" : "boolean", + "description" : "Is this payment manually bookable.", + "readOnly" : true + }, + "isCancellableInBank" : { + "type" : "boolean", + "description" : "Can this payment be cancelled in the bank.", + "readOnly" : true + }, + "canBeUnapproved" : { + "type" : "boolean", + "description" : "False when the remove-approver action should be hidden — payment is fully approved and has progressed past NEW_IN_AUTOPAY.", + "readOnly" : true + }, + "cancelInBankRequestOutcome" : { + "type" : "string", + "description" : "Outcome of the cancel-in-bank request for this payment: PENDING, DECLINED or CANCELLED_BY_BANK. Null if no request was submitted.", + "readOnly" : true + }, + "acceptors" : { + "type" : "array", + "description" : "Who approved this payment.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "numberOfApprovedInBank" : { + "type" : "integer", + "description" : "Number of how many times this transaction has been approved in nettbank", + "format" : "int32", + "readOnly" : true + }, + "numberOfApprovers" : { + "type" : "integer", + "description" : "Number of approvers required for this transaction. ZTL: from the ZtlAccount setting. AutoPay: 0 unless the AutoPay4Eyes pilot is on, in which case it returns the bank agreement's effective numberOfApprovers.", + "format" : "int32", + "readOnly" : true + }, + "paymentCategory" : { + "type" : "string", + "description" : "The payment category.", + "readOnly" : true, + "enum" : [ "TRANSFER_BETWEEN_ACCOUNTS", "REIMBURSEMENT", "SUPPLIER_INVOICE", "WITHHOLDING_TAX", "TAX_DEDUCTION", "VAT", "SALARY", "ENI", "REGISTERED" ] + }, + "displayStatus" : { + "type" : "string", + "description" : "The payment filter status.", + "readOnly" : true + }, + "isApproveDisabled" : { + "type" : "boolean", + "description" : "Can this payment be approved.", + "readOnly" : true + }, + "usesAttestationFlow" : { + "type" : "boolean", + "description" : "Does the attestation status of this payment come from the attestation flow rather than legacy voucher approval.", + "readOnly" : true + }, + "isDeleteDisabled" : { + "type" : "boolean", + "description" : "Can this payment be deleted", + "readOnly" : true + }, + "isCancelDisabled" : { + "type" : "boolean", + "description" : "Can this payment be cancelled.", + "readOnly" : true + }, + "urlForVoucher" : { + "type" : "string", + "description" : "The url to access the connected invoice/wage period transaction/vat returns/wage transaction.", + "readOnly" : true + }, + "isSalaryDateInvalid" : { + "type" : "boolean", + "description" : "Is the due date invalid, if this is a salary payment.", + "readOnly" : true + }, + "expired" : { + "type" : "boolean", + "description" : "Is this transaction expired.", + "readOnly" : true + }, + "receiverLink" : { + "type" : "string", + "description" : "The payment receiver link or name.", + "readOnly" : true + }, + "mergingBanksMessage" : { + "type" : "string", + "description" : "Message regarding merging of banks", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + } + }, + "readOnly" : true, + "discriminator" : { + "propertyName" : "paymentSource" + } + }, + "ResponseWrapperApproveResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ApproveResponse" + } + } + }, + "ZtlTransaction" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "paymentSource" : { + "type" : "string", + "enum" : [ "AutoPayTransaction", "ZtlTransaction" ] + }, + "paymentDate" : { + "type" : "string" + }, + "bookingDate" : { + "type" : "string", + "readOnly" : true + }, + "valueDate" : { + "type" : "string", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "In the specified currency." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "creditorName" : { + "type" : "string", + "readOnly" : true + }, + "creditorIbanOrBban" : { + "type" : "string", + "readOnly" : true + }, + "creditorBIC" : { + "type" : "string", + "description" : "SWIFT/BIC code of the creditor's bank. Only set for foreign payments.", + "readOnly" : true + }, + "creditorBankCountryName" : { + "type" : "string", + "description" : "The country name of the creditor's bank. Only set for foreign payments.", + "readOnly" : true + }, + "creditorBankName" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankAddress" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankPostalCode" : { + "type" : "string", + "readOnly" : true + }, + "creditorBankPostalCity" : { + "type" : "string", + "readOnly" : true + }, + "statusId" : { + "type" : "string", + "description" : "The payment status Id. Usually all the payments in one batch have the same status ID, at least to the point of being received by bank.NEW: Payment is new.
PENDING_SIGNING: Payment is sent to AutoPay but not signed yet, requires re-approving.
CANCELLED: Payment was cancelled by ERP.
ERROR: Payment that failed.
RECEIVED_BY_BANK: Payment was received by the bank.
ACCEPTED_BY_BANK: Payment was accepted by bank.
CANCELLED_IN_BANK: Payment was cancelled in bank.
REJECTED_BY_BANK: Payment was rejected by bank.
PAID: Payment is paid.
OTHER: In case status in unknown. Will never be a final status.
", + "enum" : [ "NEW", "PENDING_SIGNING", "CANCELLED", "ERROR", "RECEIVED_BY_BANK", "ACCEPTED_BY_BANK", "PENDING_IN_BANK", "PENDING_SIGNING_IN_BANK", "CANCELLED_IN_BANK", "REJECTED_BY_BANK", "PAID", "OTHER" ] + }, + "isFinalStatus" : { + "type" : "boolean", + "readOnly" : true + }, + "isForeignPayment" : { + "type" : "boolean", + "readOnly" : true + }, + "isSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "kid" : { + "type" : "string", + "description" : "KID - Kundeidentifikasjonsnummer.", + "readOnly" : true + }, + "receiverReference" : { + "type" : "string", + "readOnly" : true + }, + "sourceVoucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "postings" : { + "$ref" : "#/components/schemas/Posting" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "amountInAccountCurrency" : { + "type" : "number", + "description" : "Amount specified in the currency of the bank agreements account.", + "readOnly" : true + }, + "isDisabledForUpdate" : { + "type" : "boolean", + "description" : "Can this payment date be changed.", + "readOnly" : true + }, + "isDisabledForAmountChange" : { + "type" : "boolean", + "description" : "Can this payment amount be changed.", + "readOnly" : true + }, + "isDueDateUpdatable" : { + "type" : "boolean", + "description" : "Can this payment due date be changed.", + "readOnly" : true + }, + "isSelectable" : { + "type" : "boolean", + "description" : "Is this payment selectable.", + "readOnly" : true + }, + "isManuallyBookable" : { + "type" : "boolean", + "description" : "Is this payment manually bookable.", + "readOnly" : true + }, + "isCancellableInBank" : { + "type" : "boolean", + "description" : "Can this payment be cancelled in the bank.", + "readOnly" : true + }, + "canBeUnapproved" : { + "type" : "boolean", + "description" : "False when the remove-approver action should be hidden — payment is fully approved and has progressed past NEW_IN_AUTOPAY.", + "readOnly" : true + }, + "cancelInBankRequestOutcome" : { + "type" : "string", + "description" : "Outcome of the cancel-in-bank request for this payment: PENDING, DECLINED or CANCELLED_BY_BANK. Null if no request was submitted.", + "readOnly" : true + }, + "acceptors" : { + "type" : "array", + "description" : "Who approved this payment.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "numberOfApprovedInBank" : { + "type" : "integer", + "description" : "Number of how many times this transaction has been approved in nettbank", + "format" : "int32", + "readOnly" : true + }, + "numberOfApprovers" : { + "type" : "integer", + "description" : "Number of approvers required for this transaction. ZTL: from the ZtlAccount setting. AutoPay: 0 unless the AutoPay4Eyes pilot is on, in which case it returns the bank agreement's effective numberOfApprovers.", + "format" : "int32", + "readOnly" : true + }, + "paymentCategory" : { + "type" : "string", + "description" : "The payment category.", + "readOnly" : true, + "enum" : [ "TRANSFER_BETWEEN_ACCOUNTS", "REIMBURSEMENT", "SUPPLIER_INVOICE", "WITHHOLDING_TAX", "TAX_DEDUCTION", "VAT", "SALARY", "ENI", "REGISTERED" ] + }, + "displayStatus" : { + "type" : "string", + "description" : "The payment filter status.", + "readOnly" : true + }, + "isApproveDisabled" : { + "type" : "boolean", + "description" : "Can this payment be approved.", + "readOnly" : true + }, + "usesAttestationFlow" : { + "type" : "boolean", + "description" : "Does the attestation status of this payment come from the attestation flow rather than legacy voucher approval.", + "readOnly" : true + }, + "isDeleteDisabled" : { + "type" : "boolean", + "description" : "Can this payment be deleted", + "readOnly" : true + }, + "isCancelDisabled" : { + "type" : "boolean", + "description" : "Can this payment be cancelled.", + "readOnly" : true + }, + "urlForVoucher" : { + "type" : "string", + "description" : "The url to access the connected invoice/wage period transaction/vat returns/wage transaction.", + "readOnly" : true + }, + "isSalaryDateInvalid" : { + "type" : "boolean", + "description" : "Is the due date invalid, if this is a salary payment.", + "readOnly" : true + }, + "expired" : { + "type" : "boolean", + "description" : "Is this transaction expired.", + "readOnly" : true + }, + "receiverLink" : { + "type" : "string", + "description" : "The payment receiver link or name.", + "readOnly" : true + }, + "mergingBanksMessage" : { + "type" : "string", + "description" : "Message regarding merging of banks", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "statusReason" : { + "type" : "string", + "readOnly" : true + }, + "paymentId" : { + "type" : "string", + "readOnly" : true + }, + "endToEndId" : { + "type" : "string", + "readOnly" : true + }, + "cancellationMessage" : { + "type" : "string" + }, + "flowId" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NOT_APPROVED", "CANCELLED", "APPROVED", "SENT_TO_AUTOPAY", "RECEIVED_BY_BANK", "ACCEPTED_BY_BANK", "FAILED", "SUCCESS", "NOT_UPDATED", "ON_HOLD", "IMPORTED", "INITIALIZED", "AUTHORIZATION_REQUIRED", "SETTLEMENT_IN_PROGRESS", "REJECTED", "BOOKED", "SETTLEMENT_COMPLETED", "BATCH_FAILED", "BATCH_TIMEOUT", "CANCEL_PENDING", "PAYROLL_AWAITING_AUTHORIZATION", "PAYROLL_SETTLEMENT_IN_PROGRESS", "PAYROLL_SETTLEMENT_COMPLETED", "PAYROLL_CANCELLED", "PAYROLL_SETTLEMENT_NOT_COMPLETED_IN_TIME", "PAYROLL_PAYMENT_INITIATED", "PAYROLL_PAYMENT_ACCEPTED_TECHNICAL_VALIDATION", "PAYROLL_ACCEPTED_FOR_EXECUTION", "PAYROLL_FAILED", "PAYROLL_EXECUTION_COMPLETED", "AUTHORIZATION_REQUIRED_MULTIPLE_APPROVERS", "REJECTED_FUNDS_NOT_RECEIVED_IN_TIME", "BOOKED_READY_FOR_BOOKKEEPING", "UNSIGNED", "IN_PROGRESS", "COMPLETED", "CUSTOMER_ACTION_REQUIRED", "PARTLY_SIGNED", "SMS_CONFIRMATION_REQUIRED", "INSUFFICIENT_FUNDS" ] + } + }, + "readOnly" : true + }, + "CancelResponseDTO" : { + "type" : "object", + "properties" : { + "redirectUrl" : { + "type" : "string", + "description" : "The redirect URL to ZTL SCA for cancelling the payment", + "readOnly" : true + }, + "cancellationSuccessful" : { + "type" : "boolean", + "description" : "Was the cancellation successful?", + "readOnly" : true + }, + "paymentToBeCancelled" : { + "$ref" : "#/components/schemas/Payment" + } + } + }, + "ResponseWrapperCancelResponseDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CancelResponseDTO" + } + } + }, + "ResponseWrapperPayment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Payment" + } + } + }, + "CancelInBankBannerDTO" : { + "type" : "object", + "properties" : { + "totalRequested" : { + "type" : "integer", + "description" : "Total cancel-in-bank requests submitted since the banner was last dismissed.", + "format" : "int32", + "readOnly" : true + }, + "totalDeclined" : { + "type" : "integer", + "description" : "How many of those requests the bank declined (payment continued to PAID instead of being cancelled).", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperCancelInBankBannerDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CancelInBankBannerDTO" + } + } + }, + "PaymentCardInfoDTO" : { + "type" : "object", + "properties" : { + "cancelled" : { + "type" : "array", + "description" : "Amount of cancelled payments", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentCardInfoDetails" + } + }, + "underProcessing" : { + "type" : "array", + "description" : "Amount of payments under processing", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentCardInfoDetails" + } + }, + "forApproval" : { + "type" : "array", + "description" : "Amount of payments for approval", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentCardInfoDetails" + } + } + } + }, + "PaymentCardInfoDetails" : { + "type" : "object", + "properties" : { + "amount" : { + "type" : "number", + "readOnly" : true + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "numberOfPayments" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "Amount of payments for approval", + "readOnly" : true + }, + "ResponseWrapperPaymentCardInfoDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PaymentCardInfoDTO" + } + } + }, + "PaymentsSumDTO" : { + "type" : "object", + "properties" : { + "unpaidTransactionsSum" : { + "type" : "array", + "description" : "Sum of all payments excluding paid and under process in bank, by currencies.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + }, + "ongoingTransactionsSum" : { + "type" : "array", + "description" : "Sum of the all ongoing payments by currencies.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + }, + "overdueTransactionsSum" : { + "type" : "array", + "description" : "Sum of all overdue payments by currencies.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + }, + "forApprovalPaymentsCount" : { + "type" : "number", + "description" : "Number of payments for approval.", + "readOnly" : true + }, + "cancelledPaymentsCount" : { + "type" : "number", + "description" : "Number of cancelled payments.", + "readOnly" : true + }, + "rejectedPaymentsCount" : { + "type" : "number", + "description" : "Number of rejected payments.", + "readOnly" : true + } + } + }, + "ResponseWrapperPaymentsSumDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PaymentsSumDTO" + } + } + }, + "ResponseWrapperListStatusLog" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/StatusLog" + } + } + } + }, + "StatusLog" : { + "type" : "object", + "properties" : { + "actionType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "PAYMENT_CREATED", "PAYMENT_APPROVED", "PAYMENT_APPROVAL_ABORTED", "PAYMENT_SENT_TO_BANK", "PAYMENT_RECEIVED_BY_BANK", "PAYMENT_ACCEPTED_BY_BANK", "PAYMENT_CANCELLED_IN_BANK", "PAYMENT_AMOUNT_CHANGED", "PAYMENT_DUE_DATE_CHANGED", "PAYMENT_REJECTED", "PAYMENT_NOT_UPDATED", "PAYMENT_APPROVAL_MULTIPLE_APPROVERS", "PAYMENT_ATTESTED", "PAYMENT_ATTESTATION_REJECTED", "PAYMENT_IMPORTED_AND_NOT_SENT", "PAYMENT_PAID", "PAYMENT_BOOKED", "INSUFFICIENT_FUNDS", "SMS_CONFIRMATION_REQUIRED", "PAYMENT_INITIATION_FAILED", "PAYMENT_CANCEL_REQUESTED_IN_BANK" ] + }, + "actionDate" : { + "type" : "string", + "readOnly" : true + }, + "actionCreator" : { + "$ref" : "#/components/schemas/Employee" + }, + "rejectionMessage" : { + "type" : "string", + "description" : "Rejection message if payment was rejected by the bank.", + "readOnly" : true + } + } + }, + "PaymentStatusCountsDTO" : { + "type" : "object", + "properties" : { + "counts" : { + "type" : "object", + "additionalProperties" : { + "type" : "integer", + "description" : "Map of status name to count", + "format" : "int64", + "readOnly" : true + }, + "description" : "Map of status name to count", + "readOnly" : true + } + } + }, + "ResponseWrapperPaymentStatusCountsDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PaymentStatusCountsDTO" + } + } + }, + "PaymentStatusInfo" : { + "type" : "object", + "properties" : { + "text" : { + "type" : "string", + "readOnly" : true + }, + "color" : { + "type" : "string", + "readOnly" : true + }, + "variant" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "PaymentStatusInfoWrapperDTO" : { + "type" : "object", + "properties" : { + "version" : { + "type" : "string", + "readOnly" : true + }, + "statuses" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/PaymentStatusInfo" + }, + "readOnly" : true + } + } + }, + "ResponseWrapperPaymentStatusInfoWrapperDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PaymentStatusInfoWrapperDTO" + } + } + }, + "ResponseWrapperListCurrencyPaymentsSum" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CurrencyPaymentsSum" + } + } + } + }, + "ResponseWrapperZtlPaymentsConsentDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZtlPaymentsConsentDetails" + } + } + }, + "ZtlPaymentsConsentDetails" : { + "type" : "object", + "properties" : { + "hasValidConsentForAll" : { + "type" : "boolean", + "description" : "True when the current consent covers every selected payment (blockedPaymentIds is empty) and the caller can proceed straight to approve. False when at least one payment is blocked.", + "readOnly" : true + }, + "allowedPaymentIds" : { + "type" : "array", + "description" : "ZtlTransaction ids that CAN be approved under the current consent.", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "blockedPaymentIds" : { + "type" : "array", + "description" : "ZtlTransaction ids that CANNOT be approved because their ZtlAccount has no valid consent relation.", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + } + } + }, + "CancelInBankPreviewDTO" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "description" : "Total number of payments that would be cancelled in the bank, including wage session expansion.", + "format" : "int32", + "readOnly" : true + }, + "includesWagePayments" : { + "type" : "boolean", + "description" : "True when at least one of the cancellable payments is part of a wage payroll voucher (drives the wage-specific copy in the confirmation dialog).", + "readOnly" : true + } + } + }, + "ResponseWrapperCancelInBankPreviewDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CancelInBankPreviewDTO" + } + } + }, + "ListResponsePayment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Payment" + } + } + } + }, + "TlxNumber" : { + "type" : "object", + "properties" : { + "evenNumber" : { + "type" : "boolean" + }, + "scale" : { + "type" : "number", + "writeOnly" : true + } + } + }, + "ListResponseAutoPayTransaction" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AutoPayTransaction" + } + } + } + }, + "LinkMobilityReport" : { + "type" : "object", + "properties" : { + "refId" : { + "type" : "string" + }, + "operator" : { + "type" : "string" + }, + "resultCode" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ListResponseZtlTransaction" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlTransaction" + } + } + } + }, + "EmployeeFilters" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "filterUrl" : { + "type" : "string" + }, + "params" : { + "type" : "object", + "additionalProperties" : { + "type" : "string" + } + }, + "name" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ResponseWrapperEmployeeFilters" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeFilters" + } + } + }, + "ListResponseEmployeeFilters" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeFilters" + } + } + } + }, + "ResponseWrapperInventory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Inventory" + } + } + }, + "ListResponseInventory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Inventory" + } + } + } + }, + "Inventories" : { + "type" : "object", + "properties" : { + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "stock" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Stock" + } + } + }, + "readOnly" : true + }, + "ListResponseInventories" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Inventories" + } + } + } + }, + "Stock" : { + "type" : "object", + "properties" : { + "inventory" : { + "type" : "string", + "readOnly" : true + }, + "inventoryId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "openingStock" : { + "type" : "number", + "readOnly" : true + }, + "changesInPeriod" : { + "type" : "number", + "readOnly" : true + }, + "closingStock" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperInventoryLocation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + }, + "ListResponseInventoryLocation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + } + }, + "ResponseWrapperStocktaking" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Stocktaking" + } + } + }, + "Stocktaking" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "typeOfStocktaking" : { + "type" : "string", + "description" : "[Deprecated] Define the type of stoctaking.
ALL_PRODUCTS_WITH_INVENTORIES: Create a stocktaking for all products with inventories.
INCLUDE_PRODUCTS: Create a stocktaking which includes all products.
NO_PRODUCTS: Create a stocktaking without products.
If not specified, the value 'ALL_PRODUCTS_WITH_INVENTORIES' is used.", + "enum" : [ "ALL_PRODUCTS_WITH_INVENTORIES", "INCLUDE_PRODUCTS", "NO_PRODUCTS" ] + }, + "inventory" : { + "$ref" : "#/components/schemas/Inventory" + }, + "isCompleted" : { + "type" : "boolean" + }, + "warehouseValue" : { + "type" : "number", + "description" : "Warehouse value", + "readOnly" : true + }, + "discrepancySum" : { + "type" : "number", + "description" : "Discrepancy sum", + "readOnly" : true + } + } + }, + "ListResponseStocktaking" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Stocktaking" + } + } + } + }, + "ProductLine" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "stocktaking" : { + "$ref" : "#/components/schemas/Stocktaking" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "count" : { + "type" : "number" + }, + "unitCostCurrency" : { + "type" : "number", + "description" : "Unit price purchase (cost) excluding VAT in the order's currency" + }, + "costCurrency" : { + "type" : "number", + "readOnly" : true + }, + "comment" : { + "type" : "string" + }, + "counted" : { + "type" : "boolean", + "description" : "If a line is counted or not - only for internal use; will return true/false based on whether the stocktaking is completed otherwise.", + "readOnly" : true + }, + "counter" : { + "$ref" : "#/components/schemas/Employee" + }, + "dateCounted" : { + "type" : "string", + "description" : "When the line was counted - only for internal use", + "readOnly" : true + }, + "expectedStock" : { + "type" : "number", + "description" : "For internal use only", + "readOnly" : true + }, + "location" : { + "$ref" : "#/components/schemas/InventoryLocation" + } + } + }, + "ResponseWrapperProductLine" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductLine" + } + } + }, + "ListResponseProductLine" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductLine" + } + } + } + }, + "InventoryCorrection" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "fromWarehouse" : { + "$ref" : "#/components/schemas/Inventory" + }, + "warehouse" : { + "$ref" : "#/components/schemas/Inventory" + }, + "stockChanges" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/StockChange" + } + } + }, + "readOnly" : true + }, + "ListResponseInventoryCorrection" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InventoryCorrection" + } + } + } + }, + "StockChange" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "stockChangeWarehouseLocationRelation" : { + "$ref" : "#/components/schemas/StockChangeWarehouseLocationRelation" + } + } + }, + "StockChangeWarehouseLocationRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "fromWarehouse" : { + "$ref" : "#/components/schemas/Inventory" + }, + "toWarehouse" : { + "$ref" : "#/components/schemas/Inventory" + } + } + }, + "AccrualOfIncomeAdvancedRequest" : { + "type" : "object", + "properties" : { + "sourceType" : { + "type" : "string", + "enum" : [ "ORDER_LINE", "TRAVEL_EXPENSE", "FEE", "MARKUP_FEE" ] + }, + "sourceId" : { + "type" : "integer", + "format" : "int64" + }, + "incomeAccountId" : { + "type" : "integer", + "format" : "int64" + }, + "accrualAccountId" : { + "type" : "integer", + "format" : "int64" + }, + "month" : { + "maximum" : 11, + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "year" : { + "maximum" : 2075, + "minimum" : 2020, + "type" : "integer", + "format" : "int32" + }, + "numberOfPeriods" : { + "maximum" : 240, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + } + } + }, + "AccrualOfIncomeSimpleRequest" : { + "type" : "object", + "properties" : { + "sources" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccrualSourceItemRequest" + } + }, + "incomeAccountId" : { + "type" : "integer", + "format" : "int64" + }, + "accrualAccountId" : { + "type" : "integer", + "format" : "int64" + }, + "month" : { + "maximum" : 11, + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "year" : { + "maximum" : 2075, + "minimum" : 2020, + "type" : "integer", + "format" : "int32" + }, + "numberOfPeriods" : { + "maximum" : 240, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + } + } + }, + "AccrualSourceItemRequest" : { + "type" : "object", + "properties" : { + "sourceType" : { + "type" : "string", + "enum" : [ "ORDER_LINE", "TRAVEL_EXPENSE", "FEE", "MARKUP_FEE" ] + }, + "sourceId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "BatchInvoicePayment" : { + "type" : "object", + "properties" : { + "voucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "voucherUrl" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperBatchInvoicePayment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BatchInvoicePayment" + } + } + }, + "InvoicePayment" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "paymentDate" : { + "type" : "string", + "readOnly" : true + }, + "paymentTypeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "paidAmount" : { + "type" : "number", + "readOnly" : true + }, + "paidAmountCurrency" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperMapLongTlxNumber" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "number" + } + } + } + }, + "ResponseWrapperInvoice" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Invoice" + } + } + }, + "ListResponseInvoice" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Invoice" + } + } + } + }, + "ResponseWrapperListLong" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + } + }, + "ResponseWrapperInvoiceRemark" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceRemark" + } + } + }, + "MaventaEventData" : { + "type" : "object", + "properties" : { + "invoice_id" : { + "type" : "string" + }, + "invoice_number" : { + "type" : "string" + }, + "destination" : { + "type" : "string" + }, + "recipient_name" : { + "type" : "string" + }, + "recipient_bid" : { + "type" : "string" + }, + "network" : { + "type" : "string" + }, + "id" : { + "type" : "string" + }, + "profiles" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "error_message" : { + "type" : "string" + }, + "recipient_eia" : { + "type" : "string" + } + } + }, + "MaventaStatus" : { + "type" : "object", + "properties" : { + "event" : { + "type" : "string" + }, + "company_id" : { + "type" : "string" + }, + "event_timestamp" : { + "type" : "string" + }, + "event_data" : { + "$ref" : "#/components/schemas/MaventaEventData" + } + } + }, + "PaymentType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "debitAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "creditAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "sequence" : { + "minimum" : 0, + "type" : "integer", + "description" : "Defines the priority of order, when displayed in a list with order payment types", + "format" : "int32" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "currencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperPaymentType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PaymentType" + } + } + }, + "ListResponsePaymentType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentType" + } + } + } + }, + "ResponseWrapperProjectInvoiceDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectInvoiceDetails" + } + } + }, + "ListResponseProjectInvoiceDetails" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectInvoiceDetails" + } + } + } + }, + "InvoiceSendType" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "phoneNumber" : { + "type" : "string", + "readOnly" : true + }, + "canReceiveEHF" : { + "type" : "boolean", + "readOnly" : true + }, + "canReceiveEFaktura" : { + "type" : "boolean", + "readOnly" : true + }, + "elmaLookupAlive" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperInvoiceSendType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceSendType" + } + } + }, + "ListResponseInvoiceSendType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InvoiceSendType" + } + } + } + }, + "InvoiceSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "orderOfferEmailSignature" : { + "type" : "string" + }, + "hasFirstInvoiceNumber" : { + "type" : "boolean" + }, + "nextInvoiceNumber" : { + "type" : "integer", + "format" : "int32" + }, + "bankAccountReady" : { + "type" : "boolean" + }, + "defaultSendTypeB2B" : { + "type" : "string", + "enum" : [ "EMAIL", "EHF", "EFAKTURA", "AVTALEGIRO", "VIPPS", "PAPER", "MANUAL", "DIRECT", "AUTOINVOICE_EHF_OUTBOUND", "AUTOINVOICE_EHF_INCOMING", "PEPPOL_EHF_INCOMING" ] + }, + "defaultSendTypeB2C" : { + "type" : "string", + "enum" : [ "EMAIL", "EHF", "EFAKTURA", "AVTALEGIRO", "VIPPS", "PAPER", "MANUAL", "DIRECT", "AUTOINVOICE_EHF_OUTBOUND", "AUTOINVOICE_EHF_INCOMING", "PEPPOL_EHF_INCOMING" ] + }, + "newOrderOfferOurContactDefaultValue" : { + "type" : "string", + "enum" : [ "ACCOUNT_MANAGER", "LOGIN_USER", "NONE" ] + }, + "offerFromCurrentUser" : { + "type" : "boolean" + }, + "orderConfirmationCurrentUser" : { + "type" : "boolean" + }, + "invoiceFromCurrentUser" : { + "type" : "boolean" + }, + "invoiceFromEmail" : { + "type" : "string" + }, + "offerFromEmail" : { + "type" : "string" + }, + "orderConfirmationEmail" : { + "type" : "string" + }, + "defaultOrderInvoiceComment" : { + "type" : "string", + "readOnly" : true + }, + "showBackorder" : { + "type" : "boolean" + }, + "setDeliverToAvailableStock" : { + "type" : "boolean" + }, + "availableInventory" : { + "type" : "boolean" + }, + "invoiceShowOrderNumber" : { + "type" : "boolean" + }, + "fixedInvoiceFee" : { + "minimum" : 0, + "type" : "number", + "description" : "Fixed invoice fee that will be added to all invoices. The fee is automatically distributed across VAT rates based on the invoice composition." + }, + "autoInvoicingHour" : { + "type" : "integer", + "description" : "Hour of day (0-23, Europe/Oslo) at which the automatic recurring invoicing job runs for this company", + "format" : "int32", + "readOnly" : true + }, + "invoiceRoundoff" : { + "type" : "boolean", + "description" : "Whether invoice totals are rounded to the nearest whole NOK/SEK ('øreavrunding'). Applies only to invoices in NOK or SEK.", + "readOnly" : true + }, + "sendTypes" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "EMAIL", "EHF", "AVTALEGIRO", "EFAKTURA", "VIPPS", "PAPER", "MANUAL" ] + } + }, + "isAutomaticSoftReminderEnabled" : { + "type" : "boolean", + "description" : "Has automatic soft reminders enabled for this company. This setting need to be enabled both here and on each customer card to take effect.", + "readOnly" : true + }, + "automaticSoftReminderDaysAfterDueDate" : { + "type" : "integer", + "description" : "Number of days after due date automatic soft reminders should be sent out if enabled.", + "format" : "int32", + "readOnly" : true + }, + "isAutomaticReminderEnabled" : { + "type" : "boolean", + "description" : "Has automatic reminders enabled for this company. This setting need to be enabled both here and on each customer card to take effect.", + "readOnly" : true + }, + "automaticReminderDaysAfterDueDate" : { + "type" : "integer", + "description" : "Number of days after due date automatic reminders should be sent ouf if enabled.", + "format" : "int32", + "readOnly" : true + }, + "isAutomaticNoticeOfDebtCollectionEnabled" : { + "type" : "boolean", + "description" : "Has automatic notices of debt collection enabled for this company. This setting need to be enabled both here and on each customer card to take effect.", + "readOnly" : true + }, + "automaticNoticeOfDebtCollectionDaysAfterDueDate" : { + "type" : "integer", + "description" : "Number of days after due date automatic notices of debt collection should be sent out if enabled.", + "format" : "int32", + "readOnly" : true + }, + "externalInvoiceNumber" : { + "type" : "integer", + "description" : "Highest external invoice number for this company", + "format" : "int32", + "readOnly" : true + }, + "hasSentFirstInvoice" : { + "type" : "boolean", + "description" : "Has company sent first invoice", + "readOnly" : true + }, + "invoicesDueIn" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "Sets the default value on customers for number of days/months in which invoices created from this order is due", + "format" : "int32" + }, + "invoicesDueInType" : { + "type" : "string", + "description" : "Set the default time unit of invoicesDueIn. The special case RECURRING_DAY_OF_MONTH enables the due date to be fixed to a specific day of the month, in this case the fixed due date will automatically be set as standard on all invoices created from this order. Note that when RECURRING_DAY_OF_MONTH is set, the due date will be set to the last day of month if \"31\" is set in invoicesDueIn.", + "enum" : [ "DAYS", "MONTHS", "RECURRING_DAY_OF_MONTH" ] + } + } + }, + "ResponseWrapperInvoiceSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceSettings" + } + } + }, + "ReminderChargeAndInterest" : { + "type" : "object", + "properties" : { + "chargeAmount" : { + "type" : "number", + "description" : "chargedAmount", + "readOnly" : true + }, + "interestAmount" : { + "type" : "number", + "description" : "interestAmount", + "readOnly" : true + }, + "interestPercentage" : { + "type" : "number", + "description" : "interestPercentage", + "readOnly" : true + }, + "currency" : { + "type" : "string", + "description" : "currency" + } + } + }, + "ResponseWrapperReminderChargeAndInterest" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReminderChargeAndInterest" + } + } + }, + "CreditNoteDetails" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isCredited" : { + "type" : "boolean", + "readOnly" : true + }, + "isCreditNote" : { + "type" : "boolean", + "readOnly" : true + }, + "isSubscriptionInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "customerEmail" : { + "type" : "string", + "readOnly" : true + }, + "preferredCustomerSendType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EMAIL", "EHF", "EFAKTURA", "AVTALEGIRO", "VIPPS", "PAPER", "MANUAL", "DIRECT", "AUTOINVOICE_EHF_OUTBOUND", "AUTOINVOICE_EHF_INCOMING", "PEPPOL_EHF_INCOMING" ] + } + } + }, + "ResponseWrapperCreditNoteDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CreditNoteDetails" + } + } + }, + "InvoiceReminderDetails" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "chargedMoreThanTwice" : { + "type" : "boolean", + "readOnly" : true + }, + "lastReminderDueDate" : { + "type" : "string", + "readOnly" : true + }, + "lastReminderType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SOFT_REMINDER", "REMINDER", "NOTICE_OF_DEBT_COLLECTION", "DEBT_COLLECTION" ] + }, + "lastChargedReminderDate" : { + "type" : "string", + "readOnly" : true + }, + "lastNoticeOfDebtCollectionDate" : { + "type" : "string", + "readOnly" : true + }, + "isCreditNote" : { + "type" : "boolean", + "readOnly" : true + }, + "isPaid" : { + "type" : "boolean", + "readOnly" : true + }, + "isSentToFactoring" : { + "type" : "boolean", + "readOnly" : true + }, + "email" : { + "type" : "string", + "readOnly" : true + }, + "smsNumber" : { + "type" : "string", + "readOnly" : true + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "debtCollector" : { + "$ref" : "#/components/schemas/DebtCollector" + } + }, + "readOnly" : true + }, + "ListResponseInvoiceReminderDetails" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InvoiceReminderDetails" + } + } + } + }, + "InvoiceOverviewSumDTO" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "sumTotal" : { + "type" : "number", + "readOnly" : true + }, + "sumTotalExclVat" : { + "type" : "number", + "readOnly" : true + }, + "sumPaid" : { + "type" : "number", + "readOnly" : true + }, + "sumOutstanding" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperInvoiceOverviewSumDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceOverviewSumDTO" + } + } + }, + "InvoiceOverviewMetaDTO" : { + "type" : "object", + "properties" : { + "hasModuleProject" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleDepartment" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleDepartmentAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleSmsNotification" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleNetsPrint" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleFactoring" : { + "type" : "boolean", + "readOnly" : true + }, + "isVatOn" : { + "type" : "boolean", + "readOnly" : true + }, + "isReminderDebtCollectionActionAllowed" : { + "type" : "boolean", + "readOnly" : true + }, + "isCreditActionAllowed" : { + "type" : "boolean", + "readOnly" : true + }, + "companyCurrencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyCurrency" : { + "$ref" : "#/components/schemas/Currency" + }, + "companyCountryId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "hasAnyInvoices" : { + "type" : "boolean", + "readOnly" : true + }, + "hasAnyOtherPostings" : { + "type" : "boolean", + "readOnly" : true + }, + "startBalanceDate" : { + "type" : "string", + "readOnly" : true + }, + "showMPSUpsaleBanner" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperInvoiceOverviewMetaDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceOverviewMetaDTO" + } + } + }, + "CursorPaginatedListResponseInvoiceSummary" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InvoiceSummary" + } + }, + "cursor" : { + "type" : "string", + "description" : "Base64 encoded cursor", + "readOnly" : true + } + } + }, + "DebtCollectionInfoDTO" : { + "type" : "object", + "properties" : { + "status" : { + "type" : "string", + "readOnly" : true + }, + "comments" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "referenceNumber" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "DescriptionDTO" : { + "type" : "object", + "properties" : { + "descriptions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "isRead" : { + "type" : "boolean", + "readOnly" : true + }, + "hasError" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "HistoryEntryDTO" : { + "type" : "object", + "properties" : { + "sendDate" : { + "type" : "string", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "descriptions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DescriptionDTO" + } + }, + "sendMethods" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SendMethodDTO" + } + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "debtCollectionInfo" : { + "$ref" : "#/components/schemas/DebtCollectionInfoDTO" + } + }, + "readOnly" : true + }, + "InfoDTO" : { + "type" : "object", + "properties" : { + "internalComment" : { + "type" : "string", + "readOnly" : true + }, + "postponedReminderDate" : { + "type" : "string", + "readOnly" : true + }, + "relatedInvoices" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RelatedInvoicesDTO" + } + } + }, + "readOnly" : true + }, + "InvoiceDetails" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "history" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/HistoryEntryDTO" + } + }, + "info" : { + "$ref" : "#/components/schemas/InfoDTO" + }, + "autoReminderStatus" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "InvoiceStatusDTO" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true + }, + "isCritical" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "InvoiceSummary" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "documentId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "invoiceDetailsUrl" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customer" : { + "type" : "string", + "readOnly" : true + }, + "customerDetailsUrl" : { + "type" : "string", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "readOnly" : true + }, + "invoiceDueDate" : { + "type" : "string", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "currency" : { + "type" : "string", + "readOnly" : true + }, + "amountExVat" : { + "type" : "number", + "readOnly" : true + }, + "amountNokExclVAT" : { + "type" : "number", + "readOnly" : true + }, + "amountInclVat" : { + "type" : "number", + "readOnly" : true + }, + "paidAmount" : { + "type" : "number", + "readOnly" : true + }, + "invoiceStatus" : { + "$ref" : "#/components/schemas/InvoiceStatusDTO" + }, + "projectDetailsUrl" : { + "type" : "string", + "readOnly" : true + }, + "projectName" : { + "type" : "string", + "readOnly" : true + }, + "projectNumber" : { + "type" : "string", + "readOnly" : true + }, + "amountOutstanding" : { + "type" : "number", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "orderId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isProject" : { + "type" : "boolean", + "readOnly" : true + }, + "invoiceDetails" : { + "$ref" : "#/components/schemas/InvoiceDetails" + }, + "factoringCustomerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "factoringCustomer" : { + "type" : "string", + "readOnly" : true + }, + "factoringCustomerAccountNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "reference" : { + "type" : "string", + "readOnly" : true + }, + "brregStatus" : { + "type" : "number", + "readOnly" : true + }, + "customerOrganizationNumber" : { + "type" : "string", + "readOnly" : true + }, + "projectManagerName" : { + "type" : "string", + "readOnly" : true + }, + "projectManagerNumber" : { + "type" : "string", + "readOnly" : true + }, + "departmentName" : { + "type" : "string", + "readOnly" : true + }, + "departmentNumber" : { + "type" : "string", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "RelatedInvoicesDTO" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isCreditNote" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "SendMethodDTO" : { + "type" : "object", + "properties" : { + "method" : { + "type" : "string", + "readOnly" : true + }, + "receiverInformation" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + }, + "readOnly" : true + }, + "RegisterOtherPostingPaymentDTO" : { + "type" : "object", + "properties" : { + "postingId" : { + "type" : "integer", + "format" : "int64" + }, + "paymentDate" : { + "type" : "string" + }, + "paymentTypeId" : { + "type" : "integer", + "format" : "int64" + }, + "paidAmount" : { + "type" : "number" + }, + "paidAmountCurrency" : { + "type" : "number" + } + } + }, + "ListResponseOtherPosting" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OtherPosting" + } + } + } + }, + "OtherPosting" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "voucherUrl" : { + "type" : "string", + "readOnly" : true + }, + "voucherPdfUrl" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "customerName" : { + "type" : "string", + "readOnly" : true + }, + "customerNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerUrl" : { + "type" : "string", + "readOnly" : true + }, + "projectName" : { + "type" : "string", + "readOnly" : true + }, + "projectNumber" : { + "type" : "string", + "readOnly" : true + }, + "projectUrl" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "senderName" : { + "type" : "string", + "readOnly" : true + }, + "senderMessage" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "OPEN", "CLOSED" ] + }, + "type" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNKNOWN_PAYMENT", "ADVANCED_VOUCHER", "OPENING_BALANCE", "INCOME" ] + }, + "date" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "closeGroupId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "reference" : { + "type" : "string", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "OtherPostingsSumDTO" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "sumTotal" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperOtherPostingsSumDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/OtherPostingsSumDTO" + } + } + }, + "ResponseWrapperMapFeatureBoolean" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + } + } + }, + "LandbruketsDataflyt" : { + "type" : "object", + "properties" : { + "submittedToLandbruketsDataflytBy" : { + "type" : "string" + }, + "submittedToLandbruketsDataflytDate" : { + "type" : "string" + }, + "submittedToNibioBy" : { + "type" : "string" + }, + "submittedToNibioDate" : { + "type" : "string" + } + } + }, + "ResponseWrapperLandbruketsDataflyt" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LandbruketsDataflyt" + } + } + }, + "LastPosted" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherDate" : { + "type" : "string", + "readOnly" : true + }, + "timestamp" : { + "type" : "string", + "readOnly" : true + }, + "supplier" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "paymentStatus" : { + "type" : "string", + "readOnly" : true + }, + "postedByEmployee" : { + "type" : "string", + "readOnly" : true + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "automaticallyPosted" : { + "type" : "boolean", + "readOnly" : true + }, + "commentCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "lastComment" : { + "type" : "string", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "hasAttachment" : { + "type" : "boolean", + "readOnly" : true + }, + "voucherDocuments" : { + "type" : "array", + "description" : "All documents linked to this voucher for PDF display", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherDocument" + } + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseLastPosted" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LastPosted" + } + } + } + }, + "ListResponseSupplierBalance" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierBalance" + } + } + } + }, + "SupplierBalance" : { + "type" : "object", + "properties" : { + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceChange" : { + "type" : "number", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "readOnly" : true + }, + "balanceInCurrencies" : { + "type" : "array", + "description" : "Currencies that have been used prior to this period, for the given filter", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Currency" + } + }, + "sumAmountNegative" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "LedgerAccount" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "sumAmount" : { + "type" : "number", + "readOnly" : true + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "sumAmountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceCurrency" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceCurrency" : { + "type" : "number", + "readOnly" : true + }, + "balanceOutInAccountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "postings" : { + "type" : "array", + "description" : "Link to postings on this account.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + } + }, + "readOnly" : true + }, + "ListResponseLedgerAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LedgerAccount" + } + } + } + }, + "AccountSuggestion" : { + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "readOnly" : true + }, + "tags" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + }, + "readOnly" : true + }, + "AccountWithHelpInfo" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "numberPretty" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "accountHelp" : { + "$ref" : "#/components/schemas/AccountSuggestion" + } + }, + "readOnly" : true + }, + "ListResponseAccountWithHelpInfo" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountWithHelpInfo" + } + } + } + }, + "ListResponseAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Account" + } + } + } + }, + "AccountHelpJson" : { + "type" : "object", + "properties" : { + "revision" : { + "minimum" : 1, + "type" : "integer", + "description" : "Revision number of the account help data", + "format" : "int32" + }, + "accounts" : { + "type" : "array", + "description" : "List of account suggestions", + "items" : { + "$ref" : "#/components/schemas/AccountSuggestionModel" + } + } + } + }, + "AccountSuggestionModel" : { + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "description" : "Account description in markdown format" + }, + "accountNumber" : { + "minimum" : 1000, + "type" : "integer", + "description" : "Account number", + "format" : "int32" + }, + "accountName" : { + "type" : "string", + "description" : "Account name" + }, + "tags" : { + "type" : "array", + "description" : "List of tags for searching", + "items" : { + "type" : "string", + "description" : "List of tags for searching" + } + } + }, + "description" : "List of account suggestions" + }, + "ResponseWrapperAccountHelpJson" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountHelpJson" + } + } + }, + "AccountingDimensionFixedUpdateDTO" : { + "type" : "object", + "properties" : { + "moduleDepartmentAccounting" : { + "type" : "boolean", + "description" : "Toggle department accounting module on/off" + }, + "moduleFixedAssetRegister" : { + "type" : "boolean", + "description" : "Toggle fixed asset register on/off" + }, + "moduleProjectAccounting" : { + "type" : "boolean", + "description" : "Toggle project accounting module on/off" + }, + "moduleProductAccounting" : { + "type" : "boolean", + "description" : "Toggle product accounting module on/off" + } + } + }, + "AccountingDimensionName" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "dimensionName" : { + "type" : "string", + "description" : "The name of the dimension." + }, + "description" : { + "type" : "string", + "description" : "The description of the dimension." + }, + "dimensionIndex" : { + "type" : "integer", + "description" : "The index of the dimension. Possible vales are 1, 2 and 3", + "format" : "int32", + "readOnly" : true + }, + "active" : { + "type" : "boolean", + "description" : "Indicates if the dimension is active." + } + }, + "readOnly" : true + }, + "ResponseWrapperAccountingDimensionName" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountingDimensionName" + } + } + }, + "ListResponseAccountingDimensionName" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountingDimensionName" + } + } + } + }, + "AccountingDimensionContext" : { + "type" : "object", + "properties" : { + "contextId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "hasModules" : { + "type" : "boolean", + "description" : "Returns true if the free accounting dimensions feature is enabled.", + "readOnly" : true + }, + "canActivateAssetRegistry" : { + "type" : "boolean", + "description" : "Returns true if the asset registry can be activated (requires Smart or above).", + "readOnly" : true + }, + "canActivateProjectAccounting" : { + "type" : "boolean", + "description" : "Returns true if project accounting can be activated (requires Smart with project, or Komplett and above.", + "readOnly" : true + } + } + }, + "ResponseWrapperAccountingDimensionContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountingDimensionContext" + } + } + }, + "ResponseWrapperAccountingDimensionValue" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + }, + "ListResponseAccountingDimensionValue" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + } + }, + "ListResponseAccountingPeriod" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountingPeriod" + } + } + } + }, + "ResponseWrapperAccountingPeriod" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountingPeriod" + } + } + }, + "ResponseWrapperSupplierLedgerDetailsAggregate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SupplierLedgerDetailsAggregate" + } + } + }, + "SupplierLedgerDetail" : { + "type" : "object", + "properties" : { + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "openAmount" : { + "type" : "number", + "readOnly" : true + }, + "postings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + } + } + }, + "SupplierLedgerDetailsAggregate" : { + "type" : "object", + "properties" : { + "isExceedingMaxLimit" : { + "type" : "boolean", + "readOnly" : true + }, + "totalSupplierCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalDebit" : { + "type" : "number", + "readOnly" : true + }, + "totalCredit" : { + "type" : "number", + "readOnly" : true + }, + "totalOpenAmount" : { + "type" : "number", + "readOnly" : true + }, + "link" : { + "type" : "string", + "readOnly" : true + }, + "suppliers" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupplierLedgerDetail" + } + } + }, + "description" : "Supplier ledger with detailed postings per supplier" + }, + "ResponseWrapperSupplierLedgerSummaryAggregate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SupplierLedgerSummaryAggregate" + } + } + }, + "SupplierLedgerSummary" : { + "type" : "object", + "properties" : { + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "postingCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "debit" : { + "type" : "number", + "readOnly" : true + }, + "credit" : { + "type" : "number", + "readOnly" : true + }, + "openAmount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "SupplierLedgerSummaryAggregate" : { + "type" : "object", + "properties" : { + "isExceedingMaxLimit" : { + "type" : "boolean", + "readOnly" : true + }, + "totalSupplierCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalDebit" : { + "type" : "number", + "readOnly" : true + }, + "totalCredit" : { + "type" : "number", + "readOnly" : true + }, + "totalOpenAmount" : { + "type" : "number", + "readOnly" : true + }, + "link" : { + "type" : "string", + "readOnly" : true + }, + "supplierSummaries" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupplierLedgerSummary" + } + } + }, + "description" : "Supplier ledger summary with aggregated totals per supplier" + }, + "AnnualAccount" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "start" : { + "type" : "string", + "readOnly" : true + }, + "end" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperAnnualAccount" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AnnualAccount" + } + } + }, + "ListResponseAnnualAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnnualAccount" + } + } + } + }, + "BalanceReport" : { + "type" : "object", + "properties" : { + "columns" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReportColumn" + } + }, + "rows" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BalanceReportRow" + } + }, + "warnings" : { + "type" : "array", + "description" : "Soft warnings", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + } + }, + "BalanceReportColumn" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "Column type", + "readOnly" : true, + "enum" : [ "BALANCE_IN", "MONTH", "BALANCE_OUT", "LAST_YEAR_BALANCE_OUT", "LAST_YEAR_CHANGE" ] + }, + "label" : { + "type" : "string", + "description" : "i18n-resolved column label", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "description" : "Inclusive start of the bucket date range; null for BALANCE_IN and BALANCE_OUT, which are balances at a single date", + "readOnly" : true + }, + "periodToExclusive" : { + "type" : "string", + "description" : "Exclusive end of the bucket date range; the column value is the cumulative balance at this date (exclusive)", + "readOnly" : true + }, + "monthIndex" : { + "type" : "integer", + "description" : "1-based chronological month-column index when type=MONTH; null otherwise", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "BalanceReportRow" : { + "type" : "object", + "properties" : { + "rowId" : { + "type" : "string", + "description" : "Stable row identifier within the response", + "readOnly" : true + }, + "parentRowId" : { + "type" : "string", + "description" : "rowId of the parent row, or null for top-level rows", + "readOnly" : true + }, + "level" : { + "type" : "integer", + "description" : "Indentation level (0..N) after applying levelOverride", + "format" : "int32", + "readOnly" : true + }, + "rowType" : { + "type" : "string", + "description" : "Row kind", + "readOnly" : true, + "enum" : [ "GROUP_HEADER", "GROUP_SUM", "ACCOUNT", "GRAND_TOTAL" ] + }, + "accountId" : { + "type" : "integer", + "description" : "Account id for ACCOUNT rows", + "format" : "int64", + "readOnly" : true + }, + "accountNumber" : { + "type" : "integer", + "description" : "Account number for ACCOUNT rows", + "format" : "int32", + "readOnly" : true + }, + "accountName" : { + "type" : "string", + "description" : "Account name for ACCOUNT rows", + "readOnly" : true + }, + "accountUrl" : { + "type" : "string", + "description" : "Chart-of-accounts URL for ACCOUNT rows", + "readOnly" : true + }, + "label" : { + "type" : "string", + "description" : "i18n-resolved label for GROUP_HEADER, GROUP_SUM, GRAND_TOTAL rows", + "readOnly" : true + }, + "displayedNegative" : { + "type" : "boolean", + "description" : "True when this row's containing group has displayNegative=true (server already applied the sign flip to values)", + "readOnly" : true + }, + "generalLedgerUrl" : { + "type" : "string", + "description" : "Link to Hovedbok for ACCOUNT and GROUP_SUM rows; null for GROUP_HEADER", + "readOnly" : true + }, + "values" : { + "type" : "array", + "description" : "Values, one per column for ACCOUNT, GROUP_SUM and GRAND_TOTAL rows (same order as `columns`); empty for GROUP_HEADER rows, which are pure labels", + "readOnly" : true, + "items" : { + "type" : "number", + "readOnly" : true + } + }, + "hasActivity" : { + "type" : "boolean", + "description" : "True if any descendant has activity (incoming balance, change or postings in the period); informational, pruning is already applied", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperBalanceReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BalanceReport" + } + } + }, + "ResponseWrapperUnallocatedResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/UnallocatedResult" + } + } + }, + "UnallocatedResult" : { + "type" : "object", + "properties" : { + "incomingUnallocatedProfitPreviousYear" : { + "type" : "number", + "readOnly" : true + }, + "outgoingUnallocatedProfitPreviousYear" : { + "type" : "number", + "readOnly" : true + } + } + }, + "AccountBalanceSheet" : { + "type" : "object", + "properties" : { + "rows" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountBalanceSheetRow" + } + }, + "sumBalanceIn" : { + "type" : "number", + "readOnly" : true + }, + "sumBalanceChange" : { + "type" : "number", + "readOnly" : true + }, + "sumBalanceOut" : { + "type" : "number", + "readOnly" : true + } + } + }, + "AccountBalanceSheetRow" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountName" : { + "type" : "string", + "readOnly" : true + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceChange" : { + "type" : "number", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "readOnly" : true + }, + "generalLedgerUrl" : { + "type" : "string", + "description" : "Link to general ledger page for this account", + "readOnly" : true + }, + "accountUrl" : { + "type" : "string", + "description" : "Link to chart of accounts page for this account", + "readOnly" : true + }, + "hasPostingsInPeriod" : { + "type" : "boolean", + "description" : "True if there are postings in the period for this account, even if they sum to zero", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperAccountBalanceSheet" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountBalanceSheet" + } + } + }, + "ResponseWrapperCloseGroup" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CloseGroup" + } + } + }, + "ListResponseCloseGroup" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CloseGroup" + } + } + } + }, + "ListResponsePostingValidationMessage" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PostingValidationMessage" + } + } + } + }, + "PostingValidationMessage" : { + "type" : "object", + "properties" : { + "postingId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "message" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "GeneralLedgerCloseGroup" : { + "type" : "object", + "properties" : { + "closeGroupPostings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GeneralLedgerPosting" + } + }, + "closedByIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "closedTime" : { + "type" : "string", + "readOnly" : true + }, + "closedByActualEmployeeName" : { + "type" : "string", + "readOnly" : true + }, + "closedByExternalAccountant" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "GeneralLedgerPosting" : { + "type" : "object", + "properties" : { + "postingIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "postingsKey" : { + "type" : "string", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "voucherUrl" : { + "type" : "string", + "readOnly" : true + }, + "postingDate" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "descriptionCount" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vatTypeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vatNumber" : { + "type" : "string", + "readOnly" : true + }, + "vatTypeNameShort" : { + "type" : "string", + "readOnly" : true + }, + "vatPercentage" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "currency" : { + "type" : "string", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "amountVat" : { + "type" : "number", + "readOnly" : true + }, + "closeGroupIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "departmentIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "departmentName" : { + "type" : "string", + "readOnly" : true + }, + "departmentNumber" : { + "type" : "string", + "readOnly" : true + }, + "departmentNameForExport" : { + "type" : "string" + }, + "departmentUrl" : { + "type" : "string", + "readOnly" : true + }, + "projectIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "projectName" : { + "type" : "string", + "readOnly" : true + }, + "projectNumber" : { + "type" : "string", + "readOnly" : true + }, + "projectNameForExport" : { + "type" : "string" + }, + "projectUrl" : { + "type" : "string", + "readOnly" : true + }, + "supplierIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "supplierNumber" : { + "type" : "string", + "readOnly" : true + }, + "supplierName" : { + "type" : "string", + "readOnly" : true + }, + "supplierUrl" : { + "type" : "string", + "readOnly" : true + }, + "supplierOrganizationNumber" : { + "type" : "string", + "readOnly" : true + }, + "customerIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "customerNumber" : { + "type" : "string", + "readOnly" : true + }, + "customerName" : { + "type" : "string", + "readOnly" : true + }, + "customerUrl" : { + "type" : "string", + "readOnly" : true + }, + "customerOrganizationNumber" : { + "type" : "string", + "readOnly" : true + }, + "employeeIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "employeeNumber" : { + "type" : "string", + "readOnly" : true + }, + "employeeName" : { + "type" : "string", + "readOnly" : true + }, + "employeeUrl" : { + "type" : "string", + "readOnly" : true + }, + "productIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "productNumber" : { + "type" : "string", + "readOnly" : true + }, + "productName" : { + "type" : "string", + "readOnly" : true + }, + "productUrl" : { + "type" : "string", + "readOnly" : true + }, + "productNameForExport" : { + "type" : "string" + }, + "isClosed" : { + "type" : "boolean", + "readOnly" : true + }, + "termOfPaymentDate" : { + "type" : "string", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "readOnly" : true + }, + "hasAttachment" : { + "type" : "boolean", + "readOnly" : true + }, + "assetIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "assetName" : { + "type" : "string", + "readOnly" : true + }, + "assetUrl" : { + "type" : "string", + "readOnly" : true + }, + "taxTransactionTypes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "taxTransactionTypeName" : { + "type" : "string", + "readOnly" : true + }, + "quantityAmount1" : { + "type" : "number", + "readOnly" : true + }, + "productUnitId1" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "productUnit1Name" : { + "type" : "string", + "readOnly" : true + }, + "quantityAmount2" : { + "type" : "number", + "readOnly" : true + }, + "productUnitId2" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "productUnit2Name" : { + "type" : "string", + "readOnly" : true + }, + "lastComment" : { + "type" : "string", + "readOnly" : true + }, + "projectCategoryName" : { + "type" : "string", + "readOnly" : true + }, + "projectCategoryNumber" : { + "type" : "string", + "readOnly" : true + }, + "customerCategory1Name" : { + "type" : "string", + "readOnly" : true + }, + "customerCategory1Number" : { + "type" : "string", + "readOnly" : true + }, + "customerCategory2Name" : { + "type" : "string", + "readOnly" : true + }, + "customerCategory2Number" : { + "type" : "string", + "readOnly" : true + }, + "customerCategory3Name" : { + "type" : "string", + "readOnly" : true + }, + "customerCategory3Number" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension1Ids" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "freeDimension1Number" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension1Name" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension1NameForExport" : { + "type" : "string" + }, + "freeDimension1Url" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension2Ids" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "freeDimension2Number" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension2Name" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension2NameForExport" : { + "type" : "string" + }, + "freeDimension2Url" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension3Ids" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "freeDimension3Number" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension3Name" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension3NameForExport" : { + "type" : "string" + }, + "freeDimension3Url" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperGeneralLedgerCloseGroup" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GeneralLedgerCloseGroup" + } + } + }, + "GeneralLedgerContext" : { + "type" : "object", + "properties" : { + "contextId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "hasDepartments" : { + "type" : "boolean", + "readOnly" : true + }, + "hasProjects" : { + "type" : "boolean", + "readOnly" : true + }, + "hasProducts" : { + "type" : "boolean", + "readOnly" : true + }, + "hasEmployees" : { + "type" : "boolean", + "readOnly" : true + }, + "hasEmployeeFilter" : { + "type" : "boolean", + "readOnly" : true + }, + "hasMultipleLedgers" : { + "type" : "boolean", + "readOnly" : true + }, + "hasFixedAssetRegister" : { + "type" : "boolean", + "readOnly" : true + }, + "hasYearEndReport" : { + "type" : "boolean", + "readOnly" : true + }, + "hasMultipleVatReportTypes" : { + "type" : "boolean", + "readOnly" : true + }, + "hasOnlyAccessToOwnDepartment" : { + "type" : "boolean", + "readOnly" : true + }, + "hasOnlyAccessToOwnDepartmentForBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "hasQuantityHandling" : { + "type" : "boolean", + "readOnly" : true + }, + "loginEmployeeDepartmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "loginEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "canUserMarkAccountingPeriodAsChecked" : { + "type" : "boolean", + "readOnly" : true + }, + "hasDepartmentIndustry" : { + "type" : "boolean", + "readOnly" : true + }, + "shallNumberBePrettyPrinted" : { + "type" : "boolean", + "readOnly" : true + }, + "showTourMe" : { + "type" : "boolean", + "readOnly" : true + }, + "hasFreeDimension1" : { + "type" : "boolean", + "readOnly" : true + }, + "hasFreeDimension2" : { + "type" : "boolean", + "readOnly" : true + }, + "hasFreeDimension3" : { + "type" : "boolean", + "readOnly" : true + }, + "freeDimension1Name" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension2Name" : { + "type" : "string", + "readOnly" : true + }, + "freeDimension3Name" : { + "type" : "string", + "readOnly" : true + }, + "isTripletexTest" : { + "type" : "boolean", + "readOnly" : true + }, + "hasResultReportPilot" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperGeneralLedgerContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GeneralLedgerContext" + } + } + }, + "ResponseWrapperMapLongBoolean" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + } + } + }, + "GeneralLedgerAccountSum" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "balanceChange" : { + "type" : "number", + "readOnly" : true + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "readOnly" : true + }, + "noOfCurrencies" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "balanceCurrency" : { + "type" : "string", + "readOnly" : true + }, + "balanceCurrencyChange" : { + "type" : "number", + "readOnly" : true + }, + "balanceCurrencyIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceCurrencyOut" : { + "type" : "number", + "readOnly" : true + }, + "noOfQuantity1Units" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "quantity1ProductUnit" : { + "type" : "string", + "readOnly" : true + }, + "quantity1BalanceIn" : { + "type" : "number", + "readOnly" : true + }, + "quantity1BalanceOut" : { + "type" : "number", + "readOnly" : true + }, + "quantity1BalanceChange" : { + "type" : "number", + "readOnly" : true + }, + "noOfQuantity2Units" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "quantity2ProductUnit" : { + "type" : "string", + "readOnly" : true + }, + "quantity2BalanceIn" : { + "type" : "number", + "readOnly" : true + }, + "quantity2BalanceOut" : { + "type" : "number", + "readOnly" : true + }, + "quantity2BalanceChange" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseGeneralLedgerAccountSum" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GeneralLedgerAccountSum" + } + } + } + }, + "GeneralLedgerAccount" : { + "type" : "object", + "properties" : { + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountNumber" : { + "type" : "string", + "readOnly" : true + }, + "accountNumberAsInt" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountName" : { + "type" : "string", + "readOnly" : true + }, + "isFirstPostingForAccountIncluded" : { + "type" : "boolean", + "readOnly" : true + }, + "isLastPostingForAccountIncluded" : { + "type" : "boolean", + "readOnly" : true + }, + "postings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GeneralLedgerPosting" + } + }, + "hasHiddenWagePostings" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseGeneralLedgerAccount" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GeneralLedgerAccount" + } + } + } + }, + "PaymentTypeOut" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "isBruttoWageDeduction" : { + "type" : "boolean", + "description" : "true if it should be a deduction from the wage. The module PROVISIONSALARY is required to both view and change this setting" + }, + "creditAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "showIncomingInvoice" : { + "type" : "boolean", + "description" : "true if the payment type should be available in supplier invoices" + }, + "showWagePayment" : { + "type" : "boolean", + "description" : "true if the payment type should be available in wage payments. The wage module is required to both view and change this setting" + }, + "showVatReturns" : { + "type" : "boolean", + "description" : "true if the payment type should be available in vat returns" + }, + "showWagePeriodTransaction" : { + "type" : "boolean", + "description" : "true if the payment type should be available in period transactionsThe wage module is required to both view and change this setting" + }, + "requiresSeparateVoucher" : { + "type" : "boolean", + "description" : "true if a separate voucher is required" + }, + "sequence" : { + "type" : "integer", + "description" : "determines in which order the types should be listed. No 1 is listed first", + "format" : "int32" + }, + "isInactive" : { + "type" : "boolean", + "description" : "true if the payment type should be hidden from available payment types" + }, + "displayName" : { + "type" : "string", + "description" : "Value of a Dropdown Type used in the payment type dropdown" + }, + "currencyId" : { + "type" : "integer", + "description" : "currency Id", + "format" : "int32" + }, + "currencyCode" : { + "type" : "string", + "description" : "currency code" + } + }, + "readOnly" : true + }, + "ResponseWrapperPaymentTypeOut" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PaymentTypeOut" + } + } + }, + "ListResponsePaymentTypeOut" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentTypeOut" + } + } + } + }, + "ResponseWrapperPosting" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Posting" + } + } + }, + "HistoricalPosting" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "date" : { + "type" : "string", + "description" : "The posting date." + }, + "description" : { + "type" : "string", + "description" : "The description of the posting." + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "amount" : { + "type" : "number", + "description" : "The posting amount in company currency. Important: The amounts in this amount field must have sum = 0 on all the dates. If multiple postings with different dates, then the sum must be 0 on each of the dates." + }, + "amountCurrency" : { + "type" : "number", + "description" : "The posting amount in posting currency." + }, + "amountGross" : { + "type" : "number", + "description" : "The posting gross amount in company currency." + }, + "amountGrossCurrency" : { + "type" : "number", + "description" : "The posting gross amount in posting currency." + }, + "amountVat" : { + "type" : "number", + "description" : "The amount of vat on this posting in company currency (NOK)." + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "invoiceNumber" : { + "type" : "string", + "description" : "Invoice number." + }, + "termOfPayment" : { + "type" : "string", + "description" : "Due date." + }, + "closeGroup" : { + "type" : "string", + "description" : "Optional. Used to create a close group for postings." + }, + "quantityAmount1" : { + "type" : "number", + "description" : "The quantity amount associated with the posting" + }, + "quantityType1" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "quantityAmount2" : { + "type" : "number", + "description" : "The quantity amount associated with the posting" + }, + "quantityType2" : { + "$ref" : "#/components/schemas/ProductUnit" + } + }, + "description" : "The list of postings of the voucher. In postings, these fields must be provided: date, account, currency, amount, amountBasis, amountVat, amountCurrency, amountBasisCurrency." + }, + "ResponseWrapperHistoricalPosting" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HistoricalPosting" + } + } + }, + "ResponseWrapperResultReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ResultReport" + } + } + }, + "ResultReport" : { + "type" : "object", + "properties" : { + "columns" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResultReportColumn" + } + }, + "rows" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResultReportRow" + } + }, + "warnings" : { + "type" : "array", + "description" : "Soft warnings (e.g. unavailable budget dimension)", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + } + }, + "ResultReportColumn" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "Column type", + "readOnly" : true, + "enum" : [ "PERIOD", "MONTH", "YEAR_TO_DATE", "LAST_YEAR_PERIOD", "LAST_YEAR_CHANGE", "BUDGET", "BUDGET_DEVIATION", "YTD_BUDGET", "YTD_BUDGET_DEVIATION" ] + }, + "label" : { + "type" : "string", + "description" : "i18n-resolved column label", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "description" : "Inclusive start of the bucket date range", + "readOnly" : true + }, + "periodToExclusive" : { + "type" : "string", + "description" : "Exclusive end of the bucket date range", + "readOnly" : true + }, + "monthIndex" : { + "type" : "integer", + "description" : "1-based month index when type=MONTH; 1..17 (exceeds 12 only in a transitional/deviating fiscal year); null otherwise", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResultReportRow" : { + "type" : "object", + "properties" : { + "rowId" : { + "type" : "string", + "description" : "Stable row identifier within the response", + "readOnly" : true + }, + "parentRowId" : { + "type" : "string", + "description" : "rowId of the parent row, or null for top-level rows", + "readOnly" : true + }, + "level" : { + "type" : "integer", + "description" : "Indentation level (0..N) after applying levelOverride", + "format" : "int32", + "readOnly" : true + }, + "sumLevel" : { + "type" : "integer", + "description" : "Summary level for sum/total rows, computed the legacy resultReport2 way", + "format" : "int32", + "readOnly" : true + }, + "rowType" : { + "type" : "string", + "description" : "Row kind", + "readOnly" : true, + "enum" : [ "GROUP_HEADER", "GROUP_SUM", "ACCOUNT", "GRAND_TOTAL" ] + }, + "accountId" : { + "type" : "integer", + "description" : "Account id for ACCOUNT rows", + "format" : "int64", + "readOnly" : true + }, + "accountNumber" : { + "type" : "integer", + "description" : "Account number for ACCOUNT rows", + "format" : "int32", + "readOnly" : true + }, + "accountName" : { + "type" : "string", + "description" : "Account name for ACCOUNT rows", + "readOnly" : true + }, + "accountUrl" : { + "type" : "string", + "description" : "Chart-of-accounts URL for ACCOUNT rows", + "readOnly" : true + }, + "label" : { + "type" : "string", + "description" : "i18n-resolved label for GROUP_HEADER, GROUP_SUM, GRAND_TOTAL rows", + "readOnly" : true + }, + "displayedNegative" : { + "type" : "boolean", + "description" : "True when this row's containing group has displayNegative=true (server already applied the sign flip to values)", + "readOnly" : true + }, + "generalLedgerUrl" : { + "type" : "string", + "description" : "Link to Hovedbok for ACCOUNT and GROUP_SUM rows; null for GROUP_HEADER", + "readOnly" : true + }, + "values" : { + "type" : "array", + "description" : "Values, one per column for ACCOUNT, GROUP_SUM and GRAND_TOTAL rows (same order as `columns`); empty for GROUP_HEADER rows, which are pure labels", + "readOnly" : true, + "items" : { + "type" : "number", + "readOnly" : true + } + }, + "hasActivity" : { + "type" : "boolean", + "description" : "True if any descendant has activity in any column (informational; pruning is already applied)", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperVatSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatSettings" + } + } + }, + "VatSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "vatRegistrationStatus" : { + "type" : "string", + "description" : "The VAT registration status of the company.", + "enum" : [ "VAT_NOT_REGISTERED", "VAT_APPLICANT", "VAT_REGISTERED", "VAT_COMPENSATION" ] + }, + "hasVatOutInside" : { + "type" : "boolean", + "description" : "Have sales inside the VAT Act." + }, + "hasVatOutOutside" : { + "type" : "boolean", + "description" : "Have sales outside the VAT Act. Art, culture, property, financial services, health services and more. The setting is connected to the following VAT code: 6." + }, + "hasVatOutNoneInside" : { + "type" : "boolean", + "description" : "Have tax-exempt sales inside the VAT Act (Norway). The setting is linked to the following VAT code: 5" + }, + "hasVatOutMedium" : { + "type" : "boolean", + "description" : "Has sales with medium rate VAT. Sales with 15 % VAT, including groceries. The setting is connected to the following VAT code: 31" + }, + "hasVatOutLow" : { + "type" : "boolean", + "description" : "Have sales with low rate VAT. Sales with 12 % VAT, including transportation of persons. The setting is connected to the following VAT code: 33" + }, + "hasVatOutExportNone" : { + "type" : "boolean", + "description" : "Have income from tax-exempt export of goods and services. =The setting is linked to the following VAT code: 52" + }, + "hasVatInMedium" : { + "type" : "boolean", + "description" : "Have deductions for input VAT with medium rate. This code is used for VAT with medium rate (15 %). The setting is connected to the following VAT code: 11." + }, + "hasVatInImport" : { + "type" : "boolean", + "description" : "Have expenses for goods purchased abroad. The setting is linked to the following VAT codes: 14, 15, 20 and 21. For companies not registered in the Value Added Tax Register the setting is only linked to the VAT codes 20, 21, 22, 82, 84 and 85." + }, + "hasVatInHighForeignServices" : { + "type" : "boolean", + "description" : "Have expenses for services purchased abroad. The setting is linked to the following VAT codes: 86 and 87. For companies not registered in the Value Added Tax Register the setting is only linked to the VAT code 87." + }, + "hasVatInLowForeignServices" : { + "type" : "boolean", + "description" : "Have expenses for services purchased abroad with low rate. The setting is linked to the following VAT codes: 88 and 89." + }, + "hasVatInFish" : { + "type" : "boolean", + "description" : "Have deductions for input VAT on raw fish. Applies to purchases with reduced rate from fishermen or fishermen's sales organizations. The setting is linked to the following VAT code: 12." + }, + "hasVatOutFish" : { + "type" : "boolean", + "description" : "Have sales of raw fish. The fisherman's sales to/via fishermen's sales organizations with 11,11 % VAT. The setting is connected to the following VAT code: 32" + }, + "hasVatInAndOutReverseDuty" : { + "type" : "boolean", + "description" : "Have turnover from gold and emissions trading. The setting is linked to the following VAT codes: 51, 91 and 92" + }, + "hasAdjustmentVat" : { + "type" : "boolean", + "description" : "Have adjustment of VAT. Activates VAT codes for adjustment of input VAT." + }, + "hasWithdrawalVat" : { + "type" : "boolean", + "description" : "Have withdrawal of goods and services. Activates VAT codes for withdrawal of goods and/or services for own use or which otherwise is not subjected to VAT." + }, + "hasDrawbackVat" : { + "type" : "boolean", + "description" : "Have reversal of input VAT. Activates VAT codes for reversal of input VAT for real property and vehicles." + }, + "hasCompensationCodes" : { + "type" : "boolean", + "description" : "Can use compensation codes in VAT return. Activates special VAT codes for compensation in the ordinary VAT return. These codes are only used by companies entitled to VAT compensation." + } + } + }, + "ResponseWrapperVatType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatType" + } + } + }, + "ListResponseVatType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatType" + } + } + } + }, + "OpeningBalance" : { + "type" : "object", + "properties" : { + "voucherDate" : { + "type" : "string", + "description" : "The date for the opening balance" + }, + "balancePostings" : { + "type" : "array", + "description" : "Balance postings", + "items" : { + "$ref" : "#/components/schemas/OpeningBalanceBalancePosting" + } + }, + "customerPostings" : { + "type" : "array", + "description" : "Postings in the customer sub ledger", + "items" : { + "$ref" : "#/components/schemas/OpeningBalanceCustomerPosting" + } + }, + "supplierPostings" : { + "type" : "array", + "description" : "Postings in the supplier sub ledger", + "items" : { + "$ref" : "#/components/schemas/OpeningBalanceSupplierPosting" + } + }, + "employeePostings" : { + "type" : "array", + "description" : "Postings in the employee sub ledger", + "items" : { + "$ref" : "#/components/schemas/OpeningBalanceEmployeePosting" + } + } + } + }, + "OpeningBalanceBalancePosting" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "freeDimension1" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeDimension2" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeDimension3" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "amount" : { + "type" : "number" + }, + "amountCurrency" : { + "type" : "number", + "description" : "Only relevant for accounts in a different currency than the company currency, e.g an EUR account in a Norwegian company. If provided on other accounts, it must always equal 'amount'" + } + }, + "description" : "Balance postings" + }, + "OpeningBalanceCustomerPosting" : { + "type" : "object", + "properties" : { + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "amount" : { + "type" : "number" + }, + "description" : { + "type" : "string" + } + }, + "description" : "Postings in the customer sub ledger" + }, + "OpeningBalanceEmployeePosting" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "amount" : { + "type" : "number" + }, + "description" : { + "type" : "string" + } + }, + "description" : "Postings in the employee sub ledger" + }, + "OpeningBalanceSupplierPosting" : { + "type" : "object", + "properties" : { + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "amount" : { + "type" : "number" + }, + "description" : { + "type" : "string" + } + }, + "description" : "Postings in the supplier sub ledger" + }, + "IdOnlyDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "url" : { + "type" : "string" + } + } + }, + "ResponseWrapperVoucherOptions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherOptions" + } + } + }, + "VoucherOptionDeleteMetadata" : { + "type" : "object", + "properties" : { + "available" : { + "type" : "boolean", + "description" : "Is the delete operation available for this Voucher?", + "readOnly" : true + }, + "reasons" : { + "type" : "array", + "description" : "If the delete operation is not available then this is a list of reasons why. Otherwise the list will be empty", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "If the delete operation is not available then this is a list of reasons why. Otherwise the list will be empty", + "readOnly" : true + } + } + }, + "description" : "A data structure containing information about the delete operation.", + "readOnly" : true + }, + "VoucherOptions" : { + "type" : "object", + "properties" : { + "delete" : { + "$ref" : "#/components/schemas/VoucherOptionDeleteMetadata" + } + } + }, + "VoucherSearchResponse" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Voucher" + } + }, + "totalNumberOfPostings" : { + "type" : "integer", + "description" : "[DEPRECATED] Number of postings returned (if postings are returned)", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperVoucherAttestation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherAttestation" + } + } + }, + "VoucherAttestation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "attestationSteps" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AttestationStep" + } + }, + "attestation" : { + "$ref" : "#/components/schemas/Attestation" + }, + "amount" : { + "type" : "number", + "description" : "[PILOT] Amount of the attestation", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "[PILOT] Display name as a string", + "readOnly" : true + }, + "urlDetails" : { + "type" : "string", + "description" : "[PILOT] Url to access the view in web", + "readOnly" : true + }, + "overviewUrl" : { + "type" : "string", + "description" : "[PILOT] Url to access the overview in web", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "description" : "System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "postings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + }, + "attachmentCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "vendorInvoiceNumber" : { + "type" : "string", + "description" : "Vendor invoice number." + }, + "numberAsString" : { + "type" : "string", + "readOnly" : true + }, + "actions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Link" + } + }, + "state" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "OPEN", "DELIVERED", "APPROVED", "REJECTED" ] + }, + "approvedDate" : { + "type" : "string", + "readOnly" : true + }, + "invoiceId" : { + "type" : "string", + "readOnly" : true + }, + "commentCount" : { + "type" : "integer", + "description" : "Number of comments on the voucher.", + "format" : "int32", + "readOnly" : true + }, + "lastComment" : { + "type" : "string", + "description" : "Text of the most recent comment on the voucher.", + "readOnly" : true + } + } + }, + "ListResponseVoucherAttestation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherAttestation" + } + } + } + }, + "HistoricalVoucher" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "The voucher date." + }, + "externalVoucherNumber" : { + "type" : "string", + "description" : "External voucher number. This is the voucher number in the historical system. Maximum 70 characters." + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "description" : "The voucher number generated by Tripletex. System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "minimum" : 0, + "type" : "integer", + "description" : "Voucher year. System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "The voucher description." + }, + "voucherType" : { + "$ref" : "#/components/schemas/VoucherType" + }, + "postings" : { + "type" : "array", + "description" : "The list of postings of the voucher. In postings, these fields must be provided: date, account, currency, amount, amountBasis, amountVat, amountCurrency, amountBasisCurrency.", + "items" : { + "$ref" : "#/components/schemas/HistoricalPosting" + } + } + } + }, + "ListResponseHistoricalVoucher" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/HistoricalVoucher" + } + } + } + }, + "ResponseWrapperHistoricalVoucher" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/HistoricalVoucher" + } + } + }, + "IncomeVoucher" : { + "type" : "object", + "properties" : { + "voucherId" : { + "type" : "integer", + "format" : "int64" + }, + "voucherNumber" : { + "type" : "string" + }, + "invoiceNumber" : { + "type" : "string" + }, + "invoiceDate" : { + "type" : "string" + }, + "incomeDate" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "customerId" : { + "type" : "integer", + "format" : "int32" + }, + "sendToLedger" : { + "type" : "boolean" + }, + "dueDate" : { + "type" : "string" + }, + "incomePostings" : { + "type" : "array", + "description" : "Income postings", + "items" : { + "$ref" : "#/components/schemas/IncomeVoucherPosting" + } + }, + "paymentPostings" : { + "type" : "array", + "description" : "Payment postings", + "items" : { + "$ref" : "#/components/schemas/IncomeVoucherPaymentPosting" + } + }, + "paymentPostingIdsForDeletion" : { + "type" : "array", + "description" : "Ids for payment postings to be deleted", + "items" : { + "type" : "integer", + "description" : "Ids for payment postings to be deleted", + "format" : "int64" + } + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "voucherTempNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "debitPostingId" : { + "type" : "integer", + "format" : "int64" + }, + "attachmentId" : { + "type" : "integer", + "description" : "Id of attachment linked to the voucher", + "format" : "int32" + }, + "canBeDeleted" : { + "type" : "boolean" + }, + "canBeReversed" : { + "type" : "boolean" + }, + "isTemporary" : { + "type" : "boolean" + }, + "reverseVoucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "commentCount" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "lastComment" : { + "type" : "string" + }, + "voucherTypeId" : { + "type" : "integer", + "format" : "int64" + }, + "voucherDocuments" : { + "type" : "array", + "description" : "Documents linked to this voucher", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherDocument" + } + } + } + }, + "IncomeVoucherPaymentPosting" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "asset" : { + "$ref" : "#/components/schemas/Asset" + }, + "freeAccountingDimension1" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeAccountingDimension2" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeAccountingDimension3" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "incomeDescription" : { + "type" : "string" + }, + "postingId" : { + "type" : "integer", + "format" : "int64" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "clientId" : { + "type" : "string" + }, + "amount" : { + "type" : "number" + }, + "quantity1" : { + "type" : "number" + }, + "productUnit1" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "quantity2" : { + "type" : "number" + }, + "productUnit2" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "date" : { + "type" : "string" + }, + "amountGross" : { + "type" : "number" + }, + "isVatClosed" : { + "type" : "boolean", + "description" : "Is vat code closed?", + "readOnly" : true + }, + "isAmountVatClosed" : { + "type" : "boolean", + "description" : "Is amount of this posting (for VAT purposes) changeable", + "readOnly" : true + }, + "amountGrossCurrency" : { + "type" : "number" + }, + "paymentTypeId" : { + "type" : "integer", + "format" : "int64" + } + }, + "description" : "Payment postings" + }, + "IncomeVoucherPosting" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "asset" : { + "$ref" : "#/components/schemas/Asset" + }, + "freeAccountingDimension1" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeAccountingDimension2" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeAccountingDimension3" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "incomeDescription" : { + "type" : "string" + }, + "postingId" : { + "type" : "integer", + "format" : "int64" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "clientId" : { + "type" : "string" + }, + "amount" : { + "type" : "number" + }, + "quantity1" : { + "type" : "number" + }, + "productUnit1" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "quantity2" : { + "type" : "number" + }, + "productUnit2" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "date" : { + "type" : "string" + }, + "amountGross" : { + "type" : "number" + }, + "isVatClosed" : { + "type" : "boolean", + "description" : "Is vat code closed?", + "readOnly" : true + }, + "isAmountVatClosed" : { + "type" : "boolean", + "description" : "Is amount of this posting (for VAT purposes) changeable", + "readOnly" : true + }, + "amountGrossCurrency" : { + "type" : "number" + } + }, + "description" : "Income postings" + }, + "ResponseWrapperIncomeVoucher" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomeVoucher" + } + } + }, + "ResponseWrapperIncomeVoucherPosting" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomeVoucherPosting" + } + } + }, + "ListResponseVoucherInternal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherInternal" + } + } + } + }, + "VoucherInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "description" : "System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "tempNumber" : { + "minimum" : 0, + "type" : "integer", + "description" : "Temporary voucher number.", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "minimum" : 0, + "type" : "integer", + "description" : "System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "voucherType" : { + "$ref" : "#/components/schemas/VoucherType" + }, + "reverseVoucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "postings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "document" : { + "$ref" : "#/components/schemas/Document" + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + }, + "externalVoucherNumber" : { + "type" : "string", + "description" : "External voucher number. Maximum 70 characters." + }, + "ediDocument" : { + "$ref" : "#/components/schemas/Document" + }, + "supplierVoucherType" : { + "type" : "string", + "description" : "Supplier voucher type - simple and detailed.", + "readOnly" : true, + "enum" : [ "TYPE_SUPPLIER_INVOICE_SIMPLE", "TYPE_SUPPLIER_INVOICE_DETAILED", "TYPE_INCOMING_INVOICE_UNIFIED" ] + }, + "wasAutoMatched" : { + "type" : "boolean", + "description" : "Voucher was auto matched", + "readOnly" : true + }, + "vendorInvoiceNumber" : { + "type" : "string", + "description" : "Vendor invoice number." + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "numberAsString" : { + "type" : "string", + "readOnly" : true + }, + "urlDetails" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ResponseWrapperVoucherType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherType" + } + } + }, + "ListResponseVoucherType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherType" + } + } + } + }, + "DeveloperTerms" : { + "type" : "object", + "properties" : { + "signed" : { + "type" : "boolean", + "description" : "Whether the company has signed the latest Visma Developer Terms." + }, + "license" : { + "$ref" : "#/components/schemas/License" + } + } + }, + "License" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Returns the license id.", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Returns license name.", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Returns license creation date.", + "readOnly" : true + }, + "displayTextKey" : { + "type" : "string", + "description" : "Returns license display text", + "readOnly" : true + }, + "content" : { + "type" : "string", + "description" : "Returns license content", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperDeveloperTerms" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DeveloperTerms" + } + } + }, + "ListResponseLicense" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/License" + } + } + } + }, + "ListResponseVehicleTypeV2" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VehicleTypeV2" + } + } + } + }, + "VehicleTypeV2" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Unique identifier of the vehicle type.", + "format" : "int32" + }, + "displayName" : { + "type" : "string", + "description" : "Display name of the vehicle type." + } + }, + "readOnly" : true + }, + "ListResponseSearchCompletion" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SearchCompletion" + } + } + } + }, + "SearchCompletion" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "alternateName" : { + "type" : "string", + "readOnly" : true + }, + "address" : { + "type" : "string", + "readOnly" : true + }, + "postalCode" : { + "type" : "string", + "readOnly" : true + }, + "postalArea" : { + "type" : "string", + "readOnly" : true + }, + "latitude" : { + "type" : "number", + "readOnly" : true + }, + "longitude" : { + "type" : "number", + "readOnly" : true + }, + "category" : { + "type" : "string", + "readOnly" : true + }, + "score" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "sources" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SEARCH1881", "TRIPLETEX", "NICKNAME", "EMPLOYEE", "CONTACT", "ACTIVITY", "PROJECT", "ORDER", "OFFER", "CUSTOMER", "COMPANY", "CONTROLSCHEMA", "HOUR", "TRAVELEXPENSE" ] + } + } + }, + "readOnly" : true + }, + "ListResponsePersonAutoComplete" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PersonAutoComplete" + } + } + } + }, + "PersonAutoComplete" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "alternateName" : { + "type" : "string", + "readOnly" : true + }, + "address" : { + "type" : "string", + "readOnly" : true + }, + "postalCode" : { + "type" : "string", + "readOnly" : true + }, + "postalArea" : { + "type" : "string", + "readOnly" : true + }, + "latitude" : { + "type" : "number", + "readOnly" : true + }, + "longitude" : { + "type" : "number", + "readOnly" : true + }, + "category" : { + "type" : "string", + "readOnly" : true + }, + "score" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "sources" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SEARCH1881", "TRIPLETEX", "NICKNAME", "EMPLOYEE", "CONTACT", "ACTIVITY", "PROJECT", "ORDER", "OFFER", "CUSTOMER", "COMPANY", "CONTROLSCHEMA", "HOUR", "TRAVELEXPENSE" ] + } + }, + "firstname" : { + "type" : "string", + "readOnly" : true + }, + "lastname" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumber" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberMobile" : { + "type" : "string", + "readOnly" : true + }, + "email" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "countryId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "reserved" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperTrip" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Trip" + } + } + }, + "Trip" : { + "type" : "object", + "properties" : { + "distance" : { + "type" : "number" + }, + "travelTimeInMinutes" : { + "type" : "number" + }, + "sumTollNOK" : { + "type" : "number" + } + } + }, + "Lookup1881Coordinate" : { + "type" : "object", + "properties" : { + "latitude" : { + "type" : "number" + }, + "longitude" : { + "type" : "number" + } + } + }, + "Lookup1881Day" : { + "type" : "object", + "properties" : { + "weekDay" : { + "type" : "number", + "readOnly" : true + }, + "hours" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Lookup1881Hours" + } + } + }, + "readOnly" : true + }, + "Lookup1881Hours" : { + "type" : "object", + "properties" : { + "startTime" : { + "type" : "string", + "readOnly" : true + }, + "endTime" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "Lookup1881Price" : { + "type" : "object", + "properties" : { + "vehicle" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NotSet", "CarDiesel", "CarGasolineOrHybrid", "CarZeroEmission", "TruckEuroV", "TruckEuroVI", "CarGeneral", "TruckGeneral", "MC", "VanZeroEmission", "CarHydrogen" ] + }, + "price" : { + "type" : "number", + "readOnly" : true + }, + "autoPassPrice" : { + "type" : "number", + "readOnly" : true + }, + "rushHoursToll" : { + "$ref" : "#/components/schemas/Lookup1881RushHoursToll" + }, + "vehicleDescription" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "Lookup1881RushHoursToll" : { + "type" : "object", + "properties" : { + "days" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Lookup1881Day" + } + }, + "price" : { + "type" : "number", + "readOnly" : true + }, + "autoPassPrice" : { + "type" : "number", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "Lookup1881TollStationV2" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "prices" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Lookup1881Price" + } + }, + "coordinate" : { + "$ref" : "#/components/schemas/Lookup1881Coordinate" + }, + "time" : { + "type" : "number", + "readOnly" : true + }, + "distance" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "Lookup1881TotalToll" : { + "type" : "object", + "properties" : { + "vehicle" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NotSet", "CarDiesel", "CarGasolineOrHybrid", "CarZeroEmission", "TruckEuroV", "TruckEuroVI", "CarGeneral", "TruckGeneral", "MC", "VanZeroEmission", "CarHydrogen" ] + }, + "rushHoursToll" : { + "type" : "number", + "readOnly" : true + }, + "regularToll" : { + "type" : "number", + "readOnly" : true + }, + "totalPrice" : { + "type" : "number", + "readOnly" : true + }, + "rushHoursAutoPassToll" : { + "type" : "number", + "readOnly" : true + }, + "regularAutoPassToll" : { + "type" : "number", + "readOnly" : true + }, + "totalAutoPassPrice" : { + "type" : "number", + "readOnly" : true + }, + "totalRushHours" : { + "$ref" : "#/components/schemas/Lookup1881TotalTollPrices" + }, + "total" : { + "$ref" : "#/components/schemas/Lookup1881TotalTollPrices" + } + }, + "readOnly" : true + }, + "Lookup1881TotalTollPrices" : { + "type" : "object", + "properties" : { + "totalPrice" : { + "type" : "number", + "readOnly" : true + }, + "totalAutoPassPrice" : { + "type" : "number", + "readOnly" : true + }, + "totalPriceWithHourlyDiscount" : { + "type" : "number", + "readOnly" : true + }, + "totalAutoPassPriceWithHourlyDiscount" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperTripSearchResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripSearchResponse" + } + } + }, + "TripSearchResponse" : { + "type" : "object", + "properties" : { + "distance" : { + "type" : "number", + "readOnly" : true + }, + "travelTimeInMinutes" : { + "type" : "number", + "readOnly" : true + }, + "totalToll" : { + "$ref" : "#/components/schemas/Lookup1881TotalToll" + }, + "tollStations" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Lookup1881TollStationV2" + } + } + } + }, + "TripSearch" : { + "type" : "object", + "properties" : { + "routePoints" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Lookup1881Coordinate" + } + }, + "vehicleType" : { + "type" : "string", + "description" : "Vehicle type for the trip. Affects toll pricing.", + "enum" : [ "NotSet", "CarDiesel", "CarGasolineOrHybrid", "CarZeroEmission", "TruckEuroV", "TruckEuroVI", "CarGeneral", "TruckGeneral", "MC", "VanZeroEmission", "CarHydrogen" ] + }, + "autoPass" : { + "type" : "boolean", + "description" : "Whether the user has AutoPASS. Affects toll pricing." + }, + "rushHour" : { + "type" : "boolean", + "description" : "Whether to use rush hour pricing." + }, + "hourlyDiscount" : { + "type" : "boolean", + "description" : "Whether to apply the 1881 hourly rule (free re-crossing of a toll section within the grace period). Affects toll pricing." + } + } + }, + "Message" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "sendTime" : { + "type" : "string" + }, + "content" : { + "type" : "string" + }, + "emailTo" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "emailAttachments" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Document" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperMessage" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Message" + } + } + }, + "ListResponseMessage" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Message" + } + } + } + }, + "DeviceRegistration" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "mobileSubscription" : { + "$ref" : "#/components/schemas/MobileSubscription" + }, + "deviceRegistrationToken" : { + "type" : "string", + "description" : "Device registration token." + }, + "deviceType" : { + "type" : "string", + "description" : "Device type (ANDROID or IOS)", + "enum" : [ "UNKNOWN", "ANDROID", "IOS" ] + } + } + }, + "MobileSubscription" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeId" : { + "$ref" : "#/components/schemas/Employee" + }, + "webhookSubscriptionToken" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ResponseWrapperDeviceRegistration" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DeviceRegistration" + } + } + }, + "PlantScore" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employeeId" : { + "$ref" : "#/components/schemas/Employee" + }, + "currentScore" : { + "minimum" : 0, + "type" : "number" + }, + "currentStreak" : { + "minimum" : 0, + "type" : "number" + }, + "longestStreak" : { + "minimum" : 0, + "type" : "number" + }, + "monthlyScores" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TimeSheetMonthlyScore" + } + }, + "plantedTreesThisMonth" : { + "minimum" : 0, + "type" : "number" + }, + "totalPlantedTrees" : { + "minimum" : 0, + "type" : "number" + } + } + }, + "ResponseWrapperPlantScore" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PlantScore" + } + } + }, + "TimeSheetMonthlyScore" : { + "type" : "object", + "properties" : { + "employeeId" : { + "$ref" : "#/components/schemas/Employee" + }, + "score" : { + "minimum" : 0, + "type" : "number" + }, + "date" : { + "type" : "string" + } + } + }, + "MobileAppModules" : { + "type" : "object", + "properties" : { + "numberOfRegisteredHoursToday" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of registered hours today.", + "readOnly" : true + }, + "numberOfOpenOrders" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of orders.", + "readOnly" : true + }, + "numberOfTravelsAndExpensesForApproval" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of travels & expenses for approval.", + "readOnly" : true + }, + "numberOfVouchersForApproval" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of vouchers for approval.", + "readOnly" : true + }, + "numberOfRequestedVacationDaysForApproval" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of pending approvals requested vacation days for approval.", + "readOnly" : true + }, + "numberOfOpenAndRejectedTravelsExpenses" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of open and rejected travels & expenses.", + "readOnly" : true + }, + "numberOfPayslips" : { + "minimum" : 0, + "type" : "number", + "description" : "Number of payslips.", + "readOnly" : true + } + } + }, + "ResponseWrapperMobileAppModules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MobileAppModules" + } + } + }, + "MobileNotificationSettings" : { + "type" : "object", + "properties" : { + "notificationPreferences" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/NotificationSettings" + } + }, + "dailyTimeSheetNotificationSettings" : { + "$ref" : "#/components/schemas/MobileSettings" + } + } + }, + "MobileSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "isTimeSheetDailyNotificationActive" : { + "type" : "boolean" + }, + "notificationTime" : { + "type" : "string" + }, + "isMondayActive" : { + "type" : "boolean" + }, + "isTuesdayActive" : { + "type" : "boolean" + }, + "isWednesdayActive" : { + "type" : "boolean" + }, + "isThursdayActive" : { + "type" : "boolean" + }, + "isFridayActive" : { + "type" : "boolean" + }, + "isSaturdayActive" : { + "type" : "boolean" + }, + "isSundayActive" : { + "type" : "boolean" + } + } + }, + "NotificationSettings" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "The notification type", + "readOnly" : true, + "enum" : [ "WAGE_PERIOD_TRANSACTION", "PAYSLIP", "TIME_SHEET_REGISTRATION_MISSING", "EXPENSE_APPROVED", "TRAVEL_EXPENSE_APPROVED", "EXPENSES_FOR_APPROVAL", "TRAVEL_EXPENSES_FOR_APPROVAL", "RECONCILIATION_READY", "PAYMENT_CANCELLED", "VOUCHER_FOR_ATTESTATION", "INBOX_VOUCHER", "INBOX_VOUCHER_UPLOAD", "INCOMPLETE_VOUCHER", "INCOMING_INVOICE_AUTOMATION", "VOUCHER_REMIT", "INBOX_EHF", "TASK_ACTIVITY", "AUTOPAY_BANK_AGREEMENT_CREATED", "AUTOPAY_BANK_AGREEMENT_REQUIRES_LINKING", "AUTOPAY_BANK_AGREEMENT_REQUIRES_ACTIVATION", "ASK_FOR_BANK_ID", "BBS_AGREEMENTS_OCR_DISABLED", "BANK_AGREEMENT_FAILURE", "BANK_ONBOARDING_ACCESS_REQUEST", "SWITCH_TO_AUTOPAY_INCOMING_PAYMENTS", "PROJECT_MANAGER_ASSIGNED_TO_PROJECT", "IMPORT_VOUCHER_ERROR", "DISCOUNT_AGREEMENT", "AUTO_INVOICE_PROBLEMS", "SELF_TRIGGER_BANK_ONBOARDING_EMAIL", "DEBT_COLLECTION_FAILED", "SUPPORT_READ_ACCESS_REQUEST", "SELF_TRIGGER_PROVISIONING", "PAYMENT_FAILED", "BANK_STATEMENT_IN_CLOSED_RECONCILIATION", "AUTOPAY_ACTIVATION_FAILED", "PSD2_BANK_AGREEMENT_FAILURE", "AUTOPAY_REIMPORT_INCOMING_PAYMENT_VOUCHER_SUCCESS", "AUTOPAY_REIMPORT_INCOMING_PAYMENT_VOUCHER_FAILURE", "AUTOPAY_INCOMING_PAYMENT_SENT_TO_VOUCHER_RECEPTION", "APRILA_INVOICE_SALES_ONBOARDING_FAILED", "APRILA_CASH_CREDIT_ONBOARDING_FAILED", "APRILA_INVOICE_SALES_ACTIVATION_COMPLETE", "APRILA_CASH_CREDIT_ACTIVATION_COMPLETE", "APRILA_INVOICE_SALES_ACTIVATION_CANCELLED", "APRILA_CASH_CREDIT_ACTIVATION_CANCELLED", "APRILA_INVOICE_SALES_ACTIVATION_FAILED", "APRILA_CASH_CREDIT_ACTIVATION_FAILED", "APRILA_INVOICE_SALES_DEACTIVATION_COMPLETE", "APRILA_CASH_CREDIT_DEACTIVATION_COMPLETE", "AUTOPAY_OUTDATED_PAYMENTS", "AUTOPAY_USER_UPDATED", "MY_VACATION_DAYS_APPROVAL_STATUS", "VACATION_DAYS_TO_REVIEW", "WHOLESALER_IMPORT_FAILED", "EXPENSE_REJECTED", "TRAVEL_EXPENSE_REJECTED", "RESOURCE_PLAN_ASSIGNED_TO_JOBS", "DATAFLYT_INTEGRATION_STATUS_UPDATE", "TIME_SHEET_REMINDER_MOBILE_APP", "IN_APP_CHAT", "REPORT_SHARED", "AO_RECONCILIATION_CONTROL_REQUESTED", "ATTESTATION_NEXT_IN_LINE", "BALANCE_RECONCILIATION_OBSOLETE", "BANK", "VOUCHER", "BUSINESS", "DOCUMENT", "DONE", "EXTERNAL", "SUPPORT", "TRAVEL_REPORT", "EMPLOYEE_EXPENSE", "SALARY", "HOURLIST", "WARNING", "TEST", "OTHER" ] + }, + "choice" : { + "type" : "boolean", + "description" : "Whether the notification is enabled or disabled" + }, + "deliveryType" : { + "type" : "string", + "description" : "The delivery type", + "readOnly" : true + } + } + }, + "ResponseWrapperMobileNotificationSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MobileNotificationSettings" + } + } + }, + "AutocompleteSuggestion" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseAutocompleteSuggestion" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AutocompleteSuggestion" + } + } + } + }, + "ListResponseRoutePoint" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RoutePoint" + } + } + } + }, + "RoutePoint" : { + "type" : "object", + "properties" : { + "latitude" : { + "type" : "number", + "readOnly" : true + }, + "longitude" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "MobileAppRightsInfo" : { + "type" : "object", + "properties" : { + "hourRegistrationEnabled" : { + "type" : "boolean" + }, + "projectEnabled" : { + "type" : "boolean" + }, + "departmentEnabled" : { + "type" : "boolean" + }, + "userIsAllowedToRegisterHours" : { + "type" : "boolean" + }, + "payrollAccountingEnabled" : { + "type" : "boolean" + }, + "userIsAuthWageMenu" : { + "type" : "boolean" + }, + "userIsAuthMySalary" : { + "type" : "boolean" + }, + "electronicVouchersEnabled" : { + "type" : "boolean" + }, + "travelExpenseEnabled" : { + "type" : "boolean" + }, + "documentArchiveEnabled" : { + "type" : "boolean" + }, + "archiveReceptionEnabled" : { + "type" : "boolean" + }, + "userIsPayslipOnly" : { + "type" : "boolean" + }, + "travelExpenseRatesEnabled" : { + "type" : "boolean" + }, + "taxFreeMileageRatesEnabled" : { + "type" : "boolean" + }, + "approveTravelExpenseEnabled" : { + "type" : "boolean" + }, + "userIsAuthProjectInfo" : { + "type" : "boolean" + }, + "userIsAuthTravelAndExpenseApprove" : { + "type" : "boolean" + }, + "userIsAuthEmployeeInfo" : { + "type" : "boolean" + }, + "userIsAuthVoucherApprove" : { + "type" : "boolean" + }, + "userIsAuthInvoicing" : { + "type" : "boolean" + }, + "userIsAuthCreateOrder" : { + "type" : "boolean" + }, + "vatOnForCompany" : { + "type" : "boolean" + }, + "taxFreeDietRatesEnabled" : { + "type" : "boolean" + }, + "travelDietIgnorePostingEnabled" : { + "type" : "boolean" + }, + "employeeEnabled" : { + "type" : "boolean" + }, + "hourBalanceEnabledForEmployee" : { + "type" : "boolean" + }, + "vacationBalanceEnabledForEmployee" : { + "type" : "boolean" + }, + "userIsAuthCreateCustomer" : { + "type" : "boolean" + }, + "userIsAuthProjectMenu" : { + "type" : "boolean" + }, + "userIsAuthCompanyAccountingReports" : { + "type" : "boolean" + }, + "vvselectroEnabled" : { + "type" : "boolean" + }, + "customerEnabled" : { + "type" : "boolean" + }, + "userIsAuthCustomerInfo" : { + "type" : "boolean" + }, + "userIsAuthProductAdmin" : { + "type" : "boolean" + }, + "userIsAuthDirectRemitAutopayAdmin" : { + "type" : "boolean" + }, + "userIsAuthDirectRemitAutopayLight" : { + "type" : "boolean" + }, + "userIsAuthDirectRemitZtl" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperMobileAppRightsInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MobileAppRightsInfo" + } + } + }, + "ResponseWrapperMobileSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MobileSettings" + } + } + }, + "ResponseWrapperWorkingHoursCollection" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/WorkingHoursCollection" + } + } + }, + "WorkingHours" : { + "type" : "object", + "properties" : { + "hours" : { + "type" : "number", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "WorkingHoursCollection" : { + "type" : "object", + "properties" : { + "employeeWorkingHours" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WorkingHours" + } + }, + "companyWorkingHours" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WorkingHours" + } + } + } + }, + "MobileAppSpecificRightsInfo" : { + "type" : "object", + "properties" : { + "hourRegistrationEnabled" : { + "type" : "boolean" + }, + "projectEnabled" : { + "type" : "boolean" + }, + "departmentEnabled" : { + "type" : "boolean" + }, + "userIsAllowedToRegisterHours" : { + "type" : "boolean" + }, + "payrollAccountingEnabled" : { + "type" : "boolean" + }, + "userIsAuthWageMenu" : { + "type" : "boolean" + }, + "userIsAuthMySalary" : { + "type" : "boolean" + }, + "electronicVouchersEnabled" : { + "type" : "boolean" + }, + "travelExpenseEnabled" : { + "type" : "boolean" + }, + "documentArchiveEnabled" : { + "type" : "boolean" + }, + "archiveReceptionEnabled" : { + "type" : "boolean" + }, + "userIsPayslipOnly" : { + "type" : "boolean" + }, + "travelExpenseRatesEnabled" : { + "type" : "boolean" + }, + "taxFreeMileageRatesEnabled" : { + "type" : "boolean" + }, + "approveTravelExpenseEnabled" : { + "type" : "boolean" + }, + "userIsAuthProjectInfo" : { + "type" : "boolean" + }, + "userIsAuthTravelAndExpenseApprove" : { + "type" : "boolean" + }, + "userIsAuthEmployeeInfo" : { + "type" : "boolean" + }, + "userIsAuthVoucherApprove" : { + "type" : "boolean" + }, + "userIsAuthInvoicing" : { + "type" : "boolean" + }, + "userIsAuthCreateOrder" : { + "type" : "boolean" + }, + "vatOnForCompany" : { + "type" : "boolean" + }, + "taxFreeDietRatesEnabled" : { + "type" : "boolean" + }, + "travelDietIgnorePostingEnabled" : { + "type" : "boolean" + }, + "employeeEnabled" : { + "type" : "boolean" + }, + "hourBalanceEnabledForEmployee" : { + "type" : "boolean" + }, + "vacationBalanceEnabledForEmployee" : { + "type" : "boolean" + }, + "userIsAuthCreateCustomer" : { + "type" : "boolean" + }, + "userIsAuthProjectMenu" : { + "type" : "boolean" + }, + "userIsAuthCompanyAccountingReports" : { + "type" : "boolean" + }, + "vvselectroEnabled" : { + "type" : "boolean" + }, + "customerEnabled" : { + "type" : "boolean" + }, + "userIsAuthCustomerInfo" : { + "type" : "boolean" + }, + "userIsAuthProductAdmin" : { + "type" : "boolean" + }, + "userIsAuthDirectRemitAutopayAdmin" : { + "type" : "boolean" + }, + "userIsAuthDirectRemitAutopayLight" : { + "type" : "boolean" + }, + "userIsAuthDirectRemitZtl" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperMobileAppSpecificRightsInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MobileAppSpecificRightsInfo" + } + } + }, + "DeprecatedWorkingHours" : { + "type" : "object", + "properties" : { + "hours" : { + "type" : "number", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "DeprecatedWorkingHoursCollection" : { + "type" : "object", + "properties" : { + "employeeWorkingHours" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DeprecatedWorkingHours" + } + }, + "companyWorkingHours" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DeprecatedWorkingHours" + } + } + } + }, + "ResponseWrapperDeprecatedWorkingHoursCollection" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DeprecatedWorkingHoursCollection" + } + } + }, + "ListResponseMunicipality" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Municipality" + } + } + } + }, + "ResponseWrapperServiceActivationResponseDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ServiceActivationResponseDTO" + } + } + }, + "Result" : { + "type" : "object", + "properties" : { + "returnValue" : { + "type" : "object" + }, + "forward" : { + "type" : "string" + }, + "messages" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "validations" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "popups" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "changes" : { + "type" : "array", + "items" : { + "type" : "object" + } + } + }, + "readOnly" : true + }, + "ServiceActivationResponseDTO" : { + "type" : "object", + "properties" : { + "result" : { + "$ref" : "#/components/schemas/Result" + } + } + }, + "AccountClosureInfo" : { + "type" : "object", + "properties" : { + "readAccess" : { + "type" : "boolean" + }, + "nbOfYears" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + } + }, + "MySubscriptionAccountInfo" : { + "type" : "object", + "properties" : { + "readOnlyPackagePrice" : { + "type" : "number", + "readOnly" : true + }, + "voucherModule" : { + "type" : "string", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "canReopen" : { + "type" : "boolean", + "readOnly" : true + }, + "reopenLimitDate" : { + "type" : "string", + "readOnly" : true + }, + "reopenNumberOfDays" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "readOnlyUser" : { + "type" : "boolean", + "readOnly" : true + }, + "discountsNotReinstated" : { + "type" : "boolean", + "readOnly" : true + }, + "mikroVoucherModule" : { + "type" : "string", + "readOnly" : true + }, + "calculatedEndDate" : { + "type" : "string", + "readOnly" : true + }, + "isTemporarilyActive" : { + "type" : "boolean", + "readOnly" : true + }, + "subscriptionEndDate" : { + "type" : "string", + "readOnly" : true + }, + "isTripletexSuspended" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperMySubscriptionAccountInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MySubscriptionAccountInfo" + } + } + }, + "BetaProgramDTO" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "titleKey" : { + "type" : "string" + }, + "summaryKey" : { + "type" : "string" + }, + "descriptionActivationKey" : { + "type" : "string" + }, + "descriptionDeactivationKey" : { + "type" : "string" + }, + "state" : { + "type" : "string", + "enum" : [ "ACTIVE", "AVAILABLE", "NOT_AVAILABLE" ] + } + }, + "readOnly" : true + }, + "ListResponseBetaProgramDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BetaProgramDTO" + } + } + } + }, + "CustomerInvoiceDetails" : { + "type" : "object", + "properties" : { + "invoiceEmail" : { + "type" : "string" + }, + "invoiceSendMethod" : { + "type" : "string", + "description" : "Define the invoicing method for the customer.
EMAIL: Send invoices as email.
EHF: Send invoices as EHF.
EFAKTURA: Send invoices as EFAKTURA.
AVTALEGIRO: Send invoices as AVTALEGIRO.
VIPPS: Send invoices through VIPPS.
PAPER: Send invoices as paper invoice.
MANUAL: User will have to send invocie manually.
", + "enum" : [ "EMAIL", "EHF", "EFAKTURA", "AVTALEGIRO", "VIPPS", "PAPER", "MANUAL" ] + }, + "customerAccountNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "otherInvoiceReceiver" : { + "type" : "boolean", + "readOnly" : true + }, + "invoiceReceiverName" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperCustomerInvoiceDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CustomerInvoiceDetails" + } + } + }, + "InvoiceOptions" : { + "type" : "object", + "properties" : { + "sendTypes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string" + } + } + } + }, + "ResponseWrapperInvoiceOptions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceOptions" + } + } + }, + "MySubscriptionModuleDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "shortDescription" : { + "type" : "string", + "readOnly" : true + }, + "descriptionPart1" : { + "type" : "string", + "readOnly" : true + }, + "descriptionPart2" : { + "type" : "string", + "readOnly" : true + }, + "perUsePrice" : { + "type" : "number", + "readOnly" : true + }, + "perUserPrice" : { + "type" : "number", + "readOnly" : true + }, + "perUserStartup" : { + "type" : "number", + "readOnly" : true + }, + "monthlyPrice" : { + "type" : "number", + "readOnly" : true + }, + "monthlyMainModulePrice" : { + "type" : "number", + "readOnly" : true + }, + "monthlyVoucherPrice" : { + "type" : "number", + "nullable" : true, + "readOnly" : true + }, + "yearlyPrice" : { + "type" : "number", + "readOnly" : true + }, + "startUpPrice" : { + "type" : "number", + "readOnly" : true + }, + "perUserOverLimitPrice" : { + "type" : "number", + "readOnly" : true + }, + "priceDescription" : { + "type" : "string", + "readOnly" : true + }, + "active" : { + "type" : "boolean", + "readOnly" : true + }, + "available" : { + "type" : "boolean", + "readOnly" : true + }, + "processing" : { + "type" : "boolean", + "readOnly" : true + }, + "futurePurchase" : { + "type" : "boolean", + "readOnly" : true + }, + "infoText" : { + "type" : "string", + "readOnly" : true + }, + "unavailableText" : { + "type" : "string", + "readOnly" : true + }, + "licenseUrl" : { + "type" : "string", + "readOnly" : true + }, + "redirectUrl" : { + "type" : "string", + "readOnly" : true + }, + "priceLine1Text" : { + "type" : "string", + "readOnly" : true + }, + "priceLine2Text" : { + "type" : "string", + "readOnly" : true + }, + "priceLine3Text" : { + "type" : "string", + "readOnly" : true + }, + "price1" : { + "type" : "number", + "readOnly" : true + }, + "price2" : { + "type" : "number", + "readOnly" : true + }, + "price3" : { + "type" : "number", + "readOnly" : true + }, + "canDeactivate" : { + "type" : "boolean", + "readOnly" : true + }, + "deactivationError" : { + "type" : "string", + "readOnly" : true + }, + "possibleStartDate" : { + "type" : "string", + "readOnly" : true + }, + "purchaseStartDate" : { + "type" : "string", + "readOnly" : true + }, + "purchaseEndDate" : { + "type" : "string", + "readOnly" : true + }, + "hasAutoInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + }, + "deactivationErrorType" : { + "type" : "string", + "readOnly" : true + }, + "activationInfo" : { + "type" : "string", + "readOnly" : true + }, + "categories" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "VOUCHER", "AUTOMATION", "ACCOUNTS", "INTEGRATIONS", "BANK", "SALARY", "WAREHOUSE", "INVOICE", "QUALITY", "BETA", "NEW" ] + } + }, + "servicePrices" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/MySubscriptionPrice" + }, + "description" : "Prices of additional services. Note that prices for main modules are contained in named fields and not in this object.", + "readOnly" : true + }, + "ordered" : { + "type" : "boolean" + } + } + }, + "MySubscriptionPrice" : { + "type" : "object", + "properties" : { + "price" : { + "type" : "number", + "readOnly" : true + }, + "textKey" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Prices of additional services. Note that prices for main modules are contained in named fields and not in this object.", + "readOnly" : true + }, + "ResponseWrapperListMySubscriptionModuleDTO" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/MySubscriptionModuleDTO" + } + } + } + }, + "AccountClosureFeedback" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "reason" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + } + } + }, + "ResponseWrapperAccountClosureFeedback" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountClosureFeedback" + } + } + }, + "ResponseWrapperTripletexSalesModulePurchase" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexSalesModulePurchase" + } + } + }, + "TripletexSalesModulePurchase" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "tripletexCompanyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "tripletexPriceList" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNKNOWN", "TRIPLETEX_STANDARD", "AGRO", "MAMUT", "BASIS", "SMART", "KOMPLETT", "VVS_ELEKTRO", "AUTOPLUS", "MIKRO", "INTEGRATION_PARTNER", "PLUSS", "DIYPACKAGE", "PRO" ] + }, + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "purchaseDate" : { + "type" : "string", + "description" : "Purchase date", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "Purchase end date", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexSalesModuleName" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseNote" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Note" + } + } + } + }, + "Note" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "createdBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "createdDate" : { + "type" : "string", + "readOnly" : true + }, + "updatedDate" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperOrder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Order" + } + } + }, + "OrderLineSuggestion" : { + "type" : "object", + "properties" : { + "productId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "groupName" : { + "type" : "string", + "readOnly" : true + }, + "groupDescription" : { + "type" : "string", + "readOnly" : true + }, + "quantity" : { + "type" : "number", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "unitPriceExclVatCurrency" : { + "type" : "number", + "readOnly" : true + }, + "unitPriceInclVatCurrency" : { + "type" : "number", + "readOnly" : true + }, + "vatType" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + } + }, + "ResponseWrapperListOrderLineSuggestion" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/OrderLineSuggestion" + } + } + } + }, + "ListResponseOrder" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Order" + } + } + } + }, + "ResponseWrapperArchiveRelation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ArchiveRelation" + } + } + }, + "OrderOffer" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "offerDate" : { + "type" : "string" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "customerName" : { + "type" : "string", + "readOnly" : true + }, + "projectManagerNameAndNumber" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperOrderOffer" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/OrderOffer" + } + } + }, + "ListResponseOrderOffer" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OrderOffer" + } + } + } + }, + "ResponseWrapperOrderGroup" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/OrderGroup" + } + } + }, + "ListResponseOrderGroup" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OrderGroup" + } + } + } + }, + "ResponseWrapperOrderLine" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + }, + "ListResponseMostSoldProduct" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MostSoldProduct" + } + } + } + }, + "MostSoldProduct" : { + "type" : "object", + "properties" : { + "productId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseOrderLine" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + } + }, + "PhysicalOrder" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "order" : { + "$ref" : "#/components/schemas/Order" + }, + "totalWeight" : { + "type" : "number", + "description" : "Total weight for order" + }, + "manuallyOverriddenWeight" : { + "type" : "boolean" + }, + "weightUnit" : { + "type" : "string", + "enum" : [ "kg", "g", "hg" ] + }, + "totalVolume" : { + "type" : "number", + "description" : "Total volume for order" + }, + "manuallyOverriddenVolume" : { + "type" : "boolean" + }, + "lengthCm" : { + "type" : "number", + "description" : "Length of package" + }, + "widthCm" : { + "type" : "number", + "description" : "Width of package" + }, + "heightCm" : { + "type" : "number", + "description" : "height of package" + }, + "volumeUnit" : { + "type" : "string", + "enum" : [ "cm3", "dm3", "m3" ] + }, + "transportMethod" : { + "type" : "string", + "enum" : [ "NOT_CHOSEN", "SENDING", "PICKUP", "BRING_EXPRESS_NEXT_DAY", "BRING_PACKAGE_TO_COMPANY", "BRING_PACKAGE_DELIVERED_HOME", "BRING_PACKAGE_TO_PICKUP_POINT", "BRING_PACKAGE_IN_MAILBOX" ] + }, + "transportLabelLink" : { + "type" : "string" + }, + "trackingNumber" : { + "type" : "string" + }, + "trackingNumberLink" : { + "type" : "string" + }, + "deliveryContact" : { + "$ref" : "#/components/schemas/Contact" + }, + "incoterms" : { + "type" : "string", + "enum" : [ "NOT_CHOSEN", "EXW", "FCA", "CPT", "CIP", "DAP", "DPU", "DDP", "FAS", "FOB", "CFR", "CIF" ] + } + } + }, + "ResponseWrapperPhysicalOrder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PhysicalOrder" + } + } + }, + "ListResponseOrderLineAccrual" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OrderLineAccrual" + } + } + } + }, + "OrderLineAccrual" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "sourceType" : { + "type" : "string", + "description" : "The type of source for this accrual (ORDER_LINE, TRAVEL_EXPENSE, FEE, or MARKUP_FEE)", + "readOnly" : true, + "enum" : [ "ORDER_LINE", "TRAVEL_EXPENSE", "FEE", "MARKUP_FEE" ] + }, + "sourceId" : { + "type" : "integer", + "description" : "The ID of the source entity (orderLine, travelExpense, feeInvoiceOrder, or markupInvoiceOrder depending on sourceType)", + "format" : "int64", + "readOnly" : true + }, + "orderLine" : { + "$ref" : "#/components/schemas/OrderLine" + }, + "travelExpense" : { + "$ref" : "#/components/schemas/TravelExpense" + }, + "feeInvoiceOrder" : { + "$ref" : "#/components/schemas/ProjectInvoiceDetails" + }, + "markupFeeInvoiceOrder" : { + "$ref" : "#/components/schemas/ProjectInvoiceDetails" + }, + "accrualAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "incomeAccount" : { + "$ref" : "#/components/schemas/Account" + }, + "month" : { + "type" : "integer", + "description" : "The month the accrual starts", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "The year the accrual starts", + "format" : "int32", + "readOnly" : true + }, + "numberOfPeriods" : { + "type" : "integer", + "description" : "The number of periods for the accrual", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseOutgoingStock" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/OutgoingStock" + } + } + } + }, + "OutgoingStock" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "order" : { + "$ref" : "#/components/schemas/Order" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "count" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponsePaymentTypeAutomation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentTypeAutomation" + } + } + } + }, + "PaymentTypeAutomation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Id corresponding to a Dropdown Type used in the Payment Widget's dropdown elements", + "format" : "int32" + }, + "description" : { + "type" : "string", + "description" : "Value of a Dropdown Type used in the Payment Widget's dropdown elements" + }, + "paymentIntegration" : { + "type" : "string", + "description" : "The Payment Type (NETS, AUTOPAY, POSTING_RULE)", + "enum" : [ "NONE", "NOT_PAID", "NETS", "AUTOPAY", "POSTING_RULE", "ZTL" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperSimplePaymentWidget" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SimplePaymentWidget" + } + } + }, + "SimplePaymentWidget" : { + "type" : "object", + "properties" : { + "paymentTypes" : { + "type" : "array", + "description" : "List of payment types used in this Payment Widget", + "items" : { + "$ref" : "#/components/schemas/PaymentWidgetPaymentType" + } + }, + "selectedPaymentType" : { + "$ref" : "#/components/schemas/PaymentWidgetPaymentType" + }, + "date" : { + "type" : "string", + "description" : "Date of the payment to be registered in the Payment Widget" + }, + "amount" : { + "type" : "number", + "description" : "Amount of the payment to be registered in the Payment Widget" + }, + "bankAccount" : { + "type" : "string", + "description" : "Bank account used to register payment in the Payment Widget" + }, + "kid" : { + "type" : "string", + "description" : "Kid used to register payment in the Payment Widget" + }, + "readOnlyBankAccount" : { + "type" : "boolean", + "description" : "Field for making the bank account field readOnly in the Payment Widget" + }, + "readOnlyKid" : { + "type" : "boolean", + "description" : "Field for making the kid field readOnly in the Payment Widget" + } + } + }, + "CustomerVendorIbanOrBban" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseCustomerVendorIbanOrBban" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomerVendorIbanOrBban" + } + } + } + }, + "ResponseWrapperAdvancedPaymentWidget" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AdvancedPaymentWidget" + } + } + }, + "ListResponsePaymentWidgetPaymentType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PaymentWidgetPaymentType" + } + } + } + }, + "RegulatoryReportingCode" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperListRegulatoryReportingCode" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/RegulatoryReportingCode" + } + } + } + }, + "ListResponseRegulatoryReportingCode" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RegulatoryReportingCode" + } + } + } + }, + "CreateAndLinkSignatureLineRequest" : { + "type" : "object", + "properties" : { + "documentId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + }, + "role" : { + "type" : "string" + }, + "signerId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + }, + "year" : { + "type" : "integer", + "format" : "int32" + } + }, + "description" : "Request for creating and linking a signature line" + }, + "CaseFileRequest" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string" + }, + "year" : { + "type" : "integer", + "format" : "int32" + } + }, + "description" : "Request for creating a case file" + }, + "AddDocumentRequest" : { + "type" : "object", + "properties" : { + "caseFileId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + }, + "title" : { + "type" : "string" + }, + "pdfBase64" : { + "type" : "string" + } + }, + "description" : "Request for adding a document to a case file" + }, + "PenneoSigningStatus" : { + "type" : "object", + "properties" : { + "signingComplete" : { + "type" : "boolean", + "description" : "Whether the annual accounts signing is complete for this year, based on the backend DB record.", + "readOnly" : true + }, + "signingActivated" : { + "type" : "boolean", + "description" : "Whether a Penneo case file has been created for this year, i.e. the signing process has been activated.", + "readOnly" : true + } + } + }, + "ResponseWrapperPenneoSigningStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PenneoSigningStatus" + } + } + }, + "AddRecipientRequest" : { + "type" : "object", + "properties" : { + "caseFileId" : { + "minimum" : 1, + "type" : "integer", + "description" : "The Penneo case file ID", + "format" : "int64" + }, + "name" : { + "type" : "string", + "description" : "Name of the recipient" + }, + "email" : { + "type" : "string", + "description" : "Email address of the recipient" + }, + "storeAsContact" : { + "type" : "boolean", + "description" : "Whether to store this recipient as a contact for future use", + "default" : false + } + }, + "description" : "Request for adding a copy recipient to a case file" + }, + "UpdateDocumentRequest" : { + "type" : "object", + "properties" : { + "documentId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int64" + }, + "title" : { + "type" : "string" + }, + "pdfBase64" : { + "type" : "string" + } + }, + "description" : "Request for updating an existing document" + }, + "ResponseWrapperMapPilotFeatureBoolean" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + } + } + }, + "PostingRules" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "accountReceivableCustomersId" : { + "$ref" : "#/components/schemas/Account" + }, + "accountDebtVendorsId" : { + "$ref" : "#/components/schemas/Account" + }, + "accountDebtEmployeesAndOwnersId" : { + "$ref" : "#/components/schemas/Account" + }, + "accountRoundDiffId" : { + "$ref" : "#/components/schemas/Account" + }, + "vatPerDepartment" : { + "type" : "boolean", + "description" : "True if VAT postings generated by the system are done per department (when department is available), false if not", + "readOnly" : true + }, + "multipleIndustries" : { + "type" : "boolean", + "description" : "True if multiple industries are enabled, false if not. If enabled, business activity types can be used to separate between different tax categories, and between general and primary VAT reports. This is done by setting a business activity type on the departments, as well as setting a default business activity type.", + "readOnly" : true + }, + "defaultBusinessActivityTypeId" : { + "type" : "integer", + "description" : "The default business activity type for the company. This is used when a department does not have a business activity type set, or no departmentId is given in a Posting.If multiple industries are not enabled, this value is not relevant.", + "format" : "int32", + "readOnly" : true + }, + "accountSubscriptionAccrual" : { + "$ref" : "#/components/schemas/Account" + }, + "accountProductSaleNoVat" : { + "$ref" : "#/components/schemas/Account" + } + } + }, + "ResponseWrapperPostingRules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PostingRules" + } + } + }, + "ExternalProduct" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "elNumber" : { + "type" : "string" + }, + "nrfNumber" : { + "type" : "string" + }, + "costExcludingVatCurrency" : { + "type" : "number", + "description" : "Price purchase (cost) excluding VAT in the product's currency", + "readOnly" : true + }, + "priceExcludingVatCurrency" : { + "type" : "number", + "description" : "Price of purchase excluding VAT in the product's currency" + }, + "priceIncludingVatCurrency" : { + "type" : "number", + "description" : "Price of purchase including VAT in the product's currency" + }, + "isInactive" : { + "type" : "boolean" + }, + "productUnit" : { + "$ref" : "#/components/schemas/ProductUnit" + }, + "isStockItem" : { + "type" : "boolean" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "discountPrice" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperExternalProduct" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ExternalProduct" + } + } + }, + "ListResponseExternalProduct" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ExternalProduct" + } + } + } + }, + "ProductLabelSettings" : { + "type" : "object", + "properties" : { + "showProductNumberSeparately" : { + "type" : "boolean", + "description" : "Show product number in separate row from product name" + }, + "showSellingPriceInclVat" : { + "type" : "boolean", + "description" : "Show selling price including VAT on the label" + } + } + }, + "ResponseWrapperProduct" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Product" + } + } + }, + "ListResponseProduct" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Product" + } + } + } + }, + "ResponseWrapperSupplierProduct" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + }, + "ListResponseSupplierProduct" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierProduct" + } + } + } + }, + "ResponseWrapperDiscountGroup" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DiscountGroup" + } + } + }, + "ListResponseDiscountGroup" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DiscountGroup" + } + } + } + }, + "DiscountPolicy" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "percentage" : { + "type" : "number" + }, + "fixedAmount" : { + "type" : "number" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "productGroup" : { + "$ref" : "#/components/schemas/ProductGroup" + }, + "salesPriceWithDiscount" : { + "type" : "number" + }, + "isPercentage" : { + "type" : "number" + }, + "discountType" : { + "type" : "string", + "enum" : [ "CUSTOMER_DISCOUNT", "PRODUCT_DISCOUNT", "PRODUCT_GROUP_DISCOUNT" ] + } + }, + "readOnly" : true + }, + "ProductGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Product group name" + }, + "displayName" : { + "type" : "string", + "description" : "Product group displayName", + "readOnly" : true + }, + "parentGroup" : { + "$ref" : "#/components/schemas/ProductGroup" + }, + "isDeletable" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperDiscountPolicy" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DiscountPolicy" + } + } + }, + "ListResponseDiscountPolicy" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DiscountPolicy" + } + } + } + }, + "ProductInventoryLocation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "inventory" : { + "$ref" : "#/components/schemas/Inventory" + }, + "inventoryLocation" : { + "$ref" : "#/components/schemas/InventoryLocation" + }, + "isMainLocation" : { + "type" : "boolean" + }, + "isInactive" : { + "type" : "boolean" + }, + "stockOfGoods" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperProductInventoryLocation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductInventoryLocation" + } + } + }, + "ListResponseProductInventoryLocation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductInventoryLocation" + } + } + } + }, + "LogisticsSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "hasWarehouseLocation" : { + "type" : "boolean" + }, + "showOnboardingWizard" : { + "type" : "boolean" + }, + "moduleSuggestedProductNumber" : { + "type" : "boolean" + }, + "suggestedProductNumber" : { + "type" : "string" + }, + "purchaseOrderDefaultComment" : { + "type" : "string" + }, + "rackbeatAgreementNumber" : { + "type" : "string", + "description" : "Agreement number provided to customers using Rackbeat integration", + "readOnly" : true + }, + "moduleBring" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperLogisticsSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LogisticsSettings" + } + } + }, + "ResponseWrapperProductGroup" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductGroup" + } + } + }, + "ListResponseProductGroup" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductGroup" + } + } + } + }, + "ProductGroupRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "productGroup" : { + "$ref" : "#/components/schemas/ProductGroup" + } + }, + "readOnly" : true + }, + "ResponseWrapperProductGroupRelation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductGroupRelation" + } + } + }, + "ListResponseProductGroupRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductGroupRelation" + } + } + } + }, + "ResourceGroupRelation" : { + "type" : "object", + "properties" : { + "resourceIds" : { + "type" : "string" + }, + "resourceProductIds" : { + "type" : "string" + }, + "resourceGroupIds" : { + "type" : "string" + } + } + }, + "ListResponseProductPrice" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductPrice" + } + } + } + }, + "ProductPrice" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "fromDate" : { + "type" : "string" + }, + "toDate" : { + "type" : "string" + }, + "purchasePrice" : { + "type" : "number", + "description" : "Purchase Price excluding VAT" + }, + "purchasePriceCurrency" : { + "type" : "number", + "description" : "Purchase Price (cost) excluding VAT in the product's currency" + }, + "costPrice" : { + "type" : "number", + "description" : "Cost Price" + }, + "salesPriceExcludingVat" : { + "type" : "number", + "description" : "Sales Price excluding VAT" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "salesPriceIncludingVat" : { + "type" : "number", + "description" : "Sales Price including VAT" + }, + "isRoundPriceIncVat" : { + "type" : "boolean", + "description" : "Indicates whether the price incl. VAT is rounded off or not", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ProductSettings" : { + "type" : "object", + "properties" : { + "moduleWarehouse" : { + "type" : "boolean" + }, + "hasWarehouseLocation" : { + "type" : "boolean" + }, + "newCustomerAfterLogisticsRelease" : { + "type" : "boolean", + "readOnly" : true + }, + "productSetCostFromOrderLine" : { + "type" : "boolean" + }, + "purchaseOrderDefaultComment" : { + "type" : "string" + }, + "modulePurchaseOrderNumberSeries" : { + "type" : "boolean" + }, + "purchaseOrderNumberSeries" : { + "type" : "string" + }, + "showOnboardingWizard" : { + "type" : "boolean" + }, + "moduleSuggestedProductNumber" : { + "type" : "boolean" + }, + "suggestedProductNumber" : { + "type" : "string" + }, + "purchaseOrderModule" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperProductSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductSettings" + } + } + }, + "ProductImport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "importFile" : { + "$ref" : "#/components/schemas/Document" + }, + "separator" : { + "type" : "string", + "enum" : [ "NONE", "COMMA", "SEMICOLON" ] + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "status" : { + "type" : "string", + "enum" : [ "FILE_UPLOADED", "FIELDS_MAPPED", "IMPORT_COMPLETED", "IMPORT_ABORTED" ] + }, + "productImportHeaders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductImportHeader" + } + }, + "startDate" : { + "type" : "string" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "countCreated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countUpdated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countIgnored" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + } + }, + "ProductImportField" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "format" : { + "type" : "string", + "readOnly" : true + }, + "isMandatory" : { + "type" : "boolean", + "readOnly" : true + }, + "sequence" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "mandatory" : { + "type" : "boolean", + "writeOnly" : true + } + }, + "readOnly" : true + }, + "ProductImportHeader" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "productImport" : { + "$ref" : "#/components/schemas/ProductImport" + }, + "orderOfColumn" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "sampleValue" : { + "type" : "string" + }, + "suggestedColumnField" : { + "$ref" : "#/components/schemas/ProductImportField" + } + }, + "readOnly" : true + }, + "ResponseWrapperProductImport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductImport" + } + } + }, + "ListResponseProductImport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductImport" + } + } + } + }, + "ListResponseProductImportField" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductImportField" + } + } + } + }, + "ListResponseProductImportHeader" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductImportHeader" + } + } + } + }, + "ListResponseProductImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductImportHeaderFieldsRelation" + } + } + } + }, + "ProductImportHeaderFieldsRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "productImport" : { + "$ref" : "#/components/schemas/ProductImport" + }, + "header" : { + "$ref" : "#/components/schemas/ProductImportHeader" + }, + "field" : { + "$ref" : "#/components/schemas/ProductImportField" + } + }, + "readOnly" : true + }, + "ListResponseProductPotential" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductPotential" + } + } + } + }, + "ProductImportRowErrorMessage" : { + "type" : "object", + "properties" : { + "fieldId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "errorMessage" : { + "type" : "string", + "readOnly" : true + }, + "fieldName" : { + "type" : "string" + } + }, + "description" : "errorMessage" + }, + "ProductPotential" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "productImport" : { + "$ref" : "#/components/schemas/ProductImport" + }, + "rowContent" : { + "$ref" : "#/components/schemas/ProductRowJSON" + }, + "errorMessage" : { + "type" : "array", + "description" : "errorMessage", + "items" : { + "$ref" : "#/components/schemas/ProductImportRowErrorMessage" + } + }, + "rowStatus" : { + "type" : "string", + "enum" : [ "NEW", "UPDATE", "FAIL" ] + } + }, + "readOnly" : true + }, + "ProductRowJSON" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "vatTypeId" : { + "type" : "string" + }, + "vatTypeDisplayName" : { + "type" : "string" + }, + "incomeAccountNumber" : { + "type" : "string" + }, + "incomeAccountDisplayName" : { + "type" : "string" + }, + "isStockItem" : { + "type" : "string" + }, + "isStockItemDisplayName" : { + "type" : "string" + }, + "productUnit" : { + "type" : "string" + }, + "productUnitDisplayName" : { + "type" : "string" + }, + "isInactive" : { + "type" : "string" + }, + "isInactiveDisplayName" : { + "type" : "string" + }, + "eanGtin" : { + "type" : "string" + }, + "purchasePrice" : { + "type" : "string" + }, + "sellingPriceExclVat" : { + "type" : "string" + }, + "sellingPriceInclVat" : { + "type" : "string" + }, + "currencyCode" : { + "type" : "string" + }, + "rowNumber" : { + "type" : "integer", + "format" : "int32" + }, + "departmentNumber" : { + "type" : "string" + }, + "departmentDisplayName" : { + "type" : "string" + }, + "expenses" : { + "type" : "string" + }, + "weight" : { + "type" : "string" + }, + "weightUnit" : { + "type" : "string" + }, + "volume" : { + "type" : "string" + }, + "volumeUnit" : { + "type" : "string" + }, + "stockCount" : { + "type" : "string" + }, + "warehouseNumber" : { + "type" : "string" + }, + "locationNumber" : { + "type" : "string" + }, + "productDescription" : { + "type" : "string" + }, + "orderLineDescription" : { + "type" : "string" + }, + "minStockLevel" : { + "type" : "string" + }, + "hsnCode" : { + "type" : "string" + }, + "inactiveDisplayName" : { + "type" : "string", + "writeOnly" : true + }, + "stockItem" : { + "type" : "string", + "writeOnly" : true + }, + "inactive" : { + "type" : "string", + "writeOnly" : true + } + }, + "description" : "rowContent" + }, + "ResponseWrapperProductUnit" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductUnit" + } + } + }, + "ListResponseProductUnit" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductUnit" + } + } + } + }, + "ProductUnitMaster" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "nameShort" : { + "type" : "string", + "readOnly" : true + }, + "commonCode" : { + "type" : "string", + "readOnly" : true + }, + "peppolName" : { + "type" : "string", + "readOnly" : true + }, + "peppolSymbol" : { + "type" : "string", + "readOnly" : true + }, + "isInactive" : { + "type" : "boolean", + "readOnly" : true + } + }, + "description" : "Product unit", + "readOnly" : true + }, + "ResponseWrapperProductUnitMaster" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProductUnitMaster" + } + } + }, + "ListResponseProductUnitMaster" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProductUnitMaster" + } + } + } + }, + "ActivityProfitabilityDTO" : { + "type" : "object", + "properties" : { + "activityId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "activityName" : { + "type" : "string", + "readOnly" : true + }, + "income" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseActivityProfitabilityDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ActivityProfitabilityDTO" + } + } + } + }, + "EmployeeProfitabilityDTO" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employeeName" : { + "type" : "string", + "readOnly" : true + }, + "income" : { + "type" : "number", + "readOnly" : true + }, + "cost" : { + "type" : "number", + "readOnly" : true + }, + "result" : { + "type" : "number", + "readOnly" : true + }, + "margin" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseEmployeeProfitabilityDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeProfitabilityDTO" + } + } + } + }, + "ListResponseProject" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Project" + } + } + } + }, + "ResponseWrapperProject" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Project" + } + } + }, + "ProjectAccess" : { + "type" : "object", + "properties" : { + "accessOrderLines" : { + "type" : "string", + "enum" : [ "NONE", "READ", "WRITE" ] + }, + "accessHours" : { + "type" : "string", + "enum" : [ "NONE", "READ", "WRITE" ] + }, + "accessAttachments" : { + "type" : "string", + "enum" : [ "NONE", "READ", "WRITE" ] + }, + "accessControlForms" : { + "type" : "string", + "enum" : [ "NONE", "READ", "WRITE" ] + } + } + }, + "ResponseWrapperProjectAccess" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectAccess" + } + } + }, + "ListResponseProjectActionListItemType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MISSING_FIXED_PRICE", "MISSING_FIXED_HOURLY_RATE", "EMPLOYEES_MISSING_HOURLY_RATE", "EMPLOYEES_MISSING_HOURLY_COST", "MISSING_PROJECT_SPECIFIC_RATES", "MISSING_BUDGET", "MISSING_INVOICE_PLAN" ] + } + } + } + }, + "EmployeeMissingHourlyRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "displayName" : { + "type" : "string" + }, + "canSetHourlyRate" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ListResponseEmployeeMissingHourlyRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeMissingHourlyRate" + } + } + } + }, + "CapacityPlanActivity" : { + "type" : "object", + "properties" : { + "activityId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "activityName" : { + "type" : "string", + "readOnly" : true + }, + "employeeEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CapacityPlanEmployee" + } + } + }, + "readOnly" : true + }, + "CapacityPlanBudget" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "projectName" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "periodEnd" : { + "type" : "string", + "readOnly" : true + }, + "periodType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "HOUR", "DAY", "WEEK", "MONTH" ] + }, + "activityEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CapacityPlanActivity" + } + } + } + }, + "CapacityPlanEmployee" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employeeName" : { + "type" : "string", + "readOnly" : true + }, + "budget" : { + "type" : "number", + "readOnly" : true + }, + "remaining" : { + "type" : "number", + "readOnly" : true + }, + "totalHours" : { + "type" : "number", + "readOnly" : true + }, + "totalAllocated" : { + "type" : "number", + "readOnly" : true + }, + "hourEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CapacityPlanHours" + } + } + }, + "readOnly" : true + }, + "CapacityPlanHours" : { + "type" : "object", + "properties" : { + "label" : { + "type" : "string", + "readOnly" : true + }, + "allocatedHours" : { + "type" : "number", + "readOnly" : true + }, + "workedHours" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperCapacityPlanBudget" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CapacityPlanBudget" + } + } + }, + "ResourcePlanActivity" : { + "type" : "object", + "properties" : { + "activityId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "activityName" : { + "type" : "string", + "readOnly" : true + }, + "employeeEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResourcePlanEmployee" + } + } + }, + "readOnly" : true + }, + "ResourcePlanBudget" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "projectName" : { + "type" : "string", + "readOnly" : true + }, + "periodStart" : { + "type" : "string", + "readOnly" : true + }, + "periodEnd" : { + "type" : "string", + "readOnly" : true + }, + "periodType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "HOUR", "DAY", "WEEK", "MONTH" ] + }, + "activityEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResourcePlanActivity" + } + } + } + }, + "ResourcePlanEmployee" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employeeName" : { + "type" : "string", + "readOnly" : true + }, + "budget" : { + "type" : "number", + "readOnly" : true + }, + "remaining" : { + "type" : "number", + "readOnly" : true + }, + "totalHours" : { + "type" : "number", + "readOnly" : true + }, + "totalAllocated" : { + "type" : "number", + "readOnly" : true + }, + "hoursEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CapacityPlanHours" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperResourcePlanBudget" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ResourcePlanBudget" + } + } + }, + "ResponseWrapperProjectCategory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectCategory" + } + } + }, + "ListResponseProjectCategory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectCategory" + } + } + } + }, + "DynamicControlForm" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "originalTemplate" : { + "$ref" : "#/components/schemas/DynamicControlFormTemplate" + }, + "isCompleted" : { + "type" : "boolean" + }, + "isSigned" : { + "type" : "boolean", + "readOnly" : true + }, + "documentId" : { + "type" : "integer", + "format" : "int64" + }, + "addToInvoice" : { + "type" : "integer", + "format" : "int32" + }, + "fieldValues" : { + "type" : "object", + "properties" : { + "empty" : { + "type" : "boolean" + } + }, + "additionalProperties" : { + "$ref" : "#/components/schemas/ObjectNode" + } + }, + "isSentToBoligmappa" : { + "type" : "boolean", + "readOnly" : true + }, + "lastSentToBoligmappaDate" : { + "type" : "string" + }, + "isInvoiced" : { + "type" : "boolean", + "readOnly" : true + }, + "connectedInvoices" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Invoice" + } + }, + "isSentWithEmail" : { + "type" : "boolean", + "readOnly" : true + }, + "lastSentWithEmailDate" : { + "type" : "string" + }, + "isSignedSamsvarserklaeringLocked" : { + "type" : "boolean", + "readOnly" : true + }, + "guid" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "DynamicControlFormTemplate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "formVersion" : { + "type" : "string" + }, + "typeNumber" : { + "type" : "integer", + "format" : "int32" + }, + "previousTemplateId" : { + "type" : "integer", + "format" : "int64" + }, + "rootTemplateId" : { + "type" : "integer", + "format" : "int64" + }, + "isArchived" : { + "type" : "boolean" + }, + "isGlobal" : { + "type" : "boolean", + "readOnly" : true + }, + "isNelfo" : { + "type" : "boolean" + }, + "nhoVersion" : { + "type" : "string" + }, + "signatureRequired" : { + "type" : "boolean", + "readOnly" : true + }, + "fields" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DynamicFormField" + } + } + }, + "readOnly" : true + }, + "DynamicFormField" : { + "type" : "object", + "properties" : { + "index" : { + "type" : "string" + }, + "tag" : { + "type" : "string" + }, + "type" : { + "type" : "string" + } + }, + "discriminator" : { + "propertyName" : "type" + } + }, + "FieldValues" : { + "type" : "object", + "properties" : { + "empty" : { + "type" : "boolean" + } + }, + "additionalProperties" : { + "$ref" : "#/components/schemas/ObjectNode" + } + }, + "ObjectNode" : { + "type" : "object" + }, + "ResponseWrapperDynamicControlForm" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DynamicControlForm" + } + } + }, + "ListResponseDynamicControlForm" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DynamicControlForm" + } + } + } + }, + "SendFormEmail" : { + "type" : "object", + "properties" : { + "ids" : { + "type" : "array", + "description" : "The IDs of the forms to send.", + "items" : { + "type" : "integer", + "description" : "The IDs of the forms to send.", + "format" : "int64" + } + }, + "mergeAttachments" : { + "type" : "boolean", + "description" : "If true, the attachments will be merged into one PDF file before sending the email." + }, + "emailAddress" : { + "type" : "string", + "description" : "The email address to send the form to. This can be one or more emails separated by a comma." + }, + "message" : { + "type" : "string", + "description" : "The message to include in the email." + } + } + }, + "ResponseWrapperDynamicControlFormTemplate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DynamicControlFormTemplate" + } + } + }, + "CompanyFormsStatus" : { + "type" : "object", + "properties" : { + "enabled" : { + "type" : "boolean", + "description" : "If true, the feature is enabled.", + "readOnly" : true + }, + "hasAccess" : { + "type" : "boolean", + "description" : "If true, company forms can be accessed when enabled.", + "readOnly" : true + } + } + }, + "ResponseWrapperCompanyFormsStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyFormsStatus" + } + } + }, + "ListResponseDynamicControlFormTemplate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DynamicControlFormTemplate" + } + } + } + }, + "ListResponseProjectManager" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectManager" + } + } + } + }, + "ProjectManager" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "description" : "The employeeId of the employee to be added as a project manager", + "format" : "int64" + }, + "displayName" : { + "type" : "string", + "description" : "The display name of the employee that can be project manager" + }, + "canInvoice" : { + "type" : "boolean", + "description" : "Specifies whether the employee can invoice" + } + } + }, + "ResponseWrapperProjectOrderLine" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectOrderLine" + } + } + }, + "ListResponseProjectOrderLine" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectOrderLine" + } + } + } + }, + "ListResponseProjectOverviewAggregate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectOverviewAggregate" + } + } + } + }, + "ProjectOverviewAggregate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "isReadyForInvoicing" : { + "type" : "boolean" + }, + "hasInvoiceReserve" : { + "type" : "boolean" + }, + "isClosed" : { + "type" : "boolean" + }, + "isFixedPrice" : { + "type" : "boolean" + }, + "isInternal" : { + "type" : "boolean" + }, + "currencyCode" : { + "type" : "string" + }, + "isCompanyCurrency" : { + "type" : "boolean" + }, + "isAuthProjectOverviewContractType" : { + "type" : "boolean" + }, + "projectManager" : { + "$ref" : "#/components/schemas/Employee" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "mainProject" : { + "$ref" : "#/components/schemas/Project" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "projectCategory" : { + "$ref" : "#/components/schemas/ProjectCategory" + }, + "plannedBudget" : { + "type" : "number" + }, + "completedBudget" : { + "type" : "number" + }, + "accessType" : { + "type" : "string", + "description" : "READ/WRITE access on project", + "enum" : [ "NONE", "READ", "WRITE" ] + }, + "invoiceReserveTotalAmountCurrency" : { + "type" : "number" + }, + "invoiceAkontoReserveAmountCurrency" : { + "type" : "number" + }, + "invoiceExtracostsReserveCurrency" : { + "type" : "number" + }, + "invoiceFeeReserveCurrency" : { + "type" : "number" + }, + "hoursToApprove" : { + "type" : "number" + }, + "invoicesToApprove" : { + "type" : "number" + }, + "expensesToApprove" : { + "type" : "number" + }, + "vouchersToApprove" : { + "type" : "number" + }, + "isProjectAttestor" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ResponseWrapperProjectParticipant" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectParticipant" + } + } + }, + "ListResponseProjectParticipant" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectParticipant" + } + } + } + }, + "ListResponseProjectBudgetStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectBudgetStatus" + } + } + } + }, + "ProjectBudgetStatus" : { + "type" : "object", + "properties" : { + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "totalTotalIncomeCurrency" : { + "type" : "number", + "readOnly" : true + }, + "budgetTotalIncomeCurrency" : { + "type" : "number", + "readOnly" : true + }, + "budgetTotalCostCurrency" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ListResponseProjectPeriodInvoicingReserve" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectPeriodInvoicingReserve" + } + } + } + }, + "ProjectPeriodInvoicingReserve" : { + "type" : "object", + "properties" : { + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "invoiceFeeReserveCurrency" : { + "type" : "number", + "readOnly" : true + }, + "periodOrderLinesIncomeCurrency" : { + "type" : "number", + "readOnly" : true + }, + "invoiceExtracostsReserveCurrency" : { + "type" : "number", + "readOnly" : true + }, + "invoiceAkontoReserveAmountCurrency" : { + "type" : "number", + "readOnly" : true + }, + "invoiceReserveTotalAmountCurrency" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectBudgetStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectBudgetStatus" + } + } + }, + "ProjectPeriodHourlyReport" : { + "type" : "object", + "properties" : { + "chargeableHours" : { + "type" : "number", + "readOnly" : true + }, + "nonChargeableHours" : { + "type" : "number", + "readOnly" : true + }, + "approvedButUnchargedHours" : { + "type" : "number", + "readOnly" : true + }, + "nonApprovedHours" : { + "type" : "number", + "readOnly" : true + }, + "registeredHours" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectPeriodHourlyReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectPeriodHourlyReport" + } + } + }, + "ProjectPeriodInvoiced" : { + "type" : "object", + "properties" : { + "sumAmountPaid" : { + "type" : "number", + "readOnly" : true + }, + "sumAmountOutstanding" : { + "type" : "number", + "readOnly" : true + }, + "sumAmountDue" : { + "type" : "number", + "readOnly" : true + }, + "sumAmountDueOutstanding" : { + "type" : "number", + "readOnly" : true + }, + "sumAmount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectPeriodInvoiced" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectPeriodInvoiced" + } + } + }, + "ResponseWrapperProjectPeriodInvoicingReserve" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectPeriodInvoicingReserve" + } + } + }, + "ListResponseProjectPeriodMonthlyStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectPeriodMonthlyStatus" + } + } + } + }, + "ProjectPeriodMonthlyStatus" : { + "type" : "object", + "properties" : { + "income" : { + "type" : "number", + "readOnly" : true + }, + "costs" : { + "type" : "number", + "readOnly" : true + }, + "dateFrom" : { + "type" : "string", + "readOnly" : true + }, + "dateTo" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ProjectPeriodOverallStatus" : { + "type" : "object", + "properties" : { + "income" : { + "type" : "number", + "readOnly" : true + }, + "costs" : { + "type" : "number", + "readOnly" : true + }, + "totalFeeCurrency" : { + "type" : "number", + "description" : "Income component: fee earned from hours worked", + "readOnly" : true + }, + "totalHourCostCurrency" : { + "type" : "number", + "description" : "Cost component: internal cost of hours worked", + "readOnly" : true + }, + "totalTravelExpensesCurrency" : { + "type" : "number", + "description" : "Cost component: travel and expense costs", + "readOnly" : true + }, + "totalTravelIncomeCurrency" : { + "type" : "number", + "description" : "Income component: chargeable travel and expense income", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectPeriodOverallStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectPeriodOverallStatus" + } + } + }, + "ResponseWrapperProjectActivity" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectActivity" + } + } + }, + "ProjectControlForm" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "completed" : { + "type" : "boolean" + }, + "signatureRequired" : { + "type" : "boolean", + "readOnly" : true + }, + "signed" : { + "type" : "boolean", + "readOnly" : true + }, + "controlForm" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperProjectControlForm" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectControlForm" + } + } + }, + "ListResponseProjectControlForm" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectControlForm" + } + } + } + }, + "ProjectControlFormType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + } + }, + "description" : "Control forms required for hour tracking" + }, + "ResponseWrapperProjectControlFormType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectControlFormType" + } + } + }, + "ListResponseProjectControlFormType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectControlFormType" + } + } + } + }, + "ListResponseProjectHourlyRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + } + } + }, + "ResponseWrapperProjectHourlyRate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectHourlyRate" + } + } + }, + "HourlyRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "startDate" : { + "type" : "string" + }, + "hourlyRateModel" : { + "type" : "string", + "description" : "Defines the model used for the hourly rate.", + "enum" : [ "TYPE_PREDEFINED_HOURLY_RATES", "TYPE_PROJECT_SPECIFIC_HOURLY_RATES", "TYPE_FIXED_HOURLY_RATE" ] + }, + "projectSpecificRates" : { + "type" : "array", + "description" : "Project specific rates if hourlyRateModel is TYPE_PROJECT_SPECIFIC_HOURLY_RATES. ", + "items" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + }, + "fixedRate" : { + "type" : "number", + "description" : "Fixed Hourly rates if hourlyRateModel is TYPE_FIXED_HOURLY_RATE." + } + } + }, + "ResponseWrapperProjectSpecificRate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + } + }, + "ListResponseProjectSpecificRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectSpecificRate" + } + } + } + }, + "ProjectActivities" : { + "type" : "object", + "properties" : { + "showIncome" : { + "type" : "boolean", + "description" : "Whether income columns are shown", + "readOnly" : true + }, + "fixedPrice" : { + "type" : "boolean", + "description" : "Whether project is fixed price", + "readOnly" : true + }, + "showHourCost" : { + "type" : "boolean", + "description" : "Whether hour cost columns are shown", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "description" : "Project currency code", + "readOnly" : true + }, + "activities" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectStatusActivity" + } + }, + "summary" : { + "$ref" : "#/components/schemas/ProjectActivitySummary" + } + } + }, + "ProjectActivitySummary" : { + "type" : "object", + "properties" : { + "sumActivityBudgetHours" : { + "type" : "number", + "description" : "Sum of activity budget hours", + "readOnly" : true + }, + "sumActivityBudgetFeeRateCurrency" : { + "type" : "number", + "description" : "Average/derived activity budget fee rate", + "readOnly" : true + }, + "sumActivityBudgetFeeCurrency" : { + "type" : "number", + "description" : "Sum of activity budget fee", + "readOnly" : true + }, + "sumActivityPeriodHours" : { + "type" : "number", + "description" : "Sum of period hours", + "readOnly" : true + }, + "sumActivityPeriodFeeCurrency" : { + "type" : "number", + "description" : "Sum of period fee", + "readOnly" : true + }, + "sumActivityPeriodHourCostCurrency" : { + "type" : "number", + "description" : "Sum of period hour cost", + "readOnly" : true + }, + "sumActivityPeriodNetFeeCurrency" : { + "type" : "number", + "description" : "Sum of period net fee", + "readOnly" : true + }, + "sumActivityTotalHours" : { + "type" : "number", + "description" : "Sum of total hours", + "readOnly" : true + }, + "sumActivityTotalFeeCurrency" : { + "type" : "number", + "description" : "Sum of total fee", + "readOnly" : true + }, + "sumActivityTotalHourCostCurrency" : { + "type" : "number", + "description" : "Sum of total hour cost", + "readOnly" : true + }, + "sumActivityTotalNetFeeCurrency" : { + "type" : "number", + "description" : "Sum of total net fee", + "readOnly" : true + }, + "sumActivityLeftHours" : { + "type" : "number", + "description" : "Sum of left hours", + "readOnly" : true + }, + "sumActivityLeftFeeCurrency" : { + "type" : "number", + "description" : "Sum of left fee", + "readOnly" : true + } + }, + "description" : "Summary aggregation over all activities", + "readOnly" : true + }, + "ProjectStatusActivity" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Activity id", + "format" : "int64", + "readOnly" : true + }, + "nameAndNumber" : { + "type" : "string", + "description" : "Activity name and number", + "readOnly" : true + }, + "general" : { + "type" : "boolean", + "description" : "Whether the activity is a general activity", + "readOnly" : true + }, + "chargeable" : { + "type" : "boolean", + "description" : "Whether the activity is chargeable", + "readOnly" : true + }, + "closed" : { + "type" : "boolean", + "description" : "Whether the activity is closed", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "description" : "Start date (inclusive)", + "format" : "date", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "End date (exclusive domain)", + "format" : "date", + "readOnly" : true + }, + "budgetHours" : { + "type" : "number", + "description" : "Budgeted hours", + "readOnly" : true + }, + "budgetFeeRateCurrency" : { + "type" : "number", + "description" : "Budget fee hourly rate", + "readOnly" : true + }, + "budgetFeeCurrency" : { + "type" : "number", + "description" : "Budget fee amount", + "readOnly" : true + }, + "periodHours" : { + "type" : "number", + "description" : "Hours in selected period", + "readOnly" : true + }, + "periodFeeCurrency" : { + "type" : "number", + "description" : "Fee in selected period", + "readOnly" : true + }, + "periodHourCostCurrency" : { + "type" : "number", + "description" : "Hour cost in selected period", + "readOnly" : true + }, + "periodNetFeeCurrency" : { + "type" : "number", + "description" : "Net fee (fee - cost) in selected period", + "readOnly" : true + }, + "totalHours" : { + "type" : "number", + "description" : "Total hours to date", + "readOnly" : true + }, + "totalFeeCurrency" : { + "type" : "number", + "description" : "Total fee to date", + "readOnly" : true + }, + "totalHourCostCurrency" : { + "type" : "number", + "description" : "Total hour cost to date", + "readOnly" : true + }, + "totalNetFeeCurrency" : { + "type" : "number", + "description" : "Total net fee to date", + "readOnly" : true + }, + "leftHours" : { + "type" : "number", + "description" : "Remaining hours (ETC)", + "readOnly" : true + }, + "leftFeeCurrency" : { + "type" : "number", + "description" : "Remaining fee", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectActivities" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectActivities" + } + } + }, + "Budget" : { + "type" : "object", + "properties" : { + "showIncome" : { + "type" : "boolean", + "description" : "Indicates if income should be shown in the budget", + "readOnly" : true + }, + "budgetItems" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BudgetItem" + } + }, + "noBudgetItem" : { + "$ref" : "#/components/schemas/BudgetItem" + }, + "summary" : { + "$ref" : "#/components/schemas/BudgetSummary" + }, + "currencyCode" : { + "type" : "string", + "description" : "Currency code for the budget amounts", + "readOnly" : true + } + } + }, + "BudgetItem" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "description" : "The display name of the budget item", + "readOnly" : true + }, + "budgetIncome" : { + "type" : "number", + "description" : "The budgeted income amount", + "readOnly" : true + }, + "totalIncome" : { + "type" : "number", + "description" : "The total income amount", + "readOnly" : true + }, + "deviationIncome" : { + "type" : "number", + "description" : "The deviation of income from the budget", + "readOnly" : true + }, + "budgetCost" : { + "type" : "number", + "description" : "The budgeted cost amount", + "readOnly" : true + }, + "totalExpenses" : { + "type" : "number", + "description" : "The total expenses amount", + "readOnly" : true + }, + "deviationExpenses" : { + "type" : "number", + "description" : "The deviation of expenses from the budget", + "readOnly" : true + }, + "budgetNetAmount" : { + "type" : "number", + "description" : "The budgeted net amount (income - cost)", + "readOnly" : true + }, + "totalNetAmount" : { + "type" : "number", + "description" : "The total net amount (total income - total expenses)", + "readOnly" : true + }, + "deviationNetAmount" : { + "type" : "number", + "description" : "The deviation of net amount from the budget", + "readOnly" : true + } + }, + "description" : "Budget item representing the 'No Budget' category", + "readOnly" : true + }, + "BudgetSummary" : { + "type" : "object", + "properties" : { + "sumBudgetIncome" : { + "type" : "number", + "description" : "Total budgeted income amount", + "readOnly" : true + }, + "sumTotalIncome" : { + "type" : "number", + "description" : "Total income amount", + "readOnly" : true + }, + "sumDeviationIncome" : { + "type" : "number", + "description" : "Deviation of income from the budget", + "readOnly" : true + }, + "sumBudgetCost" : { + "type" : "number", + "description" : "Total budgeted cost amount", + "readOnly" : true + }, + "sumTotalExpenses" : { + "type" : "number", + "description" : "Total expenses amount", + "readOnly" : true + }, + "sumDeviationExpenses" : { + "type" : "number", + "description" : "Deviation of expenses from the budget", + "readOnly" : true + }, + "sumBudgetNetAmount" : { + "type" : "number", + "description" : "Total budgeted net amount (income - cost)", + "readOnly" : true + }, + "sumTotalNetAmount" : { + "type" : "number", + "description" : "Total net amount (total income - total expenses)", + "readOnly" : true + }, + "sumDeviationNetAmount" : { + "type" : "number", + "description" : "Deviation of net amount from the budget", + "readOnly" : true + } + }, + "description" : "Summary row for the budget", + "readOnly" : true + }, + "ResponseWrapperBudget" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Budget" + } + } + }, + "ProjectStatusCost" : { + "type" : "object", + "properties" : { + "currencyCode" : { + "type" : "string", + "description" : "Currency code representing the cost's currency", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "The date of the cost", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Description of the cost", + "readOnly" : true + }, + "cost" : { + "type" : "number", + "description" : "The cost amount", + "readOnly" : true + }, + "costType" : { + "type" : "string", + "description" : "The type of costs", + "readOnly" : true, + "enum" : [ "ORDERLINE", "TRAVEL_REPORT_OR_EMPLOYEE_EXPENSE", "SUBORDER", "PURCHASE_ORDER" ] + }, + "income" : { + "type" : "number", + "description" : "The income amount", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "description" : "The invoice number associated with this cost", + "readOnly" : true + }, + "invoiceId" : { + "type" : "integer", + "description" : "The invoice ID associated with this cost", + "format" : "int64", + "readOnly" : true + }, + "vendorId" : { + "type" : "integer", + "description" : "The vendor ID for the purchase", + "format" : "int64", + "readOnly" : true + }, + "vendorName" : { + "type" : "string", + "description" : "The vendor name for the purchase", + "readOnly" : true + }, + "orderOutId" : { + "type" : "integer", + "description" : "The out order ID of the purchase ", + "format" : "int64", + "readOnly" : true + }, + "orderLineNumber" : { + "type" : "string", + "description" : "The order number for the suborders", + "readOnly" : true + }, + "orderId" : { + "type" : "integer", + "description" : "The order ID for the suborders", + "format" : "int64", + "readOnly" : true + }, + "travelReportId" : { + "type" : "integer", + "description" : "The ID of the travel report", + "format" : "int64", + "readOnly" : true + } + }, + "description" : "All costs associated with the project", + "readOnly" : true + }, + "ProjectStatusCostOverview" : { + "type" : "object", + "properties" : { + "costs" : { + "type" : "array", + "description" : "All costs associated with the project", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectStatusCost" + } + }, + "totalIncome" : { + "type" : "number", + "description" : "Total income for the project in its currency", + "readOnly" : true + }, + "totalCost" : { + "type" : "number", + "description" : "The total cost amount for the project in its currency", + "readOnly" : true + }, + "showIncome" : { + "type" : "boolean", + "description" : "Flag indicating if income should be visible among costs", + "readOnly" : true + }, + "multipleCurrencies" : { + "type" : "boolean", + "description" : "Flag indicating whether associated costs use different currencies", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectStatusCostOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectStatusCostOverview" + } + } + }, + "EmployeeMissingHourlyCost" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "displayName" : { + "type" : "string" + }, + "canSetHourlyCost" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ListResponseEmployeeMissingHourlyCost" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeMissingHourlyCost" + } + } + } + }, + "ActivityHoursStatus" : { + "type" : "object", + "properties" : { + "activity" : { + "$ref" : "#/components/schemas/Activity" + }, + "employees" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EmployeeHoursStatus" + } + }, + "budgetHours" : { + "type" : "number", + "readOnly" : true + }, + "totalHours" : { + "type" : "number", + "readOnly" : true + }, + "remainingHours" : { + "type" : "number", + "readOnly" : true + }, + "forecastHours" : { + "type" : "number", + "readOnly" : true + }, + "deviationHours" : { + "type" : "number", + "readOnly" : true + }, + "deviationHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "sumEmployeeBudgetHours" : { + "type" : "number", + "readOnly" : true + }, + "sumEmployeeBudgetHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "sumEmployeeTotalHours" : { + "type" : "number", + "readOnly" : true + }, + "sumEmployeeRemainingHours" : { + "type" : "number", + "readOnly" : true + }, + "sumEmployeeRemainingHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "sumEmployeeForecastHours" : { + "type" : "number", + "readOnly" : true + }, + "sumEmployeeForecastHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "sumEmployeeDeviationHours" : { + "type" : "number", + "readOnly" : true + }, + "sumEmployeeDeviationHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Activities " + }, + "EmployeeHoursStatus" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "budgetHours" : { + "type" : "number", + "readOnly" : true + }, + "totalHours" : { + "type" : "number", + "readOnly" : true + }, + "remainingHours" : { + "type" : "number", + "readOnly" : true + }, + "forecastHours" : { + "type" : "number", + "readOnly" : true + }, + "deviationHours" : { + "type" : "number", + "readOnly" : true + }, + "deviationHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ProjectHoursStatus" : { + "type" : "object", + "properties" : { + "activityBudgetHours" : { + "type" : "number", + "readOnly" : true + }, + "activityBudgetHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "activityTotalHours" : { + "type" : "number", + "readOnly" : true + }, + "activityRemainingHours" : { + "type" : "number", + "readOnly" : true + }, + "activityForecastHours" : { + "type" : "number", + "readOnly" : true + }, + "activityDeviationHours" : { + "type" : "number", + "readOnly" : true + }, + "activityDeviationHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "employeeBudgetHours" : { + "type" : "number", + "readOnly" : true + }, + "employeeTotalHours" : { + "type" : "number", + "readOnly" : true + }, + "employeeRemainingHours" : { + "type" : "number", + "readOnly" : true + }, + "employeeForecastHours" : { + "type" : "number", + "readOnly" : true + }, + "employeeDeviationHours" : { + "type" : "number", + "readOnly" : true + }, + "employeeDeviationHoursValidationMessage" : { + "type" : "string", + "readOnly" : true + }, + "projectRemainingHours" : { + "type" : "number", + "readOnly" : true + }, + "activities" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ActivityHoursStatus" + } + } + } + }, + "ResponseWrapperProjectHoursStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectHoursStatus" + } + } + }, + "InvoiceReserve" : { + "type" : "object", + "properties" : { + "invoiceAkontoReserveAmountCurrency" : { + "type" : "number", + "description" : "The total amount reserved for akonto invoices in the project", + "readOnly" : true + }, + "invoiceExtracostsReserveCurrency" : { + "type" : "number", + "description" : "The total amount reserved for extra costs in the project", + "readOnly" : true + }, + "invoiceFeeReserveCurrency" : { + "type" : "number", + "description" : "The total amount reserved for fees in the project", + "readOnly" : true + }, + "invoiceReserveTotalAmountCurrency" : { + "type" : "number", + "description" : "The total amount reserved for the project in the specified currency", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "description" : "The currency code for the reserved amounts", + "readOnly" : true + } + } + }, + "ResponseWrapperInvoiceReserve" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceReserve" + } + } + }, + "ProjectInvoice" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "readOnly" : true + }, + "amountAkontoCurrency" : { + "type" : "number", + "readOnly" : true + }, + "amountFeeCurrency" : { + "type" : "number", + "readOnly" : true + }, + "amountExpensesCurrency" : { + "type" : "number", + "readOnly" : true + }, + "amountExVatCurrency" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Charged invoices for project", + "readOnly" : true + }, + "ProjectStatusInvoice" : { + "type" : "object", + "properties" : { + "invoices" : { + "type" : "array", + "description" : "Charged invoices for project", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectInvoice" + } + }, + "totalInvoicedAkontoAmountAbsoluteCurrency" : { + "type" : "number", + "readOnly" : true + }, + "totalInvoicedFeeAbsoluteCurrency" : { + "type" : "number", + "readOnly" : true + }, + "invoicedAmountExpensesCurrency" : { + "type" : "number", + "readOnly" : true + }, + "invoicedAmountExVatCurrency" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectStatusInvoice" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectStatusInvoice" + } + } + }, + "ProjectOverallStatus" : { + "type" : "object", + "properties" : { + "hours" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/ProjectStatusHoursData" + } + }, + "other" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/ProjectStatusOtherData" + } + }, + "total" : { + "type" : "object", + "additionalProperties" : { + "$ref" : "#/components/schemas/ProjectStatusTotalData" + } + }, + "remainingFeePerHour" : { + "type" : "number" + }, + "remainingCostPerHour" : { + "type" : "number" + }, + "remainingHours" : { + "type" : "number" + } + } + }, + "ProjectStatusHoursData" : { + "type" : "object", + "properties" : { + "hours" : { + "type" : "number" + }, + "referenceFee" : { + "type" : "number" + }, + "fee" : { + "type" : "number" + }, + "feePerHour" : { + "type" : "number" + }, + "cost" : { + "type" : "number" + }, + "costPerHour" : { + "type" : "number" + }, + "net" : { + "type" : "number" + }, + "netPerHour" : { + "type" : "number" + } + } + }, + "ProjectStatusOtherData" : { + "type" : "object", + "properties" : { + "income" : { + "type" : "number" + }, + "cost" : { + "type" : "number" + }, + "net" : { + "type" : "number" + } + } + }, + "ProjectStatusTotalData" : { + "type" : "object", + "properties" : { + "income" : { + "type" : "number" + }, + "incomePerHour" : { + "type" : "number" + }, + "cost" : { + "type" : "number" + }, + "costPerHour" : { + "type" : "number" + }, + "net" : { + "type" : "number" + }, + "netPerHour" : { + "type" : "number" + }, + "coverageRate" : { + "type" : "number" + } + } + }, + "ResponseWrapperProjectOverallStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectOverallStatus" + } + } + }, + "ProjectOverallStatusPermissions" : { + "type" : "object", + "properties" : { + "hasBudgetAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasProjectForecastAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasReferenceFeeAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasIncomeAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasHourCostAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasLeftHoursWriteAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasLeftFeeRateWriteAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "hasLeftHourCostRateWriteAccess" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectOverallStatusPermissions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectOverallStatusPermissions" + } + } + }, + "ProjectOverallForecast" : { + "type" : "object", + "properties" : { + "originalHours" : { + "type" : "number" + }, + "originalFeePerHour" : { + "type" : "number" + }, + "originalCostPerHour" : { + "type" : "number" + }, + "hours" : { + "type" : "number" + }, + "feePerHour" : { + "type" : "number" + }, + "costPerHour" : { + "type" : "number" + } + } + }, + "ResponseWrapperProjectOverallForecast" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectOverallForecast" + } + } + }, + "ListResponseProjectSubContractStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectSubContractStatus" + } + } + } + }, + "ProjectSubContract" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "budgetFeeCurrency" : { + "type" : "number" + }, + "budgetExpensesCurrency" : { + "type" : "number" + }, + "budgetIncomeCurrency" : { + "type" : "number" + }, + "budgetNetAmountCurrency" : { + "type" : "number" + }, + "displayName" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ProjectSubContractPeriod" : { + "type" : "object", + "properties" : { + "totalIncomeCurrency" : { + "type" : "number" + }, + "totalFeeCurrency" : { + "type" : "number" + }, + "totalExpensesCurrency" : { + "type" : "number" + }, + "totalNetAmountCurrency" : { + "type" : "number" + } + }, + "description" : "ProjectSubContractPeriod", + "readOnly" : true + }, + "ProjectSubContractStatus" : { + "type" : "object", + "properties" : { + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "projectSubContract" : { + "$ref" : "#/components/schemas/ProjectSubContract" + }, + "projectSubContractPeriod" : { + "$ref" : "#/components/schemas/ProjectSubContractPeriod" + } + }, + "readOnly" : true + }, + "ResponseWrapperProjectStatusActivity" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectStatusActivity" + } + } + }, + "ProjectActivityUpdate" : { + "type" : "object", + "properties" : { + "closed" : { + "type" : "boolean", + "description" : "Closed state of the activity (true=closed, false=open)" + }, + "endDate" : { + "type" : "string", + "description" : "End date (exclusive in domain). If empty string we set the end date to null", + "format" : "date", + "nullable" : true + } + } + }, + "ProjectHoursForecast" : { + "type" : "object", + "properties" : { + "forecastHoursByActivity" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "readOnly" : true + }, + "readOnly" : true + }, + "forecastProject" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperProjectSubContract" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectSubContract" + } + } + }, + "ListResponseProjectSubContract" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectSubContract" + } + } + } + }, + "RecurringOrder" : { + "type" : "object", + "properties" : { + "recurringOrderConfig" : { + "$ref" : "#/components/schemas/RecurringOrderConfig" + }, + "order" : { + "$ref" : "#/components/schemas/Order" + }, + "recurringOrderLines" : { + "type" : "array", + "description" : "Ungrouped recurring order lines.", + "items" : { + "$ref" : "#/components/schemas/RecurringOrderLine" + } + }, + "recurringOrderGroups" : { + "type" : "array", + "description" : "Grouped recurring order lines.", + "items" : { + "$ref" : "#/components/schemas/RecurringOrderGroup" + } + }, + "invoiceHistory" : { + "type" : "array", + "description" : "Invoice history for this recurring order, most recent first.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RecurringOrderInvoiceHistory" + } + } + } + }, + "RecurringOrderConfig" : { + "type" : "object", + "properties" : { + "autoInvoicing" : { + "type" : "boolean", + "readOnly" : true + }, + "invoicingRecurringInterval" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MONTHLY", "BIMONTHLY", "QUARTERLY", "BIANNUALLY", "YEARLY", "UNKNOWN" ] + }, + "invoicingTimeType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ADVANCE", "ARREARS" ] + }, + "invoicingTimeCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "invoicingTimeUnit" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MONTHS", "DAYS" ] + }, + "fixedDayOfMonth" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "readOnly" : true + }, + "billingPeriodDate" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "The recurring order configuration." + }, + "RecurringOrderGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "The id of the underlying OrderGroup entity.", + "format" : "int64", + "readOnly" : true + }, + "title" : { + "type" : "string", + "description" : "Title of the order group.", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "description" : "Comment for the order group.", + "readOnly" : true + }, + "sortIndex" : { + "minimum" : 0, + "type" : "integer", + "description" : "Defines the presentation order of the orderGroups. Does not need to be, and is often not continuous. Only applicable if parent order has orderLineSorting as CUSTOM.", + "format" : "int32", + "readOnly" : true + }, + "recurringOrderLines" : { + "type" : "array", + "description" : "Recurring order lines belonging to this group, each with independent billing metadata.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RecurringOrderLine" + } + } + }, + "description" : "Grouped recurring order lines." + }, + "RecurringOrderInvoiceHistory" : { + "type" : "object", + "properties" : { + "fromDate" : { + "type" : "string", + "description" : "Start date of the billing period this invoice covers.", + "readOnly" : true + }, + "toDate" : { + "type" : "string", + "description" : "End date of the billing period this invoice covers.", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "Invoicing status for this billing period.", + "enum" : [ "SENT", "SENDING_FAILED", "SENT_EXCLUDED", "NEXT" ] + }, + "amount" : { + "type" : "number", + "description" : "Invoice total including VAT in the invoice's currency.", + "readOnly" : true + }, + "sendingDate" : { + "type" : "string", + "description" : "Date the invoice was sent to the customer.", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "integer", + "description" : "Invoice number.", + "format" : "int32", + "readOnly" : true + }, + "invoiceDetailsUrl" : { + "type" : "string", + "description" : "URL to the invoice details page." + } + }, + "description" : "Invoice history for this recurring order, most recent first.", + "readOnly" : true + }, + "RecurringOrderLine" : { + "type" : "object", + "properties" : { + "orderLine" : { + "$ref" : "#/components/schemas/OrderLine" + }, + "startBillingDate" : { + "type" : "string", + "readOnly" : true + }, + "endBillingDate" : { + "type" : "string", + "readOnly" : true + }, + "exceptions" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "Whether the line is still being invoiced (ACTIVE) or has completed its billing cycle (COMPLETED).", + "readOnly" : true, + "enum" : [ "ACTIVE", "COMPLETED" ] + }, + "hasBeenInvoiced" : { + "type" : "boolean", + "description" : "True once the line has appeared on at least one charged invoice. Locks all fields except endBillingDate.", + "readOnly" : true + } + }, + "description" : "Recurring order lines belonging to this group, each with independent billing metadata.", + "readOnly" : true + }, + "ResponseWrapperRecurringOrder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RecurringOrder" + } + } + }, + "RecurringOrderConfigWrite" : { + "type" : "object", + "properties" : { + "startDate" : { + "type" : "string", + "description" : "Start date for recurring invoicing." + }, + "invoicingRecurringInterval" : { + "type" : "string", + "description" : "How often the invoice should be repeated.", + "enum" : [ "MONTHLY", "BIMONTHLY", "QUARTERLY", "BIANNUALLY", "YEARLY", "UNKNOWN" ] + }, + "invoicingTimeUnit" : { + "type" : "string", + "description" : "Unit of time for invoicingTimeCount.", + "enum" : [ "MONTHS", "DAYS" ] + }, + "autoInvoicing" : { + "type" : "boolean", + "description" : "Whether invoicing should be triggered automatically." + }, + "invoicingTimeType" : { + "type" : "string", + "description" : "When during the invoicing period the invoice should be sent.", + "enum" : [ "ADVANCE", "ARREARS" ] + }, + "invoicingTimeCount" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of time units before/after the invoicing period start/end.", + "format" : "int32" + }, + "endDate" : { + "type" : "string", + "description" : "End date for recurring invoicing. If not set, the recurring order runs indefinitely." + }, + "fixedDayOfMonth" : { + "maximum" : 31, + "minimum" : 0, + "type" : "integer", + "description" : "Fixed day of month to send the invoice on.", + "format" : "int32" + }, + "orderId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Id of the order this recurring order config belongs to.", + "format" : "int64" + } + }, + "description" : "Recurring invoicing configuration." + }, + "RecurringOrderGroupWrite" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "ID of the order group. 0 = create new; existing group ID = update.", + "format" : "int64" + }, + "title" : { + "type" : "string", + "description" : "Title of the order group." + }, + "comment" : { + "type" : "string", + "description" : "Comment for the order group." + }, + "sortIndex" : { + "minimum" : 0, + "type" : "integer", + "description" : "Presentation order of the group.", + "format" : "int32" + }, + "recurringOrderLines" : { + "type" : "array", + "description" : "Recurring order lines belonging to this group. Null = don't touch; non-null list = full replacement.", + "items" : { + "$ref" : "#/components/schemas/RecurringOrderLineWrite" + } + } + }, + "description" : "Order line groups, each containing their own lines." + }, + "RecurringOrderLineWrite" : { + "type" : "object", + "properties" : { + "orderLine" : { + "$ref" : "#/components/schemas/OrderLine" + }, + "startBillingDate" : { + "type" : "string", + "description" : "Start of billing for this line. Null means the line is invoiced once and not repeated." + }, + "endBillingDate" : { + "type" : "string", + "description" : "End of billing for this line. Null means no end." + }, + "exceptions" : { + "type" : "string", + "description" : "Comma-separated month numbers to skip (e.g. \"6,12\"). Only valid for MONTHLY interval." + } + }, + "description" : "Recurring order lines belonging to this group. Null = don't touch; non-null list = full replacement." + }, + "RecurringOrderRequest" : { + "type" : "object", + "properties" : { + "order" : { + "$ref" : "#/components/schemas/RecurringOrderWrite" + }, + "recurringConfig" : { + "$ref" : "#/components/schemas/RecurringOrderConfigWrite" + }, + "recurringOrderLines" : { + "type" : "array", + "description" : "Ungrouped order lines.", + "items" : { + "$ref" : "#/components/schemas/RecurringOrderLineWrite" + } + }, + "recurringOrderGroups" : { + "type" : "array", + "description" : "Order line groups, each containing their own lines.", + "items" : { + "$ref" : "#/components/schemas/RecurringOrderGroupWrite" + } + } + } + }, + "RecurringOrderWrite" : { + "type" : "object", + "properties" : { + "customerId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the customer. Required.", + "format" : "int32" + }, + "invoicesDueIn" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "Number of days until the invoice is due.", + "format" : "int32" + }, + "departmentId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the department to associate with the order.", + "format" : "int32" + }, + "contactId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the customer's contact person on this order.", + "format" : "int32" + }, + "ourContactId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the contact if our contact is not an employee.", + "format" : "int32" + }, + "ourContactEmployeeId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the employee who is our contact on this order.", + "format" : "int32" + }, + "projectId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the project to associate with the order.", + "format" : "int32" + }, + "reference" : { + "type" : "string", + "description" : "Reference text on the order." + }, + "invoiceComment" : { + "type" : "string", + "description" : "Comment visible to the customer on the invoice." + }, + "receiverEmail" : { + "type" : "string", + "description" : "E-mail for invoicing. If not set, defaults to the e-mail from the customer card." + }, + "currencyId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the currency for this order.", + "format" : "int32" + }, + "deliveryAddressId" : { + "minimum" : 0, + "type" : "integer", + "description" : "ID of the delivery address for this order.", + "format" : "int32" + }, + "internalComment" : { + "type" : "string", + "description" : "Internal comment on the order, not visible to the customer." + }, + "orderLineSorting" : { + "type" : "string", + "description" : "Sort order of order lines. Use CUSTOM to honor per-line sortIndex values.", + "enum" : [ "ID", "PRODUCT", "PRODUCT_DESCENDING", "CUSTOM" ] + }, + "accountingDimensionValues" : { + "type" : "array", + "description" : "Free dimension values to associate with the order. Each entry's id refers to an accounting dimension value.", + "items" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + } + } + }, + "description" : "Order-level fields (customer, department, reference, etc.)." + }, + "ProjectSettings" : { + "type" : "object", + "properties" : { + "approveHourLists" : { + "type" : "boolean" + }, + "approveInvoices" : { + "type" : "boolean", + "description" : "True if approval and invoicing are separate" + }, + "markReadyForInvoicing" : { + "type" : "boolean" + }, + "historicalInformation" : { + "type" : "boolean" + }, + "projectForecast" : { + "type" : "boolean" + }, + "budgetOnSubcontracts" : { + "type" : "boolean" + }, + "projectCategories" : { + "type" : "boolean" + }, + "referenceFee" : { + "type" : "boolean" + }, + "sortOrderProjects" : { + "type" : "string", + "enum" : [ "SORT_ORDER_NAME_AND_NUMBER", "SORT_ORDER_NAME" ] + }, + "autoCloseInvoicedProjects" : { + "type" : "boolean" + }, + "mustApproveRegisteredHours" : { + "type" : "boolean" + }, + "mustApproveRegisteredHoursForHourlyRateProjects" : { + "type" : "boolean" + }, + "mustApproveRegisteredHoursForFixedPriceProjects" : { + "type" : "boolean" + }, + "showProjectOrderLinesToAllProjectParticipants" : { + "type" : "boolean" + }, + "hourCostPercentage" : { + "type" : "boolean" + }, + "fixedPriceProjectsFeeCalcMethod" : { + "type" : "string", + "enum" : [ "FIXED_PRICE_PROJECTS_CALC_METHOD_INVOICED_FEE", "FIXED_PRICE_PROJECTS_CALC_METHOD_PERCENT_COMPLETED" ] + }, + "fixedPriceProjectsInvoiceByProgress" : { + "type" : "boolean" + }, + "projectBudgetReferenceFee" : { + "type" : "boolean" + }, + "allowMultipleProjectInvoiceVat" : { + "type" : "boolean" + }, + "standardReinvoicing" : { + "type" : "boolean" + }, + "isCurrentMonthDefaultPeriod" : { + "type" : "boolean" + }, + "showProjectOnboarding" : { + "type" : "boolean" + }, + "autoConnectIncomingOrderlineToProject" : { + "type" : "boolean" + }, + "autoGenerateProjectNumber" : { + "type" : "boolean" + }, + "autoGenerateStartingNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "projectNameScheme" : { + "type" : "string", + "enum" : [ "NAME_STANDARD", "NAME_INCL_CUSTOMER_NAME", "NAME_INCL_PARENT_NAME", "NAME_INCL_PARENT_NUMBER", "NAME_INCL_PARENT_NAME_AND_NUMBER" ] + }, + "projectTypeOfContract" : { + "type" : "string", + "enum" : [ "PROJECT_FIXED_PRICE", "PROJECT_HOUR_RATES" ] + }, + "projectOrderLinesSortOrder" : { + "type" : "string", + "enum" : [ "SORT_ORDER_ID", "SORT_ORDER_DATE", "SORT_ORDER_PRODUCT", "SORT_ORDER_CUSTOM" ] + }, + "projectHourlyRateModel" : { + "type" : "string", + "enum" : [ "TYPE_PREDEFINED_HOURLY_RATES", "TYPE_PROJECT_SPECIFIC_HOURLY_RATES", "TYPE_FIXED_HOURLY_RATE" ] + }, + "onlyProjectMembersCanRegisterInfo" : { + "type" : "boolean" + }, + "onlyProjectActivitiesTimesheetRegistration" : { + "type" : "boolean" + }, + "hourlyRateProjectsWriteUpDown" : { + "type" : "boolean" + }, + "showRecentlyClosedProjectsOnSupplierInvoice" : { + "type" : "boolean" + }, + "defaultProjectContractComment" : { + "type" : "string" + }, + "defaultProjectInvoicingComment" : { + "type" : "string" + }, + "resourcePlanning" : { + "type" : "boolean" + }, + "capacityPlanning" : { + "type" : "boolean" + }, + "resourceGroups" : { + "type" : "boolean" + }, + "holidayPlan" : { + "type" : "boolean" + }, + "capacityPlanPeriod" : { + "type" : "string", + "enum" : [ "PERIOD_MONTH", "PERIOD_WEEK", "PERIOD_DAY" ] + }, + "customControlForms" : { + "type" : "boolean" + }, + "controlFormsRequiredForInvoicing" : { + "type" : "array", + "description" : "Control forms required for invoicing", + "items" : { + "$ref" : "#/components/schemas/ProjectControlFormType" + } + }, + "controlFormsRequiredForHourTracking" : { + "type" : "array", + "description" : "Control forms required for hour tracking", + "items" : { + "$ref" : "#/components/schemas/ProjectControlFormType" + } + }, + "dynamicControlFormIdsRequiredForInvoicing" : { + "type" : "array", + "description" : "Dynamic control form ids required for invoicing", + "items" : { + "type" : "integer", + "description" : "Dynamic control form ids required for invoicing", + "format" : "int64" + } + }, + "dynamicControlFormIdsRequiredForHourTracking" : { + "type" : "array", + "description" : "Dynamic control form ids required for hour tracking", + "items" : { + "type" : "integer", + "description" : "Dynamic control form ids required for hour tracking", + "format" : "int64" + } + }, + "useLoggedInUserEmailOnProjectBudget" : { + "type" : "boolean" + }, + "emailOnProjectBudget" : { + "type" : "string" + }, + "useLoggedInUserEmailOnProjectContract" : { + "type" : "boolean" + }, + "emailOnProjectContract" : { + "type" : "string" + }, + "useLoggedInUserEmailOnDocuments" : { + "type" : "boolean" + }, + "emailOnDocuments" : { + "type" : "string" + }, + "useProductNetPrice" : { + "type" : "boolean" + }, + "isNHOMember" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperProjectSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectSettings" + } + } + }, + "CompanyCurrency" : { + "type" : "object", + "properties" : { + "currencyCode" : { + "type" : "string", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + } + }, + "ResponseWrapperCompanyCurrency" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyCurrency" + } + } + }, + "ListResponseProjectSupplierInvoicePosting" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectSupplierInvoicePosting" + } + } + } + }, + "ProjectSupplierInvoicePosting" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountNameAndNumber" : { + "type" : "string", + "readOnly" : true + }, + "amountCurrency" : { + "type" : "number", + "description" : "Amount excluding VAT in the original currency of the posting.", + "readOnly" : true + }, + "amountBasisCurrency" : { + "type" : "number", + "description" : "Amount including VAT in the original currency of the posting.", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + }, + "companyCurrency" : { + "type" : "boolean", + "readOnly" : true + }, + "subProjectName" : { + "type" : "string", + "description" : "Sub-project name when the posting belongs to a sub-project of the queried project.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseProjectSupplierInvoiceSummary" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ProjectSupplierInvoiceSummary" + } + } + } + }, + "ProjectSupplierInvoiceSummary" : { + "type" : "object", + "properties" : { + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vendorId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vendorInvoiceNumber" : { + "type" : "string", + "readOnly" : true + }, + "expiredVendorInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherType" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherNumberAsString" : { + "type" : "string", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "attachmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "documentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "vendorName" : { + "type" : "string", + "readOnly" : true + }, + "departmentName" : { + "type" : "string", + "readOnly" : true + }, + "departmentId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "amountExclVat" : { + "type" : "number", + "description" : "Amount excluding VAT in the given currency. If multiple postings exist for the same voucher, their amounts are summed.", + "readOnly" : true + }, + "amountInclVat" : { + "type" : "number", + "description" : "Amount including VAT in the given currency. If multiple postings exist for the same voucher, their amounts are summed.", + "readOnly" : true + }, + "paidAmount" : { + "type" : "number", + "description" : "Used to specify the prepaid amount of the invoice. If multiple postings exist for the same voucher, their amounts are summed.", + "readOnly" : true + }, + "outstandingAmount" : { + "type" : "number", + "description" : "The amountCurrency outstanding based on the history collection, excluding reminders. If multiple postings exist for the same voucher, their amounts are summed.", + "readOnly" : true + }, + "currencyCode" : { + "type" : "string", + "readOnly" : true + }, + "projectIdToSubProjectNameMap" : { + "type" : "object", + "additionalProperties" : { + "type" : "string", + "description" : "A map of project id to sub project name" + }, + "description" : "A map of project id to sub project name" + }, + "insufficientInfoForPaidAmount" : { + "type" : "boolean", + "description" : "Indicator used to show/hide warnings on UI when paid amount calculation has insufficient information.", + "readOnly" : true + }, + "paidAmountInCompanyCurrency" : { + "type" : "number", + "description" : "Paid amount converted to the company's currency. If multiple currencies are involved, all amounts are converted and summed.", + "readOnly" : true + }, + "outstandingAmountInCompanyCurrency" : { + "type" : "number", + "description" : "Outstanding amount converted to the company's currency. If multiple currencies are involved, all amounts are converted and summed.", + "readOnly" : true + }, + "amountExclVatInCompanyCurrency" : { + "type" : "number", + "description" : "Amount excluding VAT converted to the company's currency. If multiple currencies are involved, all amounts are converted and summed.", + "readOnly" : true + }, + "amountInclVatInCompanyCurrency" : { + "type" : "number", + "description" : "Amount including VAT converted to the company's currency. If multiple currencies are involved, all amounts are converted and summed.", + "readOnly" : true + }, + "closeGroupId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "closed" : { + "type" : "boolean", + "description" : "Flag to know if the invoice and containing postings are closed", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseTask" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Task" + } + } + } + }, + "Task" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ProjectHourlyRateTemplate" : { + "type" : "object", + "properties" : { + "startDate" : { + "type" : "string" + }, + "showInProjectOrder" : { + "type" : "boolean", + "description" : "Show on contract confirmation/offers" + }, + "hourlyRateModel" : { + "type" : "string", + "description" : "Defines the model used for the hourly rate.", + "enum" : [ "TYPE_PREDEFINED_HOURLY_RATES", "TYPE_PROJECT_SPECIFIC_HOURLY_RATES", "TYPE_FIXED_HOURLY_RATE" ] + }, + "projectSpecificRates" : { + "type" : "array", + "description" : "Project specific rates if hourlyRateModel is TYPE_PROJECT_SPECIFIC_HOURLY_RATES. ", + "items" : { + "$ref" : "#/components/schemas/ProjectSpecificRateTemplate" + } + }, + "fixedRate" : { + "type" : "number", + "description" : "Fixed Hourly rates if hourlyRateModel is TYPE_FIXED_HOURLY_RATE." + } + }, + "description" : "Project Rate Types tied to the project." + }, + "ProjectSpecificRateTemplate" : { + "type" : "object", + "properties" : { + "hourlyRate" : { + "type" : "number" + }, + "hourlyCostPercentage" : { + "type" : "number" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + } + }, + "description" : "Project specific rates if hourlyRateModel is TYPE_PROJECT_SPECIFIC_HOURLY_RATES. " + }, + "ProjectTemplate" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "isInternal" : { + "type" : "boolean" + }, + "number" : { + "type" : "string" + }, + "displayNameFormat" : { + "type" : "string", + "enum" : [ "NAME_STANDARD", "NAME_INCL_CUSTOMER_NAME", "NAME_INCL_PARENT_NAME", "NAME_INCL_PARENT_NUMBER", "NAME_INCL_PARENT_NAME_AND_NUMBER" ] + }, + "projectManager" : { + "$ref" : "#/components/schemas/Employee" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "mainProject" : { + "$ref" : "#/components/schemas/Project" + }, + "projectCategory" : { + "$ref" : "#/components/schemas/ProjectCategory" + }, + "reference" : { + "type" : "string" + }, + "externalAccountsNumber" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "invoiceComment" : { + "type" : "string", + "description" : "Comment for project invoices" + }, + "attention" : { + "$ref" : "#/components/schemas/Contact" + }, + "contact" : { + "$ref" : "#/components/schemas/Contact" + }, + "customer" : { + "$ref" : "#/components/schemas/Customer" + }, + "deliveryAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "markUpOrderLines" : { + "type" : "number", + "description" : "Set mark-up (%) for order lines." + }, + "markUpFeesEarned" : { + "type" : "number", + "description" : "Set mark-up (%) for fees earned." + }, + "isFixedPrice" : { + "type" : "boolean", + "description" : "Project is fixed price if set to true, hourly rate if set to false." + }, + "fixedprice" : { + "type" : "number", + "description" : "Fixed price amount, in the project's currency." + }, + "isPriceCeiling" : { + "type" : "boolean", + "description" : "Set to true if an hourly rate project has a price ceiling." + }, + "priceCeilingAmount" : { + "type" : "number", + "description" : "Price ceiling amount, in the project's currency." + }, + "generalProjectActivitiesPerProjectOnly" : { + "type" : "boolean", + "description" : "Set to true if a general project activity must be linked to project to allow time tracking." + }, + "forParticipantsOnly" : { + "type" : "boolean", + "description" : "Set to true if only project participants can register information on the project" + }, + "projectHourlyRates" : { + "type" : "array", + "description" : "Project Rate Types tied to the project.", + "items" : { + "$ref" : "#/components/schemas/ProjectHourlyRateTemplate" + } + } + } + }, + "ResponseWrapperProjectTemplate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProjectTemplate" + } + } + }, + "ListResponseObject" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "object", + "readOnly" : true + } + } + } + }, + "PickupPoint" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "code" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "transportType" : { + "$ref" : "#/components/schemas/TransportType" + } + }, + "description" : "Pickup point, wholesaler specific" + }, + "ResponseWrapperPickupPoint" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PickupPoint" + } + } + }, + "TransportType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "nameKey" : { + "type" : "string", + "readOnly" : true + }, + "code" : { + "type" : "string", + "readOnly" : true + }, + "isPickUp" : { + "type" : "boolean", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponsePickupPoint" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PickupPoint" + } + } + } + }, + "PurchaseOrder" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "description" : "Purchase order number - read only" + }, + "receiverEmail" : { + "type" : "string", + "description" : "Email when purchase order is send by email." + }, + "discount" : { + "type" : "number", + "description" : "Discount Percentage" + }, + "internalComment" : { + "type" : "string" + }, + "packingNoteMessage" : { + "type" : "string", + "description" : "Message on packing note.Wholesaler specific." + }, + "transporterMessage" : { + "type" : "string", + "description" : "Message to transporter.Wholesaler specific." + }, + "comments" : { + "type" : "string", + "description" : "Delivery information and invoice comments" + }, + "supplier" : { + "$ref" : "#/components/schemas/Supplier" + }, + "deliveryDate" : { + "type" : "string" + }, + "receivedDate" : { + "type" : "string" + }, + "orderLines" : { + "type" : "array", + "description" : "Order lines tied to the purchase order", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "deliveryAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "creationDate" : { + "type" : "string" + }, + "isClosed" : { + "type" : "boolean" + }, + "ourContact" : { + "$ref" : "#/components/schemas/Employee" + }, + "supplierContact" : { + "$ref" : "#/components/schemas/Employee" + }, + "attention" : { + "$ref" : "#/components/schemas/Employee" + }, + "status" : { + "type" : "string", + "enum" : [ "STATUS_OPEN", "STATUS_SENT", "STATUS_RECEIVING", "STATUS_CONFIRMED_DEVIATION_DETECTED", "STATUS_DEVIATION_OPEN", "STATUS_DEVIATION_CONFIRMED", "STATUS_CLOSED", "STATUS_CANCELLED", "STATUS_CONFIRMED" ] + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "restorder" : { + "$ref" : "#/components/schemas/PurchaseOrder" + }, + "transportType" : { + "$ref" : "#/components/schemas/TransportType" + }, + "pickupPoint" : { + "$ref" : "#/components/schemas/PickupPoint" + }, + "document" : { + "$ref" : "#/components/schemas/Document" + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + }, + "ediDocument" : { + "$ref" : "#/components/schemas/Document" + }, + "lastSentTimestamp" : { + "type" : "string" + }, + "lastSentEmployeeName" : { + "type" : "string" + }, + "hasWholesalerExportUser" : { + "type" : "boolean", + "description" : "This field is relevant only if the supplier is a wholesaler. It indicates whether the wholesaler's export user is set. Available only on demand.", + "readOnly" : true + }, + "orderLineSorting" : { + "type" : "string", + "enum" : [ "ID", "PRODUCT", "PRODUCT_DESCENDING", "CUSTOM" ] + } + }, + "description" : "The purchase order to attach the orderline." + }, + "PurchaseOrderline" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "purchaseOrder" : { + "$ref" : "#/components/schemas/PurchaseOrder" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "supplierProduct" : { + "$ref" : "#/components/schemas/SupplierProduct" + }, + "resaleProduct" : { + "$ref" : "#/components/schemas/Product" + }, + "description" : { + "type" : "string" + }, + "count" : { + "type" : "number" + }, + "quantityReceived" : { + "type" : "number", + "description" : "Used if the Purchase Order has a Goods received." + }, + "unitCostCurrency" : { + "type" : "number", + "description" : "Unit price purchase (cost) excluding VAT in the order's currency" + }, + "unitPriceExcludingVatCurrency" : { + "type" : "number", + "description" : "Unit price of purchase excluding VAT in the order's currency.If it's not specified,it takes the value from purchase price in productDTO" + }, + "unitListPriceCurrency" : { + "type" : "number", + "description" : "Unit list price of purchase excluding VAT in the order's currency.If it's not specified,it takes the value from purchase price in productDTO" + }, + "unitPriceIncVatCurrency" : { + "type" : "number", + "description" : "Unit price including VAT in the order's currency.If it's not specified,it takes the value from purchase price in productDTO" + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "discount" : { + "type" : "number", + "description" : "Discount given as a percentage (%)" + }, + "amountExcludingVatCurrency" : { + "type" : "number", + "description" : "Total amount on order line excluding VAT in the order's currency" + }, + "amountIncludingVatCurrency" : { + "type" : "number", + "description" : "Total amount on order line including VAT in the order's currency", + "readOnly" : true + }, + "customSortIndex" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperPurchaseOrder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PurchaseOrder" + } + } + }, + "ListResponsePurchaseOrder" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PurchaseOrder" + } + } + } + }, + "PurchaseOrderEmail" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "email" : { + "type" : "string" + }, + "subject" : { + "type" : "string" + }, + "message" : { + "type" : "string" + } + } + }, + "PurchaseOrderAddress" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "addressLine1" : { + "type" : "string" + }, + "addressLine2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "city" : { + "type" : "string" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "displayName" : { + "type" : "string" + }, + "addressAsString" : { + "type" : "string", + "readOnly" : true + }, + "displayNameInklMatrikkel" : { + "type" : "string", + "readOnly" : true + }, + "knr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "gnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "bnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "fnr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "snr" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "unitNumber" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "customerVendor" : { + "$ref" : "#/components/schemas/Customer" + } + }, + "readOnly" : true + }, + "ResponseWrapperPurchaseOrderAddress" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PurchaseOrderAddress" + } + } + }, + "ListResponsePurchaseOrderAddress" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderAddress" + } + } + } + }, + "ListResponsePurchaseOrderInternal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderInternal" + } + } + } + }, + "PurchaseOrderInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "totalAmount" : { + "type" : "number", + "description" : "totalAmount" + } + }, + "readOnly" : true + }, + "ResponseWrapperTransportType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TransportType" + } + } + }, + "ListResponseTransportType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TransportType" + } + } + } + }, + "Deviation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "purchaseOrderLine" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + }, + "date" : { + "type" : "string" + }, + "cause" : { + "type" : "string", + "enum" : [ "CAUSE_DEFECT", "CAUSE_TOO_FEW", "CAUSE_TOO_MANY", "CAUSE_REPLACEMENT" ] + }, + "action" : { + "type" : "string", + "enum" : [ "ACTION_IGNORE", "ACTION_GENERATE_RESTORDER", "ACTION_RETURN", "ACTION_RETURN_GENERATE_RESTORDER" ] + }, + "comment" : { + "type" : "string" + }, + "receivedBy" : { + "type" : "string", + "readOnly" : true + }, + "quantityOrdered" : { + "type" : "number", + "readOnly" : true + }, + "quantityReceived" : { + "type" : "number", + "readOnly" : true + }, + "deviation" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperDeviation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Deviation" + } + } + }, + "ListResponseDeviation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Deviation" + } + } + } + }, + "GoodsReceipt" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "purchaseOrder" : { + "$ref" : "#/components/schemas/PurchaseOrder" + }, + "registrationDate" : { + "type" : "string" + }, + "receivedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "STATUS_OPEN", "STATUS_CONFIRMED" ] + }, + "comment" : { + "type" : "string" + }, + "goodsReceiptLines" : { + "type" : "array", + "description" : "Purchase Order lines tied to the goods receipt", + "items" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + }, + "readOnly" : true + }, + "GoodsReceiptLine" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "purchaseOrder" : { + "$ref" : "#/components/schemas/PurchaseOrder" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "resaleProduct" : { + "$ref" : "#/components/schemas/Product" + }, + "inventory" : { + "$ref" : "#/components/schemas/Inventory" + }, + "inventoryLocation" : { + "$ref" : "#/components/schemas/InventoryLocation" + }, + "quantityOrdered" : { + "type" : "number", + "readOnly" : true + }, + "quantityReceived" : { + "type" : "number" + }, + "quantityRest" : { + "type" : "number", + "readOnly" : true + }, + "deviation" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperGoodsReceipt" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GoodsReceipt" + } + } + }, + "ListResponseGoodsReceipt" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GoodsReceipt" + } + } + } + }, + "ResponseWrapperGoodsReceiptLine" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + }, + "ListResponseGoodsReceiptLine" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GoodsReceiptLine" + } + } + } + }, + "PurchaseOrderIncomingInvoiceRelation" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "orderOut" : { + "$ref" : "#/components/schemas/PurchaseOrder" + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "registerGoodsReceipt" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ResponseWrapperPurchaseOrderIncomingInvoiceRelation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PurchaseOrderIncomingInvoiceRelation" + } + } + }, + "ListResponsePurchaseOrderIncomingInvoiceRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderIncomingInvoiceRelation" + } + } + } + }, + "ResponseWrapperPurchaseOrderline" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + }, + "ListResponsePurchaseOrderline" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PurchaseOrderline" + } + } + } + }, + "RackbeatInventoryValue" : { + "type" : "object", + "properties" : { + "rackbeatInventoryValue" : { + "type" : "string" + }, + "tripletexInventoryValue" : { + "type" : "string" + }, + "voucherDate" : { + "type" : "string" + }, + "accountDebit" : { + "type" : "integer", + "format" : "int32" + }, + "accountCredit" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperRackbeatInventoryValue" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RackbeatInventoryValue" + } + } + }, + "RecurringOrderOverviewSumDTO" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "sumAmountNextInvoiceExclVat" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperRecurringOrderOverviewSumDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RecurringOrderOverviewSumDTO" + } + } + }, + "CursorPaginatedListResponseRecurringOrderSummary" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RecurringOrderSummary" + } + }, + "cursor" : { + "type" : "string", + "description" : "Base64 encoded cursor", + "readOnly" : true + } + } + }, + "RecurringOrderSummary" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "preliminaryInvoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "orderNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerName" : { + "type" : "string", + "readOnly" : true + }, + "customerNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "AUTOMATED", "MANUAL_SENDING", "SENDING_FAILED", "CLOSED" ] + }, + "nextInvoicingDate" : { + "type" : "string", + "readOnly" : true + }, + "recurringInterval" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MONTHLY", "BIMONTHLY", "QUARTERLY", "BIANNUALLY", "YEARLY", "UNKNOWN" ] + }, + "nextBillingPeriodStart" : { + "type" : "string", + "readOnly" : true, + "deprecated" : true + }, + "nextBillingPeriodEnd" : { + "type" : "string", + "readOnly" : true, + "deprecated" : true + }, + "nextInvoiceCoversFromDate" : { + "type" : "string", + "description" : "Earliest date the next invoice covers. Equals nextInvoicePeriodStart normally; earlier when it backfills missed periods.", + "readOnly" : true + }, + "nextInvoicePeriodStart" : { + "type" : "string", + "description" : "Start of the billing period the next invoice is for.", + "readOnly" : true + }, + "amountNextInvoiceExclVat" : { + "type" : "number", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "readOnly" : true + }, + "endPeriodStart" : { + "type" : "string", + "readOnly" : true + }, + "projectName" : { + "type" : "string", + "readOnly" : true + }, + "projectNumber" : { + "type" : "string", + "readOnly" : true + }, + "customerUrlDetails" : { + "type" : "string", + "readOnly" : true + }, + "urlDetails" : { + "type" : "string", + "readOnly" : true + }, + "projectUrlDetails" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperReminder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Reminder" + } + } + }, + "ListResponseReminder" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Reminder" + } + } + } + }, + "CellBlueprintV1" : { + "type" : "object", + "properties" : { + "columnReference" : { + "type" : "string" + }, + "rowReference" : { + "type" : "string" + }, + "expression" : { + "type" : "string" + }, + "variableName" : { + "type" : "string" + }, + "valueFormat" : { + "type" : "string" + }, + "cellFormat" : { + "type" : "string" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "HeaderBlueprintV1" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "hideSelf" : { + "type" : "boolean" + }, + "visibilityExpression" : { + "type" : "string" + }, + "removeEmpty" : { + "type" : "boolean" + }, + "expression" : { + "type" : "string" + }, + "variableName" : { + "type" : "string" + }, + "valueFormat" : { + "type" : "string" + }, + "cellFormat" : { + "type" : "string" + }, + "reference" : { + "type" : "string" + }, + "initialExpansionState" : { + "type" : "integer", + "format" : "int32" + }, + "filter" : { + "$ref" : "#/components/schemas/ReportGroupFilter" + }, + "autoGroup" : { + "$ref" : "#/components/schemas/ReportGroupAutoGroup" + }, + "children" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/HeaderBlueprintV1" + } + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ListResponseReportAccess" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReportAccess" + } + } + } + }, + "Report" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Shortcut for Report name", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Shortcut for Report description", + "readOnly" : true + }, + "helpComponent" : { + "minimum" : 0, + "type" : "integer", + "description" : "helpComponent", + "format" : "int32" + }, + "blueprint" : { + "$ref" : "#/components/schemas/ReportBlueprintV2" + } + }, + "description" : "The target resource to be granted permissions for" + }, + "ReportAccess" : { + "type" : "object", + "properties" : { + "report" : { + "$ref" : "#/components/schemas/Report" + }, + "grant" : { + "$ref" : "#/components/schemas/ReportAuthorization" + }, + "reason" : { + "type" : "string", + "description" : "The reason for having access", + "readOnly" : true, + "enum" : [ "Global", "Owner", "Administrator", "Shared", "None" ] + } + }, + "description" : "Metadata of what Report this render is for and how it is accessible", + "readOnly" : true + }, + "ReportAuthorization" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "granter" : { + "$ref" : "#/components/schemas/Employee" + }, + "granterDelegatorId" : { + "minimum" : 0, + "type" : "integer", + "description" : "If set specifies the delegator to the granter proxy employee.", + "format" : "int64" + }, + "subject" : { + "$ref" : "#/components/schemas/Employee" + }, + "subjectDelegatorId" : { + "minimum" : 0, + "type" : "integer", + "description" : "If set specifies the delegator to the subject proxy employee.", + "format" : "int64" + }, + "report" : { + "$ref" : "#/components/schemas/Report" + }, + "status" : { + "type" : "string", + "description" : "The status of this grant of authorization", + "enum" : [ "Rejected", "Granted" ] + }, + "permission" : { + "type" : "string", + "description" : "The specific permission this grant of authorization is for", + "enum" : [ "Invalid", "ViewResult", "Owner" ] + }, + "granterDelegatorCompanyId" : { + "minimum" : 0, + "type" : "integer", + "description" : "The company id of the granter delegator", + "format" : "int64" + }, + "subjectDelegatorCompanyId" : { + "minimum" : 0, + "type" : "integer", + "description" : "The company id of the subject delegator", + "format" : "int64" + }, + "subjectDelegatorName" : { + "type" : "string", + "description" : "The name of the subject delegator" + }, + "subjectDelegatorCompanyName" : { + "type" : "string", + "description" : "The company name of the subject delegator" + } + }, + "description" : "The relevant grant of permission, if applicable", + "readOnly" : true + }, + "ReportBlueprintV2" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "settings" : { + "$ref" : "#/components/schemas/ReportSettings" + }, + "columns" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/HeaderBlueprintV1" + } + }, + "rows" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/HeaderBlueprintV1" + } + }, + "cells" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CellBlueprintV1" + } + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + }, + "description" : "blueprint" + }, + "ReportGroupAutoGroup" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "integer", + "format" : "int32" + }, + "defaultOrder" : { + "type" : "string", + "enum" : [ "Ascending", "Descending" ] + }, + "orderBy" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportGroupOrderBy" + } + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportGroupOrderBy" : { + "type" : "object", + "properties" : { + "order" : { + "type" : "string", + "enum" : [ "Ascending", "Descending" ] + }, + "expression" : { + "type" : "string" + } + } + }, + "ReportSettings" : { + "type" : "object", + "properties" : { + "headers" : { + "$ref" : "#/components/schemas/ReportSettingsHeaders" + }, + "filters" : { + "$ref" : "#/components/schemas/ReportSettingsFilters" + }, + "feedback" : { + "$ref" : "#/components/schemas/ReportSettingsFeedback" + }, + "access" : { + "$ref" : "#/components/schemas/ReportSettingsAccess" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + }, + "description" : "Metadata describing the report settings", + "readOnly" : true + }, + "ReportSettingsAccess" : { + "type" : "object", + "properties" : { + "expression" : { + "type" : "string" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSettingsFeedback" : { + "type" : "object", + "properties" : { + "channel" : { + "type" : "string" + }, + "team" : { + "type" : "string" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSettingsFilters" : { + "type" : "object", + "properties" : { + "order" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "period", "account", "customer", "customerCategory1", "customerCategory2", "customerCategory3", "supplier", "employee", "department", "project", "projectCategory", "product", "activity", "freeDimension1", "freeDimension2", "freeDimension3" ] + } + }, + "options" : { + "$ref" : "#/components/schemas/ReportSettingsOptions" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSettingsFiltersOptionsPeriod" : { + "type" : "object", + "properties" : { + "divisions" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + }, + "shortcuts" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + }, + "stepSize" : { + "type" : "string", + "enum" : [ "Day", "Week", "Month", "WageTerm", "VatTerm", "Year" ] + }, + "initialValueProvider" : { + "type" : "string", + "enum" : [ "All", "ThisDay", "ThisWeek", "NextSevenDays", "NextThirtyDays", "ThisMonth", "ThisYear", "SoFarThisWeek", "SoFarThisMonth", "SoFarThisYear", "LastYear" ] + }, + "start" : { + "type" : "string" + }, + "end" : { + "type" : "string" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSettingsHeaders" : { + "type" : "object", + "properties" : { + "showColumnHeaders" : { + "type" : "boolean" + }, + "showRowHeaders" : { + "type" : "boolean" + }, + "columnHeaderVisibilityExpression" : { + "type" : "string" + }, + "rowHeaderVisibilityExpression" : { + "type" : "string" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ReportSettingsOptions" : { + "type" : "object", + "properties" : { + "period" : { + "$ref" : "#/components/schemas/ReportSettingsFiltersOptionsPeriod" + }, + "version" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ListResponseReportClientAccess" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReportClientAccess" + } + } + } + }, + "ReportClientAccess" : { + "type" : "object", + "properties" : { + "reportAccess" : { + "type" : "array", + "description" : "All ReportAccess for this client", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReportAccess" + } + }, + "clientName" : { + "type" : "string", + "description" : "The name of the client these ReportAccess are for", + "readOnly" : true + }, + "clientId" : { + "type" : "integer", + "description" : "The id of the client these ReportAccess are for", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Report" + } + } + }, + "ListResponseReport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Report" + } + } + } + }, + "ReportResult" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "columnHeaders" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportResultColumnHeader" + } + }, + "rowHeaders" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportResultRowHeader" + } + }, + "tableContent" : { + "type" : "array", + "items" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ReportResultCell" + } + } + }, + "columnDepth" : { + "type" : "integer", + "format" : "int32" + }, + "rowDepth" : { + "type" : "integer", + "format" : "int32" + }, + "width" : { + "type" : "integer", + "format" : "int32" + }, + "height" : { + "type" : "integer", + "format" : "int32" + } + }, + "description" : "The Report result", + "readOnly" : true + }, + "ReportResultCell" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportResultCellValue" + }, + "formatted" : { + "type" : "string" + }, + "style" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "link" : { + "type" : "string" + } + } + }, + "ReportResultCellValue" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object" + }, + "type" : { + "type" : "string", + "enum" : [ "NULL", "NUMBER", "STRING", "BOOLEAN", "DATE", "ERROR", "REFERENCE", "ARRAY", "OBJECT" ] + } + } + }, + "ReportResultColumnHeader" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportResultCellValue" + }, + "formatted" : { + "type" : "string" + }, + "style" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "initiallyExpanded" : { + "type" : "boolean" + }, + "sourceRef" : { + "type" : "string" + }, + "autoGroupType" : { + "type" : "integer", + "format" : "int32" + }, + "leafCount" : { + "type" : "integer", + "format" : "int32" + }, + "leaf" : { + "type" : "boolean" + }, + "depth" : { + "type" : "integer", + "format" : "int32" + }, + "link" : { + "type" : "string" + } + } + }, + "ReportResultEnvelope" : { + "type" : "object", + "properties" : { + "result" : { + "$ref" : "#/components/schemas/ReportResult" + }, + "access" : { + "$ref" : "#/components/schemas/ReportAccess" + }, + "settings" : { + "$ref" : "#/components/schemas/ReportSettings" + } + } + }, + "ReportResultRowHeader" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportResultCellValue" + }, + "formatted" : { + "type" : "string" + }, + "style" : { + "type" : "array", + "items" : { + "type" : "string" + } + }, + "initiallyExpanded" : { + "type" : "boolean" + }, + "sourceRef" : { + "type" : "string" + }, + "autoGroupType" : { + "type" : "integer", + "format" : "int32" + }, + "leafCount" : { + "type" : "integer", + "format" : "int32" + }, + "depth" : { + "type" : "integer", + "format" : "int32" + }, + "link" : { + "type" : "string" + } + } + }, + "ResponseWrapperReportResultEnvelope" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportResultEnvelope" + } + } + }, + "ResponseWrapperReportAccess" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportAccess" + } + } + }, + "ResponseWrapperReportAuthorization" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportAuthorization" + } + } + }, + "ListResponseReportAuthorization" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReportAuthorization" + } + } + } + }, + "ReelDocumentation" : { + "type" : "object", + "properties" : { + "summaryKey" : { + "type" : "string", + "description" : "The summary text key" + }, + "descriptionKey" : { + "type" : "string", + "description" : "The description text key" + } + }, + "description" : "The documentation for this function" + }, + "ReelDomain" : { + "type" : "object", + "properties" : { + "namespace" : { + "type" : "string", + "description" : "The namespace of the domain", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "The name of the domain", + "readOnly" : true + }, + "functions" : { + "type" : "array", + "description" : "The functions of the domain", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReelFunction" + } + }, + "documentation" : { + "$ref" : "#/components/schemas/ReelDocumentation" + } + }, + "readOnly" : true + }, + "ReelFunction" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the function" + }, + "namespace" : { + "type" : "string", + "description" : "The domain namespace of the function" + }, + "documentation" : { + "$ref" : "#/components/schemas/ReelDocumentation" + } + }, + "readOnly" : true + }, + "ResponseWrapperReelDomain" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReelDomain" + } + } + }, + "ListResponseReelDomain" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReelDomain" + } + } + } + }, + "ListResponseReelFunction" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReelFunction" + } + } + } + }, + "ReportResultParameters" : { + "type" : "object", + "properties" : { + "filter" : { + "$ref" : "#/components/schemas/ReportGroupFilter" + }, + "expandState" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + } + } + }, + "ListResponseSystemReportCategory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SystemReportCategory" + } + } + } + }, + "SystemReport" : { + "type" : "object", + "properties" : { + "textKey" : { + "type" : "string", + "description" : "The text key for the name of the report", + "readOnly" : true + }, + "text" : { + "type" : "string", + "description" : "The name of the report", + "readOnly" : true + }, + "path" : { + "type" : "string", + "description" : "The path to the report", + "readOnly" : true + }, + "sorting" : { + "type" : "integer", + "description" : "Sorting order of the report (lower appears first, 0–99).", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "The reports in this report category", + "readOnly" : true + }, + "SystemReportCategory" : { + "type" : "object", + "properties" : { + "textKey" : { + "type" : "string", + "description" : "The text key for the name of the report category", + "readOnly" : true + }, + "theme" : { + "type" : "string", + "description" : "The theme of the report category", + "readOnly" : true + }, + "icon" : { + "type" : "string", + "description" : "The icon for the report category", + "readOnly" : true + }, + "reports" : { + "type" : "array", + "description" : "The reports in this report category", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SystemReport" + } + }, + "subCategories" : { + "type" : "array", + "description" : "The report categories in this report category", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SystemReportCategory" + } + } + }, + "readOnly" : true + }, + "ResourceMessages" : { + "type" : "object", + "properties" : { + "no" : { + "type" : "object", + "additionalProperties" : { + "type" : "string", + "description" : "Map of key value pairs for Norwegian text" + }, + "description" : "Map of key value pairs for Norwegian text" + }, + "en" : { + "type" : "object", + "additionalProperties" : { + "type" : "string", + "description" : "Map of key value pairs for English text" + }, + "description" : "Map of key value pairs for English text" + } + } + }, + "ResponseWrapperResourceMessages" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ResourceMessages" + } + } + }, + "ResourceMessagesArgs" : { + "type" : "object", + "properties" : { + "keys" : { + "type" : "array", + "items" : { + "type" : "string" + } + } + } + }, + "RP2Permissions" : { + "type" : "object", + "properties" : { + "canViewEmployees" : { + "type" : "boolean" + }, + "canViewProjects" : { + "type" : "boolean" + }, + "canSeeOtherEmployees" : { + "type" : "boolean" + }, + "canOpenJobs" : { + "type" : "boolean" + }, + "canEdit" : { + "type" : "boolean" + }, + "canCreate" : { + "type" : "boolean" + }, + "canDelete" : { + "type" : "boolean" + }, + "canFilter" : { + "type" : "boolean" + }, + "canBatchEdit" : { + "type" : "boolean" + }, + "canBatchSelect" : { + "type" : "boolean" + }, + "canBatchDelete" : { + "type" : "boolean" + }, + "canAssignOwnProjects" : { + "type" : "boolean" + }, + "canAssignAllProjects" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperRP2Permissions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RP2Permissions" + } + } + }, + "RP2ModalPermissions" : { + "type" : "object", + "properties" : { + "readonly" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperRP2ModalPermissions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RP2ModalPermissions" + } + } + }, + "ListResponseRP2EmployeeAvailableTime" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RP2EmployeeAvailableTime" + } + } + } + }, + "RP2EmployeeAvailableTime" : { + "type" : "object", + "properties" : { + "employeeId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "periodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "duration" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseRP2EmployeeBookedTime" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RP2EmployeeBookedTime" + } + } + } + }, + "RP2EmployeeBookedTime" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "periodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "duration" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseRP2EmployeeJob" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RP2EmployeeJob" + } + } + } + }, + "RP2EmployeeJob" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "label" : { + "type" : "string" + }, + "subLabel" : { + "type" : "string" + }, + "duration" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + }, + "periodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "subPeriodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "startDate" : { + "type" : "string" + }, + "startTime" : { + "type" : "string" + }, + "endTime" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "RP2EmployeeJobMoveResponse" : { + "type" : "object", + "properties" : { + "jobId" : { + "type" : "integer", + "format" : "int32" + }, + "employeeIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + } + } + }, + "ResponseWrapperRP2EmployeeJobMoveResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RP2EmployeeJobMoveResponse" + } + } + }, + "RP2JobTemplate" : { + "type" : "object", + "properties" : { + "employeeIds" : { + "type" : "array", + "description" : "List of employeeIds assigned to the job", + "items" : { + "type" : "integer", + "description" : "List of employeeIds assigned to the job", + "format" : "int32" + } + }, + "activityId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "projectId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "date" : { + "type" : "string" + }, + "durationAmount" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "periodCount" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "startTime" : { + "type" : "string" + }, + "endTime" : { + "type" : "string" + } + } + }, + "ResponseWrapperRP2JobTemplate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RP2JobTemplate" + } + } + }, + "RP2JobPatchTemplate" : { + "type" : "object", + "properties" : { + "employeeIds" : { + "type" : "array", + "description" : "List of employeeIds assigned to the job", + "items" : { + "type" : "integer", + "description" : "List of employeeIds assigned to the job", + "format" : "int32" + } + }, + "activityId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "projectId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "date" : { + "type" : "string" + }, + "durationAmount" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "startTime" : { + "type" : "string" + }, + "endTime" : { + "type" : "string" + } + } + }, + "ListResponseRP2ProjectBookedTime" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RP2ProjectBookedTime" + } + } + } + }, + "RP2ProjectBookedTime" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "periodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "duration" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseRP2ProjectJob" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RP2ProjectJob" + } + } + } + }, + "RP2ProjectJob" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "label" : { + "type" : "string" + }, + "subLabel" : { + "type" : "string" + }, + "duration" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + }, + "periodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "subPeriodId" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "startDate" : { + "type" : "string" + }, + "startTime" : { + "type" : "string" + }, + "endTime" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "RP2ProjectJobMoveResponse" : { + "type" : "object", + "properties" : { + "jobId" : { + "type" : "integer", + "format" : "int32" + }, + "projectId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperRP2ProjectJobMoveResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RP2ProjectJobMoveResponse" + } + } + }, + "ListResponseRP2TotalTime" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RP2TotalTime" + } + } + } + }, + "RP2TotalTime" : { + "type" : "object", + "properties" : { + "periodId" : { + "maximum" : 7, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "duration" : { + "type" : "number" + }, + "durationUnit" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseResultBudget" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResultBudget" + } + } + } + }, + "ResultBudget" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "accountingPeriod" : { + "$ref" : "#/components/schemas/AccountingPeriod" + }, + "amount" : { + "type" : "number" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "product" : { + "$ref" : "#/components/schemas/Product" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "resultBudgetType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "COMPANY", "DEPARTMENT", "EMPLOYEE", "PROJECT", "PRODUCT" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperResultBudget" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ResultBudget" + } + } + }, + "EmployeeRolesAndModules" : { + "type" : "object", + "properties" : { + "companyModules" : { + "type" : "array", + "description" : "Company modules currently active for the company.", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "Company modules currently active for the company.", + "readOnly" : true, + "enum" : [ "MODULE_HOURLIST", "MODULE_INVOICE", "MODULE_ACCOUNTING_EXTERNAL", "MODULE_ACCOUNTING_REPORTS", "MODULE_PAYROLL_ACCOUNTING", "MODULE_TRAVELEXPENSE" ] + } + }, + "employeeRoles" : { + "type" : "array", + "description" : "Roles granted to the logged-in employee.", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "Roles granted to the logged-in employee.", + "readOnly" : true + } + } + } + }, + "ResponseWrapperEmployeeRolesAndModules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeRolesAndModules" + } + } + }, + "ResponseWrapperSalaryType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryType" + } + } + }, + "ListResponseSalaryType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryType" + } + } + } + }, + "Altinn3BannerEligibility" : { + "type" : "object", + "properties" : { + "eligible" : { + "type" : "boolean", + "description" : "Whether the Altinn 3 activation banner should be shown for this company." + }, + "accountantOrSimilar" : { + "type" : "boolean", + "description" : "Whether the company is an accounting office (or similar). The banner uses this to show a tailored description text." + } + } + }, + "ResponseWrapperAltinn3BannerEligibility" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Altinn3BannerEligibility" + } + } + }, + "AgentSystemUserClientList" : { + "type" : "object", + "properties" : { + "organizationName" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "isConnected" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ListResponseAgentSystemUserClientList" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AgentSystemUserClientList" + } + } + } + }, + "AltinnLoginStatus" : { + "type" : "object", + "properties" : { + "hasActiveAltinnToken" : { + "type" : "boolean" + }, + "loginRedirectUrl" : { + "type" : "string" + } + } + }, + "ResponseWrapperAltinnLoginStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AltinnLoginStatus" + } + } + }, + "ResponseWrapperAmeldingStatusInternal" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AmeldingStatusInternal" + } + } + }, + "AmeldingType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "displayName", + "readOnly" : true + }, + "code" : { + "type" : "string", + "description" : "code", + "readOnly" : true + }, + "type" : { + "type" : "integer", + "description" : "type", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseAmeldingType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AmeldingType" + } + } + } + }, + "CompanyEmployeeRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "hourlyRate" : { + "type" : "number", + "readOnly" : true + }, + "hourlyCost" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperCompanyEmployeeRate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyEmployeeRate" + } + } + }, + "EmployeeAccountingDimensionRelation" : { + "type" : "object", + "properties" : { + "employeeId" : { + "type" : "integer", + "description" : "Employee ID", + "format" : "int32", + "readOnly" : true + }, + "freeDimensionId" : { + "type" : "integer", + "description" : "Accounting dimension value ID", + "format" : "int64", + "readOnly" : true + } + } + }, + "ListResponseEmployeeAccountingDimensionRelation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeAccountingDimensionRelation" + } + } + } + }, + "ResponseWrapperEmployeeAccountingDimensionRelation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeAccountingDimensionRelation" + } + } + }, + "EmployeeOverviewBodyArgs" : { + "type" : "object", + "properties" : { + "employeeIds" : { + "type" : "string" + }, + "employeeIdsToShowOnTop" : { + "type" : "string" + }, + "query" : { + "type" : "string" + } + } + }, + "EmployeeOverview" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string" + }, + "dateOfBirth" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumberMobile" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberHome" : { + "type" : "string" + }, + "phoneNumberWork" : { + "type" : "string" + }, + "nationalIdentityNumber" : { + "type" : "string" + }, + "isContact" : { + "type" : "boolean", + "readOnly" : true + }, + "address" : { + "$ref" : "#/components/schemas/Address" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "employeeCategory" : { + "$ref" : "#/components/schemas/EmployeeCategory" + }, + "pictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "lastActiveEmployment" : { + "$ref" : "#/components/schemas/Employment" + }, + "currentCompanyEmployeeRate" : { + "$ref" : "#/components/schemas/CompanyEmployeeRate" + }, + "deliveryMethodWageSlipString" : { + "type" : "string", + "readOnly" : true + }, + "bankAccountNumber" : { + "type" : "string" + }, + "allowLogin" : { + "type" : "boolean" + }, + "authReadOnly" : { + "type" : "boolean" + }, + "isProxy" : { + "type" : "boolean" + }, + "vismaConnect2FAactive" : { + "type" : "boolean", + "readOnly" : true + }, + "hasResigned" : { + "type" : "boolean", + "readOnly" : true + }, + "isUserAdministrator" : { + "type" : "boolean", + "readOnly" : true + }, + "allowRegInfo" : { + "type" : "boolean", + "readOnly" : true + }, + "socialSecurityNumberOrDNumber" : { + "type" : "string", + "readOnly" : true + }, + "isPayslipOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "employmentDetails" : { + "$ref" : "#/components/schemas/EmploymentDetails" + }, + "employeeApprover" : { + "$ref" : "#/components/schemas/Employee" + }, + "employeeApproverRelationType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "DEPARTMENT_MANAGER", "NONE", "CUSTOM" ] + } + }, + "readOnly" : true + }, + "ListResponseEmployeeOverview" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EmployeeOverview" + } + } + } + }, + "ResponseWrapperTskInternalContextDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TskInternalContextDTO" + } + } + }, + "TskInternalContextDTO" : { + "type" : "object", + "properties" : { + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "hasDepartment" : { + "type" : "boolean", + "readOnly" : true + }, + "hasEmployeeCategory" : { + "type" : "boolean", + "readOnly" : true + }, + "hasDivision" : { + "type" : "boolean", + "readOnly" : true + }, + "maxEmployeesPerSalaryTransaction" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isPilotSalaryRun" : { + "type" : "boolean", + "readOnly" : true + }, + "contextCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "loginEmployeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isProxyLogin" : { + "type" : "boolean", + "readOnly" : true + }, + "isShowSalaryOnboarding" : { + "type" : "boolean", + "readOnly" : true + }, + "isPayInAdvance" : { + "type" : "boolean", + "readOnly" : true + }, + "isTestAccount" : { + "type" : "boolean", + "readOnly" : true + }, + "isTrialAccount" : { + "type" : "boolean", + "readOnly" : true + }, + "authLevelWage" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authLevelEmployeeOrWage" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "userDepartmentId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "newCustomerFrom2025" : { + "type" : "boolean" + } + } + }, + "CreateSalaryEmployee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "employeeCategory" : { + "$ref" : "#/components/schemas/EmployeeCategory" + }, + "pictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isContact" : { + "type" : "boolean", + "readOnly" : true + } + }, + "description" : "Employee", + "readOnly" : true + }, + "ResponseWrapperCreateSalaryEmployee" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CreateSalaryEmployee" + } + } + }, + "ResponseWrapperSalaryV2Employee" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Employee" + } + } + }, + "SalaryV2Employee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "employeeNumber" : { + "type" : "string" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "pictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "phoneNumberSmsCertified" : { + "type" : "string", + "readOnly" : true + }, + "nameAndNumber" : { + "type" : "string", + "readOnly" : true + }, + "bankAccountOrIban" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseSalaryV2AMessageWageOverview" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2AMessageWageOverview" + } + } + } + }, + "SalaryV2AMessageWageOverview" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "period" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseSalaryV2PensionVoucher" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2PensionVoucher" + } + } + } + }, + "SalaryV2PensionVoucher" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumberAsString" : { + "type" : "string", + "readOnly" : true + }, + "datePeriod" : { + "type" : "string", + "readOnly" : true + }, + "voucherDate" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "ameldingWageId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "ameldingDueDate" : { + "type" : "string" + }, + "ameldingStatus" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NEUTRAL", "SUCCESS", "WARNING", "WARNING_GUIDELINE", "ERROR", "ERROR_IMMEDIATELY", "ERROR_REJECTED", "ERROR_NOT_DELIVERED" ] + }, + "eniBasis" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseSalaryV2OverviewReimbursements" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2OverviewReimbursements" + } + } + } + }, + "SalaryV2OverviewReimbursements" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumberAsString" : { + "type" : "string", + "readOnly" : true + }, + "datePeriod" : { + "type" : "string", + "readOnly" : true + }, + "voucherDate" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "ameldingWageId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "ameldingDueDate" : { + "type" : "string" + }, + "ameldingStatus" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NEUTRAL", "SUCCESS", "WARNING", "WARNING_GUIDELINE", "ERROR", "ERROR_IMMEDIATELY", "ERROR_REJECTED", "ERROR_NOT_DELIVERED" ] + }, + "eniBasis" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseSalaryV2OverviewTax" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2OverviewTax" + } + } + } + }, + "SalaryV2OverviewTax" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "voucherNumberAsString" : { + "type" : "string", + "readOnly" : true + }, + "voucherDate" : { + "type" : "string" + }, + "voucherDescription" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperSalaryV2VoucherOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2VoucherOverview" + } + } + }, + "SalaryV2VoucherOverview" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "voucherNumberAsString" : { + "type" : "string", + "readOnly" : true + }, + "datePeriod" : { + "type" : "string", + "readOnly" : true + }, + "voucherDate" : { + "type" : "string" + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "ameldingWageId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "ameldingDueDate" : { + "type" : "string" + }, + "ameldingStatus" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NEUTRAL", "SUCCESS", "WARNING", "WARNING_GUIDELINE", "ERROR", "ERROR_IMMEDIATELY", "ERROR_REJECTED", "ERROR_NOT_DELIVERED" ] + }, + "eniBasis" : { + "type" : "number", + "readOnly" : true + }, + "paymentDate" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "isReversed" : { + "type" : "boolean", + "readOnly" : true + }, + "wagePeriodTransactionId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "wagePeriodTransactionVoucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "reversedVoucherDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "reversedBy" : { + "type" : "string", + "readOnly" : true + }, + "completedLogId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isHistorical" : { + "type" : "boolean", + "readOnly" : true + }, + "approvedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "approvalDate" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseSalaryV2VoucherOverview" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2VoucherOverview" + } + } + } + }, + "ListResponseWagePaymentExtended" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WagePaymentExtended" + } + } + } + }, + "WagePaymentExtended" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "transaction" : { + "$ref" : "#/components/schemas/SalaryTransaction" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "date" : { + "type" : "string", + "description" : "Voucher date." + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "specifications" : { + "type" : "array", + "description" : "Link to salary specifications.", + "items" : { + "$ref" : "#/components/schemas/SalarySpecification" + } + }, + "vacationAllowanceAmount" : { + "type" : "number", + "readOnly" : true + }, + "grossAmount" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "numberAsString" : { + "type" : "string", + "description" : "Wage payment number as string (e.g. '1-2026').", + "readOnly" : true + }, + "sumAmountTaxDeductions" : { + "type" : "number", + "description" : "Total tax deductions amount.", + "readOnly" : true + }, + "vacationAllowanceAmountBasis" : { + "type" : "number", + "description" : "Vacation allowance basis amount.", + "readOnly" : true + }, + "totalVacationAllowancePercentage" : { + "type" : "number", + "description" : "Total vacation allowance percentage.", + "readOnly" : true + }, + "vacationAllowancePaymentPreviousYear" : { + "type" : "number", + "description" : "Vacation allowance payment from previous year.", + "readOnly" : true + }, + "vacationAllowancePaymentThisYear" : { + "type" : "number", + "description" : "Vacation allowance payment for current year.", + "readOnly" : true + }, + "completed" : { + "type" : "boolean", + "description" : "Whether the wage payment is completed.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseWageReport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WageReport" + } + } + } + }, + "WageReport" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "wageCodeSummaries" : { + "type" : "array", + "description" : "Wage code summaries with aggregated amounts and counts", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WageReportWageCodeSummary" + } + }, + "totalAmount" : { + "type" : "number", + "description" : "Total amount across all wage codes for this employee", + "readOnly" : true + } + }, + "description" : "Aggregated wage report for a single employee, with per-wage-code breakdowns", + "readOnly" : true + }, + "WageReportWageCodeSummary" : { + "type" : "object", + "properties" : { + "wageCodeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "wageCodeNumber" : { + "type" : "string", + "readOnly" : true + }, + "wageCodeName" : { + "type" : "string", + "readOnly" : true + }, + "ameldingWageCodeName" : { + "type" : "string", + "description" : "The a-melding wage code name for this wage code", + "readOnly" : true + }, + "count" : { + "type" : "number", + "description" : "Aggregated count (hours/units) for this wage code", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "description" : "Aggregated amount for this wage code", + "readOnly" : true + }, + "accountDebit" : { + "type" : "string", + "description" : "Debit account number and name", + "readOnly" : true + }, + "accountCredit" : { + "type" : "string", + "description" : "Credit account number and name", + "readOnly" : true + } + }, + "description" : "Wage code summaries with aggregated amounts and counts", + "readOnly" : true + }, + "ResponseWrapperSalaryV2Specification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Specification" + } + } + }, + "SalaryV2Payment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/SalaryV2Employee" + }, + "employment" : { + "$ref" : "#/components/schemas/Employment" + }, + "date" : { + "type" : "string", + "description" : "Voucher date." + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "grossAmount" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "payrollTaxMunicipality" : { + "$ref" : "#/components/schemas/Municipality" + }, + "division" : { + "$ref" : "#/components/schemas/Company" + }, + "holidayAllowanceRate" : { + "type" : "number", + "readOnly" : true + }, + "bankAccountOrIban" : { + "type" : "string", + "readOnly" : true + }, + "payrollTaxPercentage" : { + "type" : "number", + "readOnly" : true + }, + "deliveryMethodPaySlip" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MANUAL", "PRINT", "EMAIL", "APP" ] + }, + "isTaxCardMissing" : { + "type" : "boolean", + "readOnly" : true + }, + "comment" : { + "type" : "string" + }, + "specifications" : { + "type" : "array", + "description" : "Link to salary specifications.", + "items" : { + "$ref" : "#/components/schemas/SalaryV2Specification" + } + }, + "travelExpenses" : { + "type" : "array", + "description" : "Link to salary specifications.", + "items" : { + "$ref" : "#/components/schemas/SalaryV2TravelExpense" + } + }, + "employeeHourlyWage" : { + "type" : "number", + "readOnly" : true + }, + "seamenDaysOnBoard" : { + "type" : "integer", + "format" : "int32" + }, + "lastMonthPaidAmount" : { + "type" : "number", + "readOnly" : true + }, + "employeeSalaryDate" : { + "type" : "string", + "readOnly" : true + }, + "suggestAddReadjustment" : { + "type" : "boolean", + "readOnly" : true + }, + "isEmploymentInfoAmeldinger" : { + "type" : "boolean", + "readOnly" : true + }, + "seamenDeduction" : { + "type" : "boolean" + }, + "validationResults" : { + "$ref" : "#/components/schemas/SalaryV2PaymentValidationResult" + } + } + }, + "SalaryV2PaymentValidationResult" : { + "type" : "object", + "properties" : { + "warnings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ValidationLink" + } + }, + "validations" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ValidationLink" + } + }, + "poisonPills" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + } + }, + "readOnly" : true + }, + "SalaryV2Specification" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "specificationType" : { + "type" : "string", + "description" : "Type of specification; only TYPE_MANUAL are user create- and editable", + "enum" : [ "TYPE_MONTHLY_PAY", "TYPE_HOURLIST", "TYPE_HOURS", "TYPE_TRAVEL_REPORT", "TYPE_TAX", "TYPE_MANUAL", "TYPE_VACATION_ALLOWANCE", "TYPE_VACATION_ALLOWANCE_EXTRA", "TYPE_VACATION_CORRECTION", "TYPE_VACATION_FULL_MONTH_DEDUCTION", "TYPE_LEDGER", "TYPE_FLEXI_ADJUSTMENT", "TYPE_VACATION_ADJUSTMENT", "TYPE_MESAN_BONUS", "TYPE_REGULAR", "TYPE_ABSENCE", "TYPE_READJUSTMENT" ] + }, + "rate" : { + "type" : "number" + }, + "count" : { + "type" : "number" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "freeDimension1" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeDimension2" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "freeDimension3" : { + "$ref" : "#/components/schemas/AccountingDimensionValue" + }, + "salaryType" : { + "$ref" : "#/components/schemas/SalaryV2Type" + }, + "salaryPayment" : { + "$ref" : "#/components/schemas/SalaryV2Payment" + }, + "description" : { + "type" : "string" + }, + "date" : { + "type" : "string", + "description" : "date" + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "amount" : { + "type" : "number" + }, + "paymentAmount" : { + "type" : "number" + }, + "supplement" : { + "$ref" : "#/components/schemas/SalaryV2Supplement" + }, + "externalChangesSinceLastTime" : { + "type" : "boolean" + }, + "costCarrierEditable" : { + "type" : "boolean" + }, + "countAndRateEditable" : { + "type" : "boolean" + }, + "salaryTypeEditable" : { + "type" : "boolean" + }, + "templateIncrement" : { + "type" : "boolean" + }, + "refYear" : { + "type" : "integer", + "format" : "int32" + }, + "freeCarSpec" : { + "type" : "boolean" + }, + "unionSpec" : { + "type" : "boolean" + }, + "validations" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ApiValidationMessage" + } + } + } + }, + "SalaryV2Supplement" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "salarySpecification" : { + "$ref" : "#/components/schemas/SalaryV2Specification" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "taxCountry" : { + "$ref" : "#/components/schemas/Country" + }, + "carNumberOfKm" : { + "type" : "number" + }, + "carNumberOfKmToHomeOrWork" : { + "type" : "number" + }, + "carListPrice" : { + "type" : "number" + }, + "carRegistrationNumber" : { + "type" : "string" + }, + "numberOfJourneys" : { + "type" : "integer", + "format" : "int32" + }, + "upgrossingBasis" : { + "type" : "number" + }, + "upgrossingTableNumber" : { + "type" : "integer", + "format" : "int32" + }, + "yearOfIncome" : { + "type" : "integer", + "format" : "int32" + }, + "deductedArtistTax" : { + "type" : "integer", + "format" : "int32" + }, + "taxPaidAbroad" : { + "type" : "number" + }, + "continentalShaft" : { + "type" : "boolean" + }, + "startDate" : { + "type" : "string", + "description" : "start date, currently only for Norwegian Continental Shaft" + }, + "endDate" : { + "type" : "string", + "description" : "end date, currently only for Norwegian Continental Shaft" + }, + "numberOfDays" : { + "type" : "integer", + "format" : "int32" + }, + "validations" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ApiValidationMessage" + } + } + }, + "readOnly" : true + }, + "SalaryV2TravelExpense" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "isExpense" : { + "type" : "boolean" + }, + "specifications" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalaryV2Specification" + } + }, + "title" : { + "type" : "string" + }, + "salaryDescription" : { + "type" : "string" + } + }, + "description" : "Link to salary specifications." + }, + "SalaryV2Type" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "displayName" : { + "type" : "string" + }, + "payStatementCode" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "showInTimesheet" : { + "type" : "boolean", + "readOnly" : true + }, + "taxable" : { + "type" : "boolean", + "readOnly" : true + }, + "payrollTaxable" : { + "type" : "boolean", + "readOnly" : true + }, + "vacationPayable" : { + "type" : "boolean", + "readOnly" : true + }, + "sickPayable" : { + "type" : "boolean", + "readOnly" : true + }, + "payment" : { + "type" : "boolean", + "readOnly" : true + }, + "vacationAllowance" : { + "type" : "boolean", + "readOnly" : true + }, + "requiresAdditionalInfo" : { + "type" : "boolean", + "readOnly" : true + }, + "requiresSupplement" : { + "type" : "boolean", + "readOnly" : true + }, + "requiredSupplementFields" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "COUNTRY", "TAX_COUNTRY", "CAR_NUMBER_OF_KM", "CAR_NUMBER_OF_KM_TO_HOME_OR_WORK", "CAR_LIST_PRICE", "CAR_REGISTRATION_NUMBER", "NUMBER_OF_JOURNEYS", "UPGROSSING_BASIS", "UPGROSSING_TABLE_NUMBER", "YEAR_OF_INCOME", "DEDUCTED_ARTIST_TAX", "TAX_PAID_ABROAD", "SUPPORT_VESSEL", "IS_CONTINENTAL_SHAFT", "NORWEGIAN_SHAFT_PERIOD", "NORWEGIAN_SHAFT_FIRST_60_DAYS", "NUMBER_OF_DAYS" ] + } + }, + "rate" : { + "type" : "number", + "readOnly" : true + }, + "percentIncrease" : { + "type" : "number", + "readOnly" : true + }, + "maxRate" : { + "type" : "number", + "readOnly" : true + }, + "minRate" : { + "type" : "number", + "readOnly" : true + }, + "calcType" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + } + }, + "ValidationLink" : { + "type" : "object", + "properties" : { + "message" : { + "type" : "string", + "readOnly" : true + }, + "href" : { + "type" : "string", + "readOnly" : true + }, + "linkDescription" : { + "type" : "string", + "readOnly" : true + }, + "automatedAction" : { + "type" : "boolean", + "readOnly" : true + }, + "severity" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "warning", "info" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperSalaryV2Payment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Payment" + } + } + }, + "ResponseWrapperSalaryPermission" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryPermission" + } + } + }, + "SalaryPermission" : { + "type" : "object", + "properties" : { + "canAccessAnnualAccounts" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperSalaryV2Settings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Settings" + } + } + }, + "SalaryV2Settings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "prefersOtherPayrollTaxCalculationMethod" : { + "type" : "boolean" + } + } + }, + "ListResponseSalaryV2Specification" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2Specification" + } + } + } + }, + "ResponseWrapperSalaryV2Supplement" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Supplement" + } + } + }, + "ResponseWrapperSalaryV2Transaction" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Transaction" + } + } + }, + "SalaryV2PaymentType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "typeOfPayment" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NONE", "NOT_PAID", "NETS", "AUTOPAY", "POSTING_RULE", "ZTL" ] + }, + "currency" : { + "$ref" : "#/components/schemas/Currency" + }, + "accountId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "Payment type in use, or default payment type", + "readOnly" : true + }, + "SalaryV2Transaction" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "description" : "Voucher date." + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "month" : { + "type" : "integer", + "format" : "int32" + }, + "periodAsString" : { + "type" : "string" + }, + "isHistorical" : { + "type" : "boolean", + "description" : "With historical wage vouchers you can update the wage system with information dated before the opening balance." + }, + "payrollTaxCalcMethod" : { + "type" : "string", + "description" : "Employee National Insurance calculation method" + }, + "voucherComment" : { + "type" : "string", + "description" : "Comment on voucher" + }, + "payslipGeneralComment" : { + "type" : "string", + "description" : "Comment to be shown on all payslips" + }, + "completed" : { + "type" : "boolean" + }, + "reversed" : { + "type" : "boolean" + }, + "reverser" : { + "type" : "boolean" + }, + "okAllowReverseDifferentDate" : { + "type" : "boolean" + }, + "paySlipsAvailableDate" : { + "type" : "string", + "description" : "The date payslips are made available to the employee. Defaults to voucherDate." + }, + "salaryPayments" : { + "type" : "array", + "description" : "Link to individual payslip objects.", + "items" : { + "$ref" : "#/components/schemas/SalaryV2Payment" + } + }, + "paymentDate" : { + "type" : "string", + "description" : "The date payslips are paid" + }, + "notDeletableMessage" : { + "type" : "array", + "description" : "List of messages that explain why voucher cannot be deleted", + "readOnly" : true, + "items" : { + "type" : "string", + "description" : "List of messages that explain why voucher cannot be deleted", + "readOnly" : true + } + }, + "hasBankTransfers" : { + "type" : "boolean" + }, + "voucher" : { + "$ref" : "#/components/schemas/SalaryV2Voucher" + }, + "allowDeletePayments" : { + "type" : "boolean", + "description" : "True if bank payments are deletable" + }, + "sumPaidAmount" : { + "type" : "number", + "readOnly" : true + }, + "sumTaxDeductionAmount" : { + "type" : "number", + "readOnly" : true + }, + "anyExternalChangesOnThisTransaction" : { + "type" : "boolean" + }, + "attachment" : { + "$ref" : "#/components/schemas/Document" + }, + "ameldingWageId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "containsNegativeWps" : { + "type" : "boolean" + }, + "useLandscapeForBankList" : { + "type" : "boolean" + }, + "numberEmployees" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "wagePeriodTransactionId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "ameldingWageNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "wagePeriodTransactionNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "reverseVoucherDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "urlDetails" : { + "type" : "string", + "readOnly" : true + }, + "paymentType" : { + "$ref" : "#/components/schemas/SalaryV2PaymentType" + } + } + }, + "SalaryV2Voucher" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "number" : { + "minimum" : 0, + "type" : "integer", + "description" : "System generated number that cannot be changed.", + "format" : "int32", + "readOnly" : true + }, + "reverseVoucher" : { + "$ref" : "#/components/schemas/SalaryV2Voucher" + }, + "numberAsString" : { + "type" : "string" + }, + "urlDetails" : { + "type" : "string" + }, + "deletable" : { + "type" : "boolean" + }, + "reversible" : { + "type" : "boolean" + }, + "ztlOrAutoPayInProgress" : { + "type" : "boolean" + }, + "notDeletableMessage" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "attachmentId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperListSalaryV2Employee" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalaryV2Employee" + } + } + } + }, + "ListResponseListChangeLog" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ChangeLog" + } + } + } + } + }, + "ResponseWrapperSalaryV2Modules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Modules" + } + } + }, + "SalaryV2Modules" : { + "type" : "object", + "properties" : { + "moduleDepartment" : { + "type" : "boolean", + "description" : "Module department", + "readOnly" : true + }, + "moduleNets" : { + "type" : "boolean", + "description" : "Module Nets", + "readOnly" : true + }, + "moduleAutopay" : { + "type" : "boolean", + "description" : "Module Autopay", + "readOnly" : true + }, + "moduleZtl" : { + "type" : "boolean", + "description" : "Module Ztl", + "readOnly" : true + }, + "moduleAgro" : { + "type" : "boolean", + "description" : "Module Agro", + "readOnly" : true + }, + "moduleMamut" : { + "type" : "boolean", + "description" : "Module Mamut", + "readOnly" : true + }, + "moduleEncryptedPayslip" : { + "type" : "boolean", + "description" : "Module Encrypted Payslip", + "readOnly" : true + }, + "moduleUnionDeduction" : { + "type" : "boolean", + "description" : "Module Union Deduction", + "readOnly" : true + }, + "moduleFreeCompanyCar" : { + "type" : "boolean", + "description" : "Module Free Company Car", + "readOnly" : true + }, + "moduleMesan" : { + "type" : "boolean", + "description" : "Module Mesan", + "readOnly" : true + }, + "moduleDepartmentAccounting" : { + "type" : "boolean", + "description" : "Module department accounting", + "readOnly" : true + }, + "moduleWageProjectAccounting" : { + "type" : "boolean", + "description" : "Module wage project accounting", + "readOnly" : true + }, + "moduleElectronicVoucher" : { + "type" : "boolean", + "description" : "Module Electronic vouchers", + "readOnly" : true + }, + "moduleSeamenDeduction" : { + "type" : "boolean", + "description" : "Module seamen deduction", + "readOnly" : true + }, + "freeDimension1Active" : { + "type" : "boolean", + "description" : "Whether free dimension 1 is active for this company", + "readOnly" : true + }, + "freeDimension1Name" : { + "type" : "string", + "description" : "Name of free dimension 1", + "readOnly" : true + }, + "freeDimension2Active" : { + "type" : "boolean", + "description" : "Whether free dimension 2 is active for this company", + "readOnly" : true + }, + "freeDimension2Name" : { + "type" : "string", + "description" : "Name of free dimension 2", + "readOnly" : true + }, + "freeDimension3Active" : { + "type" : "boolean", + "description" : "Whether free dimension 3 is active for this company", + "readOnly" : true + }, + "freeDimension3Name" : { + "type" : "string", + "description" : "Name of free dimension 3", + "readOnly" : true + } + } + }, + "ResponseWrapperListSalaryV2EmployeeToEmploymentsRelationship" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalaryV2EmployeeToEmploymentsRelationship" + } + } + } + }, + "SalaryV2EmployeeToEmploymentsRelationship" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/SalaryV2Employee" + }, + "employments" : { + "type" : "array", + "description" : "Employments", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employment" + } + } + } + }, + "ResponseWrapperListSalaryV2PaymentType" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalaryV2PaymentType" + } + } + } + }, + "ReverseSalaryArgs" : { + "type" : "object", + "properties" : { + "employeeIds" : { + "type" : "string" + }, + "reverseVoucherDate" : { + "type" : "string" + } + } + }, + "ResponseWrapperSalaryV2OverviewData" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2OverviewData" + } + } + }, + "SalaryV2OverviewData" : { + "type" : "object", + "properties" : { + "salaryPayments" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2OverviewDataSalaryPayment" + } + }, + "rows" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2OverviewDataWageCodeRow" + } + } + } + }, + "SalaryV2OverviewDataSalaryPayment" : { + "type" : "object", + "properties" : { + "salaryPaymentId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "paymentAmount" : { + "type" : "number", + "readOnly" : true + }, + "payrollTaxBasisAmount" : { + "type" : "number", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "readOnly" : true + }, + "SalaryV2OverviewDataWageCodeColumn" : { + "type" : "object", + "properties" : { + "salaryPaymentId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "count" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "isHours" : { + "type" : "boolean", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + } + }, + "readOnly" : true + }, + "SalaryV2OverviewDataWageCodeRow" : { + "type" : "object", + "properties" : { + "salaryTypeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "totalCount" : { + "type" : "number", + "readOnly" : true + }, + "totalAmount" : { + "type" : "number", + "readOnly" : true + }, + "isPayrollTaxable" : { + "type" : "boolean", + "readOnly" : true + }, + "columns" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2OverviewDataWageCodeColumn" + } + } + }, + "readOnly" : true + }, + "CreateSalaryEmployeeToEmploymentRelationship" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/CreateSalaryEmployee" + }, + "employments" : { + "type" : "array", + "description" : "Employments", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Employment" + } + }, + "validationResults" : { + "type" : "array", + "description" : "ValidationResults", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2PaymentValidationResult" + } + }, + "previousSalaries" : { + "type" : "array", + "description" : "Previous Salaries", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PreviousSalaryAggregates" + } + } + }, + "readOnly" : true + }, + "ListResponseCreateSalaryEmployeeToEmploymentRelationship" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CreateSalaryEmployeeToEmploymentRelationship" + } + } + } + }, + "PreviousSalaryAggregates" : { + "type" : "object", + "properties" : { + "salaryTransactionId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "wagePaymentIdOfEmployee" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "isAccessibleToLoggedInUser" : { + "type" : "boolean", + "readOnly" : true + } + }, + "description" : "Previous Salaries", + "readOnly" : true + }, + "ResponseWrapperListSalaryV2Voucher" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalaryV2Voucher" + } + } + } + }, + "ResponseWrapperSalaryV2TravelExpense" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2TravelExpense" + } + } + }, + "ResponseWrapperSalaryV2Type" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Type" + } + } + }, + "ListResponseSalaryV2Type" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryV2Type" + } + } + } + }, + "ResponseWrapperSalaryV2Voucher" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryV2Voucher" + } + } + }, + "ResponseWrapperSalarySettingsInternal" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalarySettingsInternal" + } + } + }, + "SalarySettingsInternal" : { + "type" : "object", + "properties" : { + "isPaidInAdvance" : { + "type" : "boolean", + "description" : "Is salary paid in advance" + }, + "halfTaxMonth" : { + "type" : "string", + "description" : "Month for half tax", + "enum" : [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER", "NOT_CHOSEN" ] + }, + "vacationCorrectionMonth" : { + "type" : "string", + "description" : "Month for salary correction", + "enum" : [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER", "NOT_CHOSEN" ] + }, + "vacationMonth" : { + "type" : "string", + "description" : "Month for vacation", + "enum" : [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER", "NOT_CHOSEN" ] + }, + "vacationPayMonth" : { + "type" : "string", + "description" : "Month for vacation pay", + "enum" : [ "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER", "NOT_CHOSEN" ] + }, + "isFreeCar" : { + "type" : "boolean", + "description" : "Company has free car" + }, + "isUnionDeduction" : { + "type" : "boolean", + "description" : "Company has union deduction" + }, + "moduleSalaryApproval" : { + "type" : "boolean", + "description" : "Company has salary approval module" + }, + "taxBankAccountNumber" : { + "type" : "string", + "description" : "Bank account number of tax account" + }, + "expensesIncludeVouchersOnly" : { + "type" : "boolean", + "description" : "Expenses include vouchers only" + } + } + }, + "ResponseWrapperSalaryTaxcardInternal" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryTaxcardInternal" + } + } + }, + "SalaryAdvanceTaxcardInternal" : { + "type" : "object", + "properties" : { + "altinnTaxDeductionCardId" : { + "$ref" : "#/components/schemas/SalaryTaxcardInternal" + }, + "trekkode" : { + "type" : "string" + }, + "trekkodeDescription" : { + "type" : "string" + }, + "type" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "typeDescription" : { + "type" : "string" + }, + "tabelltype" : { + "type" : "string" + }, + "tabellnummer" : { + "type" : "string" + }, + "prosentsats" : { + "type" : "number" + }, + "antallMndForTrekk" : { + "type" : "number" + }, + "frikortbelop" : { + "type" : "number" + }, + "remainingFreeCardAmount" : { + "type" : "number" + } + } + }, + "SalaryTaxcardInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "advanceTaxcards" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalaryAdvanceTaxcardInternal" + } + }, + "additionalInfo" : { + "type" : "string" + }, + "date" : { + "type" : "string" + }, + "utstedtDato" : { + "type" : "string" + }, + "arbeidstakerIdentifikator" : { + "type" : "string" + }, + "status" : { + "type" : "string" + }, + "statusDescription" : { + "type" : "string" + }, + "orderId" : { + "type" : "integer", + "format" : "int32" + }, + "altinn3taxcardOrderId" : { + "type" : "integer", + "format" : "int64" + }, + "yearOfIncome" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "skattekortIdentifikator" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "deductionPeriod" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "payrollTaxMunicipalityId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + } + }, + "PrepareTaxcardsArgsInternal" : { + "type" : "object", + "properties" : { + "employeeIds" : { + "type" : "string" + }, + "contactEmployeeId" : { + "type" : "integer", + "format" : "int32" + }, + "contactEmail" : { + "type" : "string" + }, + "taxcardYear" : { + "type" : "integer", + "format" : "int32" + }, + "mobilePhone" : { + "type" : "string" + }, + "mobilePhoneCountryId" : { + "type" : "integer", + "format" : "int32" + }, + "notificationType" : { + "type" : "string" + } + } + }, + "ListResponseTaxcardEmployeeInternal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxcardEmployeeInternal" + } + } + } + }, + "TaxcardEmployeeInternal" : { + "type" : "object", + "properties" : { + "taxcard" : { + "$ref" : "#/components/schemas/SalaryTaxcardInternal" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "id" : { + "type" : "integer", + "format" : "int32" + }, + "displayName" : { + "type" : "string" + }, + "number" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "PhonePrefixCountryInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperPhonePrefixCountryInternal" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PhonePrefixCountryInternal" + } + } + }, + "ListResponsePhonePrefixCountryInternal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PhonePrefixCountryInternal" + } + } + } + }, + "ListResponseReportingCompanyInternal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReportingCompanyInternal" + } + } + } + }, + "ReportingCompanyInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperTaxcardContactInternal" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxcardContactInternal" + } + } + }, + "TaxcardContactInternal" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberMobileCountry" : { + "$ref" : "#/components/schemas/Country" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "email" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseTaxcardContactInternal" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxcardContactInternal" + } + } + } + }, + "ListResponseUnionDetails" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/UnionDetails" + } + } + } + }, + "UnionDetails" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "description" : "Union details name to comply with Dropdown", + "readOnly" : true + } + }, + "readOnly" : true + }, + "WageSpecificationTemplate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string" + }, + "wageCodeId" : { + "type" : "integer", + "format" : "int32" + }, + "startDate" : { + "type" : "string", + "description" : "StarDate" + }, + "endDate" : { + "type" : "string", + "description" : "EndDate" + }, + "type" : { + "maximum" : 17, + "minimum" : 1, + "type" : "integer", + "format" : "int32" + }, + "amount" : { + "minimum" : 0, + "type" : "number" + }, + "percentage" : { + "minimum" : 0, + "type" : "number" + }, + "maxPaymentAmount" : { + "minimum" : 0, + "type" : "number" + }, + "wageSpecificationExtra" : { + "$ref" : "#/components/schemas/SalaryV2Supplement" + } + } + }, + "ResponseWrapperWageSpecificationTemplate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/WageSpecificationTemplate" + } + } + }, + "ResponseWrapperSalaryCompilation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryCompilation" + } + } + }, + "SalaryCompilation" : { + "type" : "object", + "properties" : { + "employee" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "vacationPayBasis" : { + "type" : "number", + "readOnly" : true + }, + "wages" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryCompilationLine" + } + }, + "expenses" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryCompilationLine" + } + }, + "taxDeductions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryCompilationLine" + } + }, + "mandatoryTaxDeductions" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryCompilationLine" + } + } + } + }, + "SalaryCompilationLine" : { + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "taxable" : { + "type" : "boolean", + "readOnly" : true + }, + "taxableDescription" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperPayslip" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Payslip" + } + } + }, + "ListResponsePayslip" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Payslip" + } + } + } + }, + "ResponseWrapperSalarySettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalarySettings" + } + } + }, + "SalarySettings" : { + "type" : "object", + "properties" : { + "municipality" : { + "$ref" : "#/components/schemas/Municipality" + }, + "payrollTaxCalcMethod" : { + "type" : "string", + "description" : "Define the Payroll Tax Calculation Method. AA General industries,BB Central government administration and health trusts, CC Exempted business sectors (and undertakings in economic difficulty),DD Agriculture and forestry, fisheries etc., EE Reporting of payroll withholding tax only,GG Road freight transport", + "enum" : [ "AA", "BB", "CC", "C2", "DD", "EE", "GG", "JJ", "" ] + } + } + }, + "CompanyHoliday" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "days" : { + "type" : "number" + }, + "vacationPayPercentage1" : { + "type" : "number" + }, + "vacationPayPercentage2" : { + "type" : "number" + }, + "isMaxPercentage2Amount6G" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ResponseWrapperCompanyHoliday" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyHoliday" + } + } + }, + "ListResponseCompanyHoliday" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyHoliday" + } + } + } + }, + "GlobalPension" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + }, + "number" : { + "type" : "string" + }, + "fromDate" : { + "type" : "string" + }, + "toDate" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseGlobalPension" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GlobalPension" + } + } + } + }, + "PensionScheme" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "pensionSchemeId" : { + "type" : "integer", + "format" : "int32" + }, + "number" : { + "type" : "string" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ResponseWrapperPensionScheme" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PensionScheme" + } + } + }, + "ListResponsePensionScheme" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PensionScheme" + } + } + } + }, + "CompanyStandardTime" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "fromDate" : { + "type" : "string" + }, + "hoursPerDay" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ResponseWrapperCompanyStandardTime" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyStandardTime" + } + } + }, + "ListResponseCompanyStandardTime" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyStandardTime" + } + } + } + }, + "ResponseWrapperSalarySpecification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalarySpecification" + } + } + }, + "ListResponseSalarySpecification" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalarySpecification" + } + } + } + }, + "ResponseWrapperSalarySpecificationSupplement" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalarySpecificationSupplement" + } + } + }, + "ResponseWrapperSalaryTransaction" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryTransaction" + } + } + }, + "ListResponseSalaryTransaction" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryTransaction" + } + } + } + }, + "ResponseWrapperScoreboardUserDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ScoreboardUserDTO" + } + } + }, + "ScoreboardUserDTO" : { + "type" : "object", + "properties" : { + "nickname" : { + "type" : "string" + }, + "maxScore" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "gamesPlayed" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + } + } + }, + "LeaderboardEntryDTO" : { + "type" : "object", + "properties" : { + "rank" : { + "minimum" : 1, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "nickname" : { + "type" : "string", + "readOnly" : true + }, + "score" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "currentUser" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "LeaderboardResponseDTO" : { + "type" : "object", + "properties" : { + "topPlayers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/LeaderboardEntryDTO" + } + }, + "currentPlayer" : { + "$ref" : "#/components/schemas/LeaderboardEntryDTO" + } + } + }, + "ResponseWrapperLeaderboardResponseDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/LeaderboardResponseDTO" + } + } + }, + "ResponseWrapper" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object" + } + } + }, + "ShardInfo" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + }, + "lifeCycleStage" : { + "type" : "string" + } + } + }, + "ResponseWrapperCompanyVerificationType" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "UNVERIFIED", "VERIFIED_ACCOUNTANT", "VERIFIED_CLIENT_OF_ACCOUNTANT", "VERIFIED_CUSTOMER_BANKID", "VERIFIED_BY_ALTINN_MESSAGE", "VERIFIED_BY_TRIPLETEX_SUPPORT", "VERIFIED_BANK_AGREEMENT", "VERIFIED_TRIPLETEX" ] + } + } + }, + "ResponseWrapperSignatureStatus" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "NOT_SIGNED", "PENDING_SIGNATURE", "SIGNED", "NOT_A_SIGNER" ] + } + } + }, + "ListResponseSignatureCombination" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SignatureCombination" + } + } + } + }, + "SignatureCombination" : { + "type" : "object", + "properties" : { + "signatureCombinationDescription" : { + "type" : "string", + "readOnly" : true + }, + "uniqueKey" : { + "type" : "string", + "readOnly" : true + }, + "companyRepresentativeDTOList" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyRepresentative" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperMapStringBoolean" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean" + } + } + } + }, + "ResponseWrapperSnowplowContextSnowplowGlobalCompany" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SnowplowContextSnowplowGlobalCompany" + } + } + }, + "SnowplowContextSnowplowGlobalCompany" : { + "type" : "object", + "properties" : { + "schema" : { + "type" : "string", + "readOnly" : true + }, + "data" : { + "$ref" : "#/components/schemas/SnowplowGlobalCompany" + } + } + }, + "SnowplowGlobalCompany" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isPaying" : { + "type" : "boolean", + "readOnly" : true + }, + "customerType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "Mamut", "Agro", "Paying", "Free", "Test" ] + }, + "package" : { + "type" : "string", + "readOnly" : true + }, + "pilotFeatures" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string" + } + }, + "registrationDate" : { + "type" : "string", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "readOnly" : true + }, + "isAccountant" : { + "type" : "boolean", + "readOnly" : true + }, + "organizationNumber" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperSnowplowContextSnowplowGlobalEmployee" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SnowplowContextSnowplowGlobalEmployee" + } + } + }, + "SnowplowContextSnowplowGlobalEmployee" : { + "type" : "object", + "properties" : { + "schema" : { + "type" : "string", + "readOnly" : true + }, + "data" : { + "$ref" : "#/components/schemas/SnowplowGlobalEmployee" + } + } + }, + "SnowplowGlobalEmployee" : { + "type" : "object", + "properties" : { + "userId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexEmployeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isAccountant" : { + "type" : "boolean", + "readOnly" : true + }, + "roleIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperSseInitializationResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SseInitializationResult" + } + } + }, + "SseInitializationResult" : { + "type" : "object", + "properties" : { + "contextId" : { + "type" : "integer", + "description" : "The contextId of the employee", + "format" : "int64", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "description" : "The companyId of the employee", + "format" : "int64", + "readOnly" : true + }, + "currentHiddenCursor" : { + "type" : "integer", + "description" : "The current hidden cursor", + "format" : "int64", + "readOnly" : true + }, + "currentReadCursor" : { + "type" : "integer", + "description" : "The current read cursor", + "format" : "int64", + "readOnly" : true + } + } + }, + "ListResponseSupplier" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Supplier" + } + } + } + }, + "ResponseWrapperSupplier" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Supplier" + } + } + }, + "ListResponseSupplierInvoice" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierInvoice" + } + } + } + }, + "OrderLinePosting" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "posting" : { + "$ref" : "#/components/schemas/Posting" + }, + "orderLine" : { + "$ref" : "#/components/schemas/OrderLine" + } + } + }, + "ResponseWrapperVoucherApprovalListElement" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherApprovalListElement" + } + } + }, + "ListResponseVoucherApprovalListElement" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherApprovalListElement" + } + } + } + }, + "AutomationRuleDetails" : { + "type" : "object", + "properties" : { + "automationRuleId" : { + "type" : "integer", + "format" : "int32" + }, + "description" : { + "type" : "string" + }, + "accountId" : { + "type" : "integer", + "format" : "int32" + }, + "vatTypeId" : { + "type" : "integer", + "format" : "int32" + }, + "amountMax" : { + "type" : "number" + }, + "amountMaxMonthly" : { + "type" : "number" + }, + "departmentId" : { + "type" : "integer", + "format" : "int32" + }, + "autoPayBankAgreementId" : { + "type" : "integer", + "format" : "int32" + }, + "selectedPaymentType" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "enabled" : { + "type" : "boolean" + }, + "distributionKeyId" : { + "type" : "integer", + "format" : "int32" + }, + "distributionKeyName" : { + "type" : "string", + "readOnly" : true + }, + "accountName" : { + "type" : "string" + }, + "departmentName" : { + "type" : "string" + }, + "paymentType" : { + "type" : "string" + } + }, + "description" : "The vendor rule details of the vendor if he/she has chosen to have his own rules on the automation instead of FabricAi." + }, + "ListResponseSupplierAutomation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierAutomation" + } + } + } + }, + "SupplierAutomation" : { + "type" : "object", + "properties" : { + "vendorId" : { + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "vendorAccountNumber" : { + "type" : "integer", + "format" : "int32" + }, + "activated" : { + "type" : "boolean", + "description" : "Is automation activated?" + }, + "automatedCount" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of automated vouchers", + "format" : "int32" + }, + "voucherCountLast190DaysEhf" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of EHF vouchers last 190 days.", + "format" : "int32" + }, + "voucherCountLast190DaysNonEhf" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of non-EHF vouchers last 190 days.", + "format" : "int32" + }, + "voucherCount" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of EHF vouchers send from this supplier regardless of time.", + "format" : "int32", + "readOnly" : true + }, + "canSendEhf" : { + "type" : "boolean", + "description" : "Whether the vendor can send EHF" + }, + "email" : { + "type" : "string", + "description" : "email of the vendor" + }, + "automationRulesDetails" : { + "$ref" : "#/components/schemas/AutomationRuleDetails" + }, + "paymentTypeFabricAi" : { + "minimum" : 0, + "type" : "integer", + "description" : "If set, the payment type to be used when automating an invoice from this vendor.", + "format" : "int64" + }, + "paymentTypeName" : { + "type" : "string", + "description" : "Description of the payment type" + }, + "invoicesWithValidPredictionCount" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of invoices with valid predictions", + "format" : "int32" + }, + "amountMaxFabricAiVendorInvoice" : { + "type" : "integer", + "description" : "If set, gives the amount limit for automating invoices for this vendor, it the total invoice amount is above the limit, the invoice is not automated.", + "format" : "int32" + }, + "dateRequestEhfSent" : { + "type" : "string", + "description" : "The date the user has sent the request to a supplier to receive EHF." + }, + "allowSendEhfRequest" : { + "type" : "boolean", + "description" : "Whether to allow sending EHF requests" + }, + "voucherCountLast90DaysNonEhf" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of non-EHF vouchers last 90 days.", + "format" : "int32" + }, + "readyForAutomation" : { + "type" : "string", + "description" : "Ready for automation status", + "enum" : [ "0", "1", "2" ] + }, + "lastChangedBy" : { + "type" : "string", + "description" : "Last Changed By which employee" + }, + "lastChangedDate" : { + "type" : "string", + "description" : "Last changed Date for the activation" + } + }, + "readOnly" : true + }, + "AutomationSettingsDTO" : { + "type" : "object", + "properties" : { + "canAccessAutoPay" : { + "type" : "boolean" + }, + "canAccessFabricAi" : { + "type" : "boolean" + }, + "canAccessFabricAiTraining" : { + "type" : "boolean" + }, + "canAddAutoPayPayments" : { + "type" : "boolean" + }, + "canAccessWelcomeBanner" : { + "type" : "boolean" + }, + "automationLevelOption" : { + "type" : "string", + "enum" : [ "MANUAL", "AUTOMATIC_ALL" ] + }, + "standardAmountMax" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "standardPaymentTypeId" : { + "type" : "integer", + "format" : "int64" + }, + "hasTaskFoxTestCompanies" : { + "type" : "boolean" + }, + "hasBankIntegration" : { + "type" : "boolean" + }, + "standardPaymentTypeName" : { + "type" : "string" + }, + "postingRuleId" : { + "type" : "integer", + "format" : "int64" + }, + "companyName" : { + "type" : "string" + }, + "controlLevel" : { + "type" : "string", + "enum" : [ "STANDARD", "PERCENT_60", "PERCENT_40" ] + }, + "hasBookkeepingBeforeAttestationSetting" : { + "type" : "boolean" + }, + "hasVoucherApprovalModule" : { + "type" : "boolean" + }, + "testAccount" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperAutomationSettingsDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AutomationSettingsDTO" + } + } + }, + "ResponseWrapperTrialInfoAutomation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TrialInfoAutomation" + } + } + }, + "TrialInfoAutomation" : { + "type" : "object", + "properties" : { + "totalCouldBeAutomated190days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalCouldBeAutomated365days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "percentSuggestionsEHF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "percentAutomatedEHF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalEHFinvoices" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalCorrectSuggestions" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "correctSuggestions190days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "correctSuggestions365days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalAutomated190days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalAutomated365days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countDeactivatedVendors" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "countActivatedVendors" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "getvendorsCouldBeAutomated" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "vendorsNotSendingEhf" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherCountNonEhf" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "percentVendorsNotSendingEhf" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "percentInvoicesNonEhf" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "showProjectHint" : { + "type" : "boolean", + "readOnly" : true + }, + "voucherCount30DaysEHF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherCount30DaysPDF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherCount180DaysEHF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherCount180DaysPDF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherCount365DaysEHF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherCount365DaysPDF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalVendorsSendingEHF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalVendorsSendingPDF" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "allAutomaticallyBooked" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "pdfAutomaticallyBooked" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "ehfAutomaticallyBooked" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "allPartiallyAutomated" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "ehfPartiallyAutomated" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "pdfPartiallyAutomated" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "allManuallyEntered" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "pdfManuallyEntered" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "ehfManuallyEntered" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32" + } + } + } + }, + "ExistingSupplierCustomerWrapper" : { + "type" : "object", + "properties" : { + "foundByNumber" : { + "type" : "boolean", + "readOnly" : true + }, + "foundByName" : { + "type" : "boolean", + "readOnly" : true + }, + "supplierCustomer" : { + "$ref" : "#/components/schemas/SupplierCustomer" + } + } + }, + "ResponseWrapperExistingSupplierCustomerWrapper" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ExistingSupplierCustomerWrapper" + } + } + }, + "SupplierCustomer" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string" + }, + "organizationNumber" : { + "type" : "string" + }, + "customerType" : { + "type" : "integer", + "format" : "int32" + }, + "isInactive" : { + "type" : "boolean" + }, + "isPrivateIndividual" : { + "type" : "boolean" + }, + "phoneNumberMobile" : { + "type" : "string" + }, + "postalAddress" : { + "$ref" : "#/components/schemas/Address" + } + }, + "readOnly" : true + }, + "ListResponseSupplierCustomer" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupplierCustomer" + } + } + } + }, + "ListResponseSupportAccess" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupportAccess" + } + } + } + }, + "SupportAccess" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "clientCompanyName" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true + }, + "createdDate" : { + "type" : "string", + "readOnly" : true + }, + "expiredDate" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperListSupportAccess" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SupportAccess" + } + } + } + }, + "ListResponseSupportDashboardCustomer" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SupportDashboardCustomer" + } + } + } + }, + "SupportDashboardCustomer" : { + "type" : "object", + "properties" : { + "tripletexCompanyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "tripletexCustomerId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "orgNumber" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "category2" : { + "type" : "string", + "readOnly" : true + }, + "category3" : { + "type" : "string", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "readOnly" : true + }, + "suspended" : { + "type" : "boolean", + "readOnly" : true + }, + "bankrupt" : { + "type" : "boolean", + "readOnly" : true + }, + "liquidated" : { + "type" : "boolean", + "readOnly" : true + }, + "forceLiquidated" : { + "type" : "boolean", + "readOnly" : true + }, + "excludedFromDisabling" : { + "type" : "boolean", + "readOnly" : true + }, + "excludedFromDeletion" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ExtraCopilotMetrics" : { + "type" : "object", + "properties" : { + "showTalkToSupportButton" : { + "type" : "boolean" + }, + "chatAvailable" : { + "type" : "boolean" + }, + "chatWithSupportStatus" : { + "type" : "string" + }, + "messagesLength" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "lastRequestId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "lastPrompt" : { + "type" : "string" + }, + "lastMessageSource" : { + "type" : "string" + }, + "lastResponse" : { + "type" : "string" + }, + "lastMessageStatus" : { + "type" : "string" + }, + "lastMessageErrorCode" : { + "type" : "string" + }, + "errorMessageLocaleId" : { + "type" : "string" + }, + "lastMessageFeedback" : { + "type" : "string" + }, + "streamingRequestId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + } + }, + "description" : "Additional metrics for Copilot-related feedback" + }, + "SurveyFeedback" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "surveyType" : { + "type" : "string", + "enum" : [ "1", "2", "3" ] + }, + "rating" : { + "type" : "integer", + "description" : "A rating based on numbers from 1 to 5.", + "format" : "int32" + }, + "comment" : { + "type" : "string", + "description" : "A comment given in addition to the highest rating." + }, + "contactRequest" : { + "type" : "string" + }, + "extraCopilotMetrics" : { + "$ref" : "#/components/schemas/ExtraCopilotMetrics" + } + } + }, + "ResponseWrapperSurvicateConfigDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SurvicateConfigDTO" + } + } + }, + "SurvicateConfigDTO" : { + "type" : "object", + "properties" : { + "workspaceKey" : { + "type" : "string", + "description" : "Survicate workspace key for SDK initialization", + "readOnly" : true + }, + "language" : { + "type" : "string", + "description" : "ISO 639-1 language code (nb or en)", + "readOnly" : true + }, + "themeMode" : { + "type" : "string", + "description" : "Survey theme mode", + "readOnly" : true + }, + "traits" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "description" : "Visitor traits for Survicate targeting and segmentation", + "readOnly" : true + }, + "description" : "Visitor traits for Survicate targeting and segmentation", + "readOnly" : true + } + } + }, + "ResponseWrapperTermsOfService" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TermsOfService" + } + } + }, + "TermsOfService" : { + "type" : "object", + "properties" : { + "renderDialog" : { + "type" : "boolean", + "readOnly" : true + }, + "companyLicense" : { + "$ref" : "#/components/schemas/License" + }, + "renderCompanyLicense" : { + "type" : "boolean", + "readOnly" : true + }, + "userLicense" : { + "$ref" : "#/components/schemas/License" + }, + "renderUserLicense" : { + "type" : "boolean", + "description" : "Terms for the user", + "readOnly" : true + }, + "askCanSign" : { + "type" : "boolean", + "description" : "If there are no account admin and no accountant paying the bills, we don't know who should sign", + "readOnly" : true + }, + "askMarketingConsent" : { + "type" : "boolean", + "readOnly" : true + }, + "newTOSAlive" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "AccountBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "description" : "The ID of the company this account belongs to.", + "format" : "int64" + }, + "bankAccount" : { + "type" : "string", + "description" : "The bank account number associated with this account." + } + } + }, + "ActivityBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "number" : { + "type" : "integer", + "format" : "int32" + }, + "general" : { + "type" : "boolean" + }, + "projectActivity" : { + "type" : "boolean" + }, + "allowTimetracking" : { + "type" : "boolean" + }, + "task" : { + "type" : "boolean" + }, + "chargeable" : { + "type" : "boolean" + }, + "disabled" : { + "type" : "boolean" + } + } + }, + "ActivityExtBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "projectId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "activityId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "closedLogId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + } + } + }, + "AutoPayTransactionBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "amountCurrency" : { + "type" : "number" + }, + "currencyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "isSalary" : { + "type" : "boolean" + }, + "statusId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "internalStatus" : { + "type" : "integer", + "format" : "int32" + }, + "creditorBic" : { + "type" : "string" + }, + "regulatoryReportingCode" : { + "type" : "integer", + "format" : "int32" + }, + "regulatoryReportingInfo" : { + "type" : "integer", + "format" : "int32" + }, + "bookingDate" : { + "type" : "string" + }, + "paymentDate" : { + "type" : "string" + }, + "autopayName" : { + "type" : "string" + } + } + }, + "BankReconciliationMatchResponseBuilder" : { + "type" : "object", + "properties" : { + "bankReconciliationId" : { + "type" : "integer", + "format" : "int64" + }, + "postingIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + }, + "transactionIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + } + }, + "ResponseWrapperBankReconciliationMatchResponseBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BankReconciliationMatchResponseBuilder" + } + } + }, + "BankReconciliationMatchRequestBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "creditAccountNumber" : { + "type" : "integer", + "format" : "int32" + }, + "debitAccountNumber" : { + "type" : "integer", + "format" : "int32" + }, + "postings" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EntryMatchBuilder" + } + }, + "transactions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/EntryMatchBuilder" + } + } + } + }, + "EntryMatchBuilder" : { + "type" : "object", + "properties" : { + "amount" : { + "type" : "number" + }, + "date" : { + "type" : "string" + } + } + }, + "BankStatementBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "fromDate" : { + "type" : "string" + }, + "toDate" : { + "type" : "string" + }, + "accountId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "closingBalanceCurrency" : { + "type" : "number" + }, + "documentId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + } + } + }, + "BankTransactionBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "bankStatementId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "postedDate" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "amountCurrency" : { + "type" : "number" + }, + "accountId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + } + } + }, + "BbsAgreementBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "accountId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "serviceCode" : { + "type" : "integer", + "format" : "int32" + }, + "number" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperListObject" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "type" : "object" + } + } + } + }, + "ResponseWrapperAccessStatus" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "YES", "NO", "UNKNOWN", "NOT_CONFIGURED" ] + } + } + }, + "BoligmappaRestPlantBuilder" : { + "type" : "object", + "properties" : { + "plantType" : { + "type" : "integer", + "description" : "The type of the plant: 1 = Building Plant, 2 = Property Plant", + "format" : "int32", + "readOnly" : true + }, + "buildingType" : { + "type" : "string", + "description" : "The building type of the plant", + "readOnly" : true + }, + "shareNumber" : { + "type" : "integer", + "description" : "The share number of the plant", + "format" : "int32", + "readOnly" : true + }, + "owners" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PlantOwner" + } + }, + "unitNumber" : { + "type" : "string", + "description" : "The unit number of the plant. It is copied from the Address of the Plant", + "readOnly" : true + }, + "city" : { + "type" : "string", + "description" : "The city of the plant. It is copied from the Address of the Plant", + "readOnly" : true + }, + "postalCode" : { + "type" : "string", + "description" : "The postal code of the plant. It is copied from the Address of the Plant", + "readOnly" : true + } + } + }, + "PlantOwner" : { + "type" : "object", + "properties" : { + "firstName" : { + "type" : "string", + "readOnly" : true + }, + "lastName" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "The owners of the plant. Only Property Plants have owners", + "readOnly" : true + }, + "ResponseWrapperListBoligmappaRestPlantBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/BoligmappaRestPlantBuilder" + } + } + } + }, + "CompanyBuilder" : { + "type" : "object", + "properties" : { + "number" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "companyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "accountManagerId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int64" + }, + "inactive" : { + "type" : "boolean" + }, + "invoiceDefaultDueIn" : { + "type" : "integer", + "format" : "int64" + }, + "projectTypeOfContract" : { + "type" : "integer", + "format" : "int32" + }, + "invoiceEmail" : { + "type" : "string" + }, + "invoiceSendSMSNotification" : { + "type" : "boolean" + }, + "invoiceSMSNotificationNumber" : { + "type" : "string" + }, + "salaryStartDate" : { + "type" : "string" + }, + "currencyId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "startDate" : { + "type" : "string" + }, + "municipalityId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "customerType" : { + "type" : "integer", + "format" : "int32" + }, + "merchant" : { + "type" : "boolean" + } + } + }, + "TripletexCompanyBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "type" : { + "type" : "integer", + "format" : "int32" + }, + "customerId" : { + "type" : "integer", + "format" : "int64" + }, + "customerCompanyId" : { + "type" : "integer", + "format" : "int64" + }, + "invoiceNumberOfMonths" : { + "type" : "integer", + "format" : "int32" + }, + "invoiceNumberOfMonthsInAdvance" : { + "type" : "integer", + "format" : "int32" + }, + "priceList" : { + "type" : "string", + "enum" : [ "UNKNOWN", "TRIPLETEX_STANDARD", "AGRO", "MAMUT", "BASIS", "SMART", "KOMPLETT", "VVS_ELEKTRO", "AUTOPLUS", "MIKRO", "INTEGRATION_PARTNER", "PLUSS", "DIYPACKAGE", "PRO" ] + } + } + }, + "ResponseWrapperCompanyBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyBuilder" + } + } + }, + "ResponseWrapperTripletexCompanyBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexCompanyBuilder" + } + } + }, + "CompanyModules" : { + "type" : "object", + "properties" : { + "modules" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "MODULE_TRAVEL_EXPENSE", "MODULE_INVOICE", "MODULE_INVOICE_OPTION_AUTOINVOICE_EHF", "MODULE_INVOICE_OPTION_PAPER", "MODULE_INVOICE_OPTION_EFAKTURA", "MODULE_ACCOUNTING_INTERNAL", "MODULE_ACCOUNTING_EXTERNAL", "MODULE_PROJECT", "MODULE_PRODUCT", "MODULE_CUSTOMER", "MODULE_EMPLOYEE", "MODULE_DEPARTMENT", "APPROVE_TRAVEL_REPORTS", "MODULE_BUDGET", "MODULE_NOTE", "MODULE_TASK", "MODULE_YEAR_END_REPORT", "MODULE_PROJECT_ECONOMY", "MODULE_RORKJOP", "MODULE_PROJECT_BUDGET", "MODULE_PENSION_REPORT", "MODULE_QUANTITY_HANDLING", "MODULE_SUBSCRIPTION", "COMPLETE_WEEKLY_HOURLISTS", "COMPLETE_MONTHLY_HOURLISTS", "APPROVE_MONTHLY_HOURLISTS", "MODULE_BUNCHES", "MODULE_ACCOUNTING_REPORTS", "MODULE_CUSTOMER_CATEGORIES", "MODULE_PAYROLL_ACCOUNTING", "IS_CURRENT_MONTH_DEFAULT_PERIOD", "SHOW_TRAVEL_REPORT_LETTERHEAD", "MODULE_TIME_BALANCE", "MODULE_VACATION_BALANCE", "MODULE_WORKING_HOURS", "MODULE_CREDIT_SCORING", "MODULE_CURRENCY", "MODULE_WAGE_EXPORT", "APPROVE_WEEKLY_HOURLISTS", "MODULE_AUTO_CUSTOMER_NUMBER", "MODULE_AUTO_VENDOR_NUMBER", "MODULE_PROVISION_SALARY", "HIDE_SINGLE_ACTIVITY_ON_INVOICE", "MODULE_ORDER_NUMBER", "MODULE_ORDER_DISCOUNT", "MODULE_ORDER_MARKUP", "MODULE_ORDER_LINE_COST", "MODULE_LOGISTICS_LIGHT", "MODULE_STOP_WATCH", "MODULE_CONTACT", "INVOICE_RESERVE_IS_ZERO_FOR_CLOSED_PROJECT", "IS_TRAVEL_REPORT_TAX_FREE_DIET_RATES", "MODULE_OCR", "MODULE_REMIT", "MODULE_TRAVEL_EXPENSE_RATES", "MODULE_VOUCHER_SCANNING", "MODULE_LOGISTICS", "MODULE_HOURLIST", "PROJECT_ORDER_VIEW_DUE_IN_SCALE", "SEND_PAYSLIPS_BY_EMAIL", "MODULE_EMPLOYEE_CATEGORY", "MODULE_CUSTOMER_CATEGORY1", "MODULE_CUSTOMER_CATEGORY2", "MODULE_CUSTOMER_CATEGORY3", "MODULE_PRODUCT_INVOICE", "IS_AUTO_REMIND_ENABLED_TYPE0", "IS_AUTO_REMIND_ENABLED_TYPE1", "INVOICE_FROM_CURRENT_USER", "INVOICE_BCC_CURRENT_USER", "AUTO_REMIND_DAYS_TYPE0", "AUTO_REMIND_DAYS_TYPE1", "AUTO_REMIND_DAYS_TYPE2", "AUTO_REMIND_DAYS_TYPE3", "PAYSLIP_FROM_CURRENT_USER", "PAYSLIP_BCC_CURRENT_USER", "AUTO_INVOICING", "VALIDATE_HOURS_PER_WEEK_WH", "VALIDATE_HOURS_PER_DAY24", "MODULE_INVOICE_FEE_COMMENT", "INVOICE_ROUNDOFF", "MODULE_EMPLOYEE_ACCOUNTING", "MODULE_DEPARTMENT_ACCOUNTING", "SHOW_DEPARTMENT_INDUSTRY", "MODULE_PROJECT_ACCOUNTING", "MODULE_PRODUCT_ACCOUNTING", "SEND_IMPORTED_INVOICES", "MODULE_ELECTRO", "MODULE_NRF", "MODULE_ELPROFFEN", "MODULE_AMORTIZATION", "MODULE_RESULT_BUDGET", "MODULE_CHANGE_DEBT_COLLECTOR", "INVOICE_PERIOD_COUNT", "INVOICING_PERIOD_TYPE", "INVOICING_PERIOD_UNIT", "IS_AUTO_REMIND_ENABLED_TYPE2", "IS_AUTO_REMIND_ENABLED_TYPE3", "SINGLE_CUSTOMER_INVOICE_COMPRESSES", "MODULE_VOUCHER_TYPES", "MODULE_ONNINEN123", "MODULE_ELEKTRO_UNION", "MODULE_ARCHIVE", "VACATION_BALANCE_REDUCED_DAYS", "IS_ACCOUNTANT", "IS_AUDITOR", "IS_RESELLER", "PROJECT_ACTIVITY_BUDGET_IS_MASTER", "TRAVEL_DIET_IGNORE_POSTING", "TRAVEL_NIGHT_IGNORE_POSTING", "TRAVEL_DRIVING_IGNORE_POSTING", "MODULE_WAREHOUSE", "ORDER_SHOW_ORDER_DATE", "OFFER_SHOW_OFFER_DATE", "MODULE_INVOICE_IMPORT", "MODULE_EMAIL", "PRODUCT_SET_COST_FROM_ORDER_LINE", "INVOICE_SHOW_MARKUP_DISCOUNT", "INVOICE_SHOW_PRODUCT_NUMBER", "MODULE_NETS_PRINT_SALARY", "MODULE_NETS_PRINT_INVOICE", "MODULE_BOLIGMAPPA", "MODULE_APPROVE_VOUCHER", "MODULE_APPROVE_DEPARTMENT_VOUCHER", "MODULE_APPROVE_PROJECT_VOUCHER", "DEFAULT_IS_PRIVATE_CUSTOMER", "MODULE_MESAN", "MODULE_MULTIPLE_LEDGERS", "MODULE_DIVISIONS", "OFFER_FROM_CURRENT_USER", "ORDER_CONFIRMATION_CURRENT_USER", "MODULE_ACCOUNTANT_CONNECT_CLIENT", "MODULE_WAGE_PROJECT_ACCOUNTING", "MODULE_WAGE_AMORTIZATION", "TRIPLETEX_SUPPORT_LOGIN_ACCESS", "MODULE_ACTIVITY_HOURLY_WAGE_WAGE_CODE", "MODULE_SUBSCRIPTIONS_PERIODISATION", "MODULE_API_20", "REMIT_VOUCHERS_ONLY", "MODULE_FINANCE_TAX", "MODULE_SMART_SCAN", "MODULE_ORDER_OUT", "IS_TRAVEL_REPORT_TAX_FREE_DRIVING_RATES", "INCLUDE_TRIPLETEX_ACCOUNTANT_INVOICE_SUMMARY_CSV", "INVOICE_INCLUDE_COMMON_ATTACHMENTS", "MODULE_CONTROL_SCHEMA_REQUIRED_HOUR_TRACKING", "MODULE_CONTROL_SCHEMA_REQUIRED_INVOICING", "MODULE_INVOICE_OPTION_VIPPS", "MODULE_DIGITAL_SIGNATURE", "MODULE_REPORT_ENGINE", "MODULE_RECONCILIATION" ] + } + } + } + }, + "ResponseWrapperCompanyModules" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyModules" + } + } + }, + "DepartmentBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "number" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "externalAccountNumber" : { + "type" : "string" + }, + "departmentManagerEmployeeId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "DocumentBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "xhtml" : { + "type" : "boolean" + } + } + }, + "EmployeeBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "userId" : { + "type" : "integer", + "format" : "int64" + }, + "departmentId" : { + "type" : "integer", + "format" : "int32" + }, + "number" : { + "type" : "string" + }, + "firstName" : { + "type" : "string" + }, + "lastName" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "loginEndDate" : { + "type" : "string" + }, + "employeeCategoryId" : { + "type" : "integer", + "format" : "int64" + }, + "external" : { + "type" : "boolean" + }, + "customerId" : { + "type" : "integer", + "format" : "int64" + }, + "userCategory" : { + "type" : "integer", + "format" : "int64" + }, + "owner" : { + "type" : "boolean" + }, + "auditor" : { + "type" : "boolean" + }, + "accountant" : { + "type" : "boolean" + }, + "enkeltpersonsforetak" : { + "type" : "boolean" + }, + "proxy" : { + "type" : "boolean" + }, + "robot" : { + "type" : "boolean" + }, + "inactive" : { + "type" : "boolean" + }, + "dateOfBirth" : { + "type" : "string" + }, + "allowRegInfo" : { + "type" : "boolean" + }, + "allowLogin" : { + "type" : "boolean" + }, + "wageReceiver" : { + "type" : "boolean" + }, + "createLogId" : { + "type" : "integer", + "format" : "int64" + }, + "payslipOnly" : { + "type" : "boolean" + } + } + }, + "EmployeeDeductionTableBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "percentage" : { + "type" : "number", + "format" : "double" + }, + "taxFreeAmount" : { + "type" : "number", + "format" : "double" + } + } + }, + "EmployeeLoginInfoBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "ip" : { + "type" : "string" + }, + "port" : { + "type" : "string" + }, + "loginResult" : { + "type" : "integer", + "format" : "int32" + }, + "browserDetails" : { + "type" : "string" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "username" : { + "type" : "string" + }, + "timestamp" : { + "type" : "string" + } + } + }, + "EmploymentBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "divisionId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ResponseWrapperEmployeeBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EmployeeBuilder" + } + } + }, + "EmployeeRoleBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "robotEmployeeId" : { + "type" : "integer", + "format" : "int64" + }, + "roleIds" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int32" + } + }, + "customerId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "EnhetsRegisteretBuilder" : { + "type" : "object", + "properties" : { + "orgNumber" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + }, + "address" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "postCity" : { + "type" : "string" + } + } + }, + "HourlistSettingsBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "requireCommentsOnRegisteredHoursAllProjects" : { + "type" : "boolean" + }, + "isCurrentMonthDefaultPeriod" : { + "type" : "boolean" + } + } + }, + "HourBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "activityId" : { + "type" : "integer", + "format" : "int64" + }, + "hours" : { + "type" : "number", + "format" : "double" + }, + "comment" : { + "type" : "string" + }, + "invoiceId" : { + "type" : "integer", + "format" : "int64" + }, + "approved" : { + "type" : "boolean" + } + } + }, + "MonthlyHourlistBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "approved" : { + "type" : "boolean" + }, + "completed" : { + "type" : "boolean" + }, + "approvedDate" : { + "type" : "string" + }, + "approvedUntil" : { + "type" : "string" + }, + "approvedById" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "WeeklyHourlistBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "week" : { + "type" : "integer", + "format" : "int64" + }, + "year" : { + "type" : "integer", + "format" : "int64" + }, + "completed" : { + "type" : "boolean" + }, + "approved" : { + "type" : "boolean" + }, + "approvedBy" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "approvedUntil" : { + "type" : "string" + } + } + }, + "NoteBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "content" : { + "type" : "string" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "createdDate" : { + "type" : "string" + }, + "updatedDate" : { + "type" : "string" + } + } + }, + "InvoiceBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "number" : { + "type" : "integer", + "format" : "int64" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "approved" : { + "type" : "boolean" + }, + "charged" : { + "type" : "boolean" + }, + "history" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "expense" : { + "type" : "boolean" + }, + "termOfPayment" : { + "type" : "string" + }, + "amount" : { + "type" : "number", + "format" : "double" + }, + "amountCurrency" : { + "type" : "integer", + "format" : "int32" + }, + "amountExVat" : { + "type" : "number", + "format" : "double" + }, + "amountExVatCurrency" : { + "type" : "integer", + "format" : "int32" + }, + "vendorId" : { + "type" : "integer", + "format" : "int32" + }, + "vendorInvoiceNumber" : { + "type" : "integer", + "format" : "int32" + }, + "currencyId" : { + "type" : "integer", + "format" : "int32" + }, + "voucherId" : { + "type" : "integer", + "format" : "int32" + }, + "kid" : { + "type" : "string" + }, + "externalNumberSeries" : { + "type" : "boolean" + } + } + }, + "InvoiceOrderBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "description" : "The ID of the company for which the invoice is being built.", + "format" : "int64" + }, + "invoiceId" : { + "type" : "integer", + "description" : "The ID of the invoice being built.", + "format" : "int64" + }, + "projectId" : { + "type" : "integer", + "description" : "The ID of the project associated with the invoice.", + "format" : "int64" + }, + "includeHours" : { + "type" : "boolean", + "description" : "Indicates whether to include hours in the invoice order." + } + } + }, + "OrderLineBuilder" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "format" : "int32" + }, + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "invoiceId" : { + "type" : "integer", + "format" : "int64" + }, + "orderLineId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "OrderOutBuilder" : { + "type" : "object", + "properties" : { + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "number" : { + "type" : "string" + }, + "invoiceComment" : { + "type" : "string" + }, + "type" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "PilotFeature" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "pilotFeatures" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "AO_RECONCILIATIONS", "LOGISTICS", "MULTIPLE_LEDGERS", "FINANCIAL_SERVICES", "YEAR_END", "CREATE_SALARY_REDESIGN_MVP", "CHAT", "IMPORT_EHF_IN_API", "JWT_SESSION_TOKENS", "ANOMALY_DETECTION", "KILLBILL_RECURRING_INVOICING", "NONE" ] + } + } + } + }, + "UserPilotFeature" : { + "type" : "object", + "properties" : { + "userPilotFeatures" : { + "type" : "array", + "items" : { + "type" : "string", + "enum" : [ "AO_RECONCILIATIONS", "ANOMALY_DETECTION" ] + } + }, + "userId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "PostingRuleBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "syncId" : { + "type" : "integer", + "format" : "int32" + }, + "description" : { + "type" : "string" + }, + "debitAccountId" : { + "type" : "integer", + "format" : "int64" + }, + "customerId" : { + "type" : "integer", + "format" : "int64" + }, + "vendorId" : { + "type" : "integer", + "format" : "int64" + }, + "paymentIn" : { + "type" : "boolean" + }, + "paymentOut" : { + "type" : "boolean" + }, + "disabled" : { + "type" : "boolean" + }, + "inactive" : { + "type" : "boolean" + }, + "showIncomingInvoice" : { + "type" : "boolean" + }, + "showWagePayment" : { + "type" : "boolean" + }, + "showVatReturns" : { + "type" : "boolean" + }, + "showWagePeriodTransaction" : { + "type" : "boolean" + }, + "showOrderInvoice" : { + "type" : "boolean" + } + } + }, + "ProductBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "elNumber" : { + "type" : "integer", + "format" : "int32" + }, + "number" : { + "type" : "integer", + "format" : "int32" + }, + "vatType" : { + "type" : "integer", + "format" : "int32" + }, + "productUnitId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ProductUnitBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "name" : { + "type" : "string" + }, + "nameShort" : { + "type" : "string" + }, + "commonCode" : { + "type" : "string" + } + } + }, + "ProjectBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "number" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "closed" : { + "type" : "boolean" + }, + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "project" : { + "type" : "boolean" + }, + "allowTimeTrackingForParticipantsOnly" : { + "type" : "boolean" + }, + "internal" : { + "type" : "boolean" + }, + "deliveryAddressId" : { + "type" : "integer", + "format" : "int64" + }, + "currencyId" : { + "type" : "integer", + "format" : "int64" + }, + "parentId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ProjectControlSchemaBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ProjectParticipantBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "projectManager" : { + "type" : "boolean" + }, + "mesanPercentageHourPriceReduction" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ReportBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "ResponseWrapperReportBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReportBuilder" + } + } + }, + "PostCreateRefreshTokenBody" : { + "type" : "object", + "properties" : { + "consumerToken" : { + "type" : "string", + "description" : "Consumer token string" + }, + "employeeToken" : { + "type" : "string", + "description" : "Employee token string" + } + } + }, + "PostDeleteEmployeeTokenBody" : { + "type" : "object", + "properties" : { + "token" : { + "type" : "string", + "description" : "Employee token string to delete" + } + } + }, + "VatSettingsBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "hasVatOutMedium" : { + "type" : "boolean" + }, + "hasVatOutLow" : { + "type" : "boolean" + }, + "hasVatOutInside" : { + "type" : "boolean" + }, + "hasVatOutMediumFish" : { + "type" : "boolean" + }, + "hasVatInMedium" : { + "type" : "boolean" + }, + "vatPostingsPerDepartment" : { + "type" : "boolean" + }, + "status" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperVatSettingsBuilder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatSettingsBuilder" + } + } + }, + "VoucherBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "type" : { + "type" : "integer", + "format" : "int32" + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "description" : { + "type" : "string" + }, + "date" : { + "type" : "string" + } + } + }, + "VoucherSettingsBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "moduleWageInfoPrivacy" : { + "type" : "boolean" + }, + "receptionImportAttachmentless" : { + "type" : "boolean" + } + } + }, + "VoucherStatusBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "voucherId" : { + "type" : "integer", + "format" : "int64" + }, + "status" : { + "type" : "integer", + "format" : "int32" + }, + "type" : { + "type" : "integer", + "format" : "int32" + }, + "timestamp" : { + "type" : "string" + }, + "processOwner" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "EmployeeWageCodeBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "wageCodeId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "WageCodeBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "number" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "inactive" : { + "type" : "boolean" + }, + "hourlistRestrictAccess" : { + "type" : "boolean" + }, + "showInHourlist" : { + "type" : "boolean" + }, + "forceTaxPercentageDeduction" : { + "type" : "boolean" + } + } + }, + "WagePaymentBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "description" : { + "type" : "string" + }, + "vacationAllowanceExtraAmount" : { + "type" : "integer", + "format" : "int32" + }, + "wageTransactionId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "WageSettingsBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "maxEmployeesPerVoucher" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "WageSpecificationBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "wageCodeId" : { + "type" : "integer", + "format" : "int64" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "wagePaymentId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "description" : { + "type" : "string" + }, + "count" : { + "type" : "integer", + "format" : "int32" + }, + "type" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "WageTransactionBuilder" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "integer", + "format" : "int64" + }, + "comment" : { + "type" : "string" + }, + "historical" : { + "type" : "boolean" + }, + "payrollTaxCalcMethod" : { + "type" : "string" + } + } + }, + "ResponseWrapperTimesheetAllocated" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimesheetAllocated" + } + } + }, + "TimesheetAllocated" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + }, + "date" : { + "type" : "string" + }, + "hours" : { + "type" : "number" + }, + "isApproved" : { + "type" : "boolean" + }, + "managerComment" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseTimesheetAllocated" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetAllocated" + } + } + } + }, + "CompanyHolidays" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string" + }, + "percentage" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ResponseWrapperCompanyHolidays" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyHolidays" + } + } + }, + "ListResponseCompanyHolidays" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyHolidays" + } + } + } + }, + "TimeClock" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + }, + "timesheetEntry" : { + "$ref" : "#/components/schemas/TimesheetEntry" + }, + "date" : { + "type" : "string" + }, + "timeStart" : { + "type" : "string" + }, + "timeStop" : { + "type" : "string" + }, + "hoursStart" : { + "minimum" : 0, + "type" : "number" + }, + "lunchBreakDuration" : { + "minimum" : 0, + "type" : "number" + }, + "newTimeSheetEntryComment" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Link to stop watches on this hour.", + "readOnly" : true + }, + "TimesheetEntry" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + }, + "date" : { + "type" : "string" + }, + "hours" : { + "type" : "number" + }, + "chargeableHours" : { + "type" : "number", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "timeClocks" : { + "type" : "array", + "description" : "Link to stop watches on this hour.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimeClock" + } + }, + "comment" : { + "type" : "string" + }, + "locked" : { + "type" : "boolean", + "description" : "Indicates if the hour can be changed.", + "readOnly" : true + }, + "chargeable" : { + "type" : "boolean", + "readOnly" : true + }, + "invoice" : { + "$ref" : "#/components/schemas/Invoice" + }, + "hourlyRate" : { + "type" : "number", + "readOnly" : true + }, + "hourlyCost" : { + "type" : "number", + "readOnly" : true + }, + "hourlyCostPercentage" : { + "type" : "number", + "readOnly" : true + }, + "projectChargeableHours" : { + "maximum" : 24, + "minimum" : 0, + "type" : "number", + "description" : "Number of chargeable hours on an activity connected to a project." + } + }, + "readOnly" : true + }, + "ResponseWrapperTimesheetEntry" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + } + }, + "ResponseWrapperBigDecimal" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "number" + } + } + }, + "ListResponseTimesheetEntry" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + } + } + }, + "TimesheetEntrySearchResponse" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + }, + "sumAllHours" : { + "type" : "number", + "readOnly" : true + } + } + }, + "FlexSummary" : { + "type" : "object", + "properties" : { + "incomingHourBalance" : { + "type" : "number", + "readOnly" : true + }, + "outgoingHourBalance" : { + "type" : "number", + "readOnly" : true + }, + "change" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "HourSummary" : { + "type" : "object", + "properties" : { + "sumHours" : { + "type" : "number", + "readOnly" : true + }, + "hoursWithPay" : { + "type" : "number", + "readOnly" : true + }, + "hourlyWageHoursWithPay" : { + "type" : "number", + "readOnly" : true + }, + "standardTime" : { + "type" : "number", + "readOnly" : true + }, + "nonChargeableHours" : { + "type" : "number", + "readOnly" : true + }, + "chargeableHours" : { + "type" : "number", + "readOnly" : true + }, + "nonChargeableHoursWithPay" : { + "type" : "number", + "readOnly" : true + }, + "budgetChargeableHours" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseMonthlyStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MonthlyStatus" + } + } + } + }, + "MonthlyStatus" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "timesheetEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + }, + "approvedDate" : { + "type" : "string", + "readOnly" : true + }, + "completed" : { + "type" : "boolean", + "readOnly" : true + }, + "approvedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "approved" : { + "type" : "boolean", + "readOnly" : true + }, + "approvedUntilDate" : { + "type" : "string", + "readOnly" : true + }, + "monthYear" : { + "type" : "string", + "readOnly" : true + }, + "hoursPayout" : { + "type" : "number" + }, + "vacationPayout" : { + "type" : "number" + }, + "hourSummary" : { + "$ref" : "#/components/schemas/HourSummary" + }, + "flexSummary" : { + "$ref" : "#/components/schemas/FlexSummary" + }, + "vacationSummary" : { + "$ref" : "#/components/schemas/VacationSummary" + } + }, + "readOnly" : true + }, + "VacationSummary" : { + "type" : "object", + "properties" : { + "incomingVacationBalance" : { + "type" : "number", + "readOnly" : true + }, + "outgoingVacationBalance" : { + "type" : "number", + "readOnly" : true + }, + "vacationTakenInPeriod" : { + "type" : "number", + "readOnly" : true + }, + "vacationTakenThisYear" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperMonthlyStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MonthlyStatus" + } + } + }, + "TimesheetProjectSalaryTypeSpecification" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "project" : { + "$ref" : "#/components/schemas/Project" + }, + "activity" : { + "$ref" : "#/components/schemas/Activity" + }, + "salaryType" : { + "$ref" : "#/components/schemas/SalaryType" + }, + "description" : { + "type" : "string" + }, + "date" : { + "type" : "string" + }, + "count" : { + "type" : "number" + }, + "wagePayment" : { + "$ref" : "#/components/schemas/Payslip" + } + } + }, + "ResponseWrapperTimesheetProjectSalaryTypeSpecification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimesheetProjectSalaryTypeSpecification" + } + } + }, + "ListResponseTimesheetProjectSalaryTypeSpecification" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetProjectSalaryTypeSpecification" + } + } + } + }, + "ResponseWrapperTimesheetSalaryTypeSpecification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimesheetSalaryTypeSpecification" + } + } + }, + "TimesheetSalaryTypeSpecification" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "salaryType" : { + "$ref" : "#/components/schemas/SalaryType" + }, + "description" : { + "type" : "string" + }, + "date" : { + "type" : "string" + }, + "count" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ListResponseTimesheetSalaryTypeSpecification" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetSalaryTypeSpecification" + } + } + } + }, + "ResponseWrapperTimesheetSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimesheetSettings" + } + } + }, + "TimesheetSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "timeClock" : { + "type" : "boolean", + "readOnly" : true + }, + "timesheetCompleted" : { + "type" : "boolean", + "readOnly" : true + }, + "flexBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "vacationBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "showDetailedTimeSheet" : { + "type" : "boolean", + "readOnly" : true + }, + "requireCommentsOnRegisteredHoursAllProjects" : { + "type" : "boolean", + "readOnly" : true + }, + "defaultProjectActivity" : { + "$ref" : "#/components/schemas/Activity" + } + } + }, + "ListResponseTimeSheetAutosaveHour" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimeSheetAutosaveHour" + } + } + } + }, + "TimeSheetAutosaveHour" : { + "type" : "object", + "properties" : { + "hourEntry" : { + "$ref" : "#/components/schemas/TimesheetEntry" + }, + "newStopwatchIntervalString" : { + "type" : "string", + "readOnly" : true + }, + "stopwatchIntervalString" : { + "type" : "string", + "readOnly" : true + }, + "errorMessage" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseTimeSheetAutosaveWageSpec" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimeSheetAutosaveWageSpec" + } + } + } + }, + "TimeSheetAutosaveWageSpec" : { + "type" : "object", + "properties" : { + "wageSpecEntry" : { + "$ref" : "#/components/schemas/TimesheetProjectSalaryTypeSpecification" + }, + "errorMessage" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseTimeSheetAutosaveRemaining" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimeSheetAutosaveRemaining" + } + } + } + }, + "TimeSheetAutosaveRemaining" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "employeeId" : { + "type" : "integer", + "format" : "int64" + }, + "projectId" : { + "type" : "integer", + "format" : "int64" + }, + "activityId" : { + "type" : "integer", + "format" : "int64" + }, + "date" : { + "type" : "string" + }, + "hours" : { + "type" : "number" + }, + "comment" : { + "type" : "string" + }, + "isConfirmed" : { + "type" : "boolean", + "readOnly" : true + }, + "errorMessage" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperTimeClock" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimeClock" + } + } + }, + "ListResponseTimeClock" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimeClock" + } + } + } + }, + "ResponseWrapperWeek" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Week" + } + } + }, + "Week" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "timesheetEntries" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TimesheetEntry" + } + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "week" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "completed" : { + "type" : "boolean", + "readOnly" : true + }, + "approved" : { + "type" : "boolean", + "readOnly" : true + }, + "approvedBy" : { + "$ref" : "#/components/schemas/Employee" + }, + "approvedDate" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseWeek" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Week" + } + } + } + }, + "ResponseWrapperTimeTravellersAuthDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimeTravellersAuthDTO" + } + } + }, + "TimeTravellersAuthDTO" : { + "type" : "object", + "properties" : { + "isProxy" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthCreate" : { + "type" : "boolean", + "readOnly" : true + }, + "authLevelWage" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "authLevelExpense" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isAuthExpenseSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isProjectManagerOnAnyProject" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperTimeTravellersContextDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimeTravellersContextDTO" + } + } + }, + "TimeTravellersContextDTO" : { + "type" : "object", + "properties" : { + "approveExpenses" : { + "type" : "boolean", + "readOnly" : true + }, + "onlyIncludeExpenseVouchersOnSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "expenseSettingsUrl" : { + "type" : "string", + "readOnly" : true + }, + "isTrialAccount" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperAccommodationAllowance" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccommodationAllowance" + } + } + }, + "ListResponseAccommodationAllowance" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccommodationAllowance" + } + } + } + }, + "ResponseWrapperCost" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Cost" + } + } + }, + "ListResponseCost" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Cost" + } + } + } + }, + "ResponseWrapperCostParticipant" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CostParticipant" + } + } + }, + "ListResponseCostParticipant" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CostParticipant" + } + } + } + }, + "ResponseWrapperDrivingStop" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DrivingStop" + } + } + }, + "ResponseWrapperMileageAllowance" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + } + }, + "ResponseWrapperMapIntegerTlxNumber" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "number" + } + } + } + }, + "ListResponseMileageAllowance" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MileageAllowance" + } + } + } + }, + "ResponseWrapperPassenger" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Passenger" + } + } + }, + "ListResponsePassenger" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Passenger" + } + } + } + }, + "ListResponsePerDiemCompensationTransient" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PerDiemCompensationTransient" + } + } + } + }, + "PerDiemCompensationTransient" : { + "type" : "object", + "properties" : { + "travelExpense" : { + "$ref" : "#/components/schemas/TravelExpense" + }, + "rateType" : { + "$ref" : "#/components/schemas/TravelExpenseRate" + }, + "rateCategory" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + }, + "countryCode" : { + "type" : "string", + "readOnly" : true + }, + "travelExpenseZoneId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "overnightAccommodation" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NONE", "HOTEL", "BOARDING_HOUSE_WITHOUT_COOKING", "BOARDING_HOUSE_WITH_COOKING" ] + }, + "location" : { + "type" : "string", + "readOnly" : true + }, + "address" : { + "type" : "string", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "rate" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "isDeductionForBreakfast" : { + "type" : "boolean", + "readOnly" : true + }, + "isDeductionForLunch" : { + "type" : "boolean", + "readOnly" : true + }, + "isDeductionForDinner" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperPerDiemCompensation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PerDiemCompensation" + } + } + }, + "ListResponsePerDiemCompensation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PerDiemCompensation" + } + } + } + }, + "ResponseWrapperTravelExpense" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelExpense" + } + } + }, + "ResponseWrapperTravelExpenseRate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelExpenseRate" + } + } + }, + "ListResponseTravelExpenseRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpenseRate" + } + } + } + }, + "ResponseWrapperTravelExpenseRateCategory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + } + } + }, + "ListResponseTravelExpenseRateCategory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategory" + } + } + } + }, + "ResponseWrapperTravelExpenseRateCategoryGroup" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategoryGroup" + } + } + }, + "TravelExpenseRateCategoryGroup" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "isForeignTravel" : { + "type" : "boolean" + }, + "fromDate" : { + "type" : "string" + }, + "toDate" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseTravelExpenseRateCategoryGroup" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpenseRateCategoryGroup" + } + } + } + }, + "ResponseWrapperTravelCostCategory" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelCostCategory" + } + } + }, + "ListResponseTravelCostCategory" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelCostCategory" + } + } + } + }, + "ResponseWrapperTravelPaymentType" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelPaymentType" + } + } + }, + "ListResponseTravelPaymentType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelPaymentType" + } + } + } + }, + "ResponseWrapperTravelExpenseSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelExpenseSettings" + } + } + }, + "TravelExpenseSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "useRates" : { + "type" : "boolean" + }, + "approvalRequired" : { + "type" : "boolean" + }, + "taxFreePerDiemRates" : { + "type" : "boolean" + }, + "taxFreeMileageRates" : { + "type" : "integer", + "format" : "int32" + }, + "perDiemNotCompensated" : { + "type" : "boolean" + }, + "accommodationNotCompensated" : { + "type" : "boolean" + }, + "mileageNotCompensated" : { + "type" : "boolean" + }, + "canApproveOwnExpenses" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperTravelExpenseZone" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TravelExpenseZone" + } + } + }, + "TravelExpenseZone" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "countryCode" : { + "type" : "string", + "description" : "The ISO 3166-1 Alpha2 code of the country (2 letters). https://en.wikipedia.org/wiki/ISO_3166-1", + "readOnly" : true + }, + "zoneName" : { + "type" : "string", + "readOnly" : true + }, + "isDisabled" : { + "type" : "boolean", + "readOnly" : true + }, + "governmentName" : { + "type" : "string", + "description" : "The Government name ", + "readOnly" : true + }, + "continent" : { + "type" : "string", + "readOnly" : true + }, + "fromDate" : { + "type" : "string", + "readOnly" : true + }, + "toDate" : { + "type" : "string", + "readOnly" : true + }, + "currencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseTravelExpenseZone" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TravelExpenseZone" + } + } + } + }, + "ResponseWrapperTripletexAccountReturn" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexAccountReturn" + } + } + }, + "TripletexAccountReturn" : { + "type" : "object", + "properties" : { + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "administrator" : { + "$ref" : "#/components/schemas/Employee" + }, + "administratorApiToken" : { + "$ref" : "#/components/schemas/EmployeeToken" + }, + "companyOwnedApiToken" : { + "$ref" : "#/components/schemas/EmployeeToken" + }, + "companyOwnedApiTokenRobotId" : { + "type" : "integer", + "format" : "int32" + }, + "tripletexAccountCreatedMessage" : { + "type" : "string" + }, + "employeeToken" : { + "$ref" : "#/components/schemas/EmployeeToken" + } + } + }, + "AccountAdminAccess" : { + "type" : "object", + "properties" : { + "accessType" : { + "type" : "string", + "description" : "Decides who will get admin access.", + "enum" : [ "NONE", "CREATOR_ONLY", "ALL_CLIENT_ADMINS_FROM_CREATOR_COMPANY", "SPECIFIC" ] + }, + "specificAdminIds" : { + "type" : "array", + "description" : "Specific admin IDs to grant access to.", + "items" : { + "type" : "integer", + "description" : "Specific admin IDs to grant access to.", + "format" : "int64" + } + } + }, + "description" : "Account admin access for the customer. If not set, the default access will be used which is all admins from the accountant company." + }, + "CustomerTripletexAccount2" : { + "type" : "object", + "properties" : { + "administrator" : { + "$ref" : "#/components/schemas/Employee" + }, + "customerId" : { + "type" : "integer", + "description" : "The customer id to an already created customer to create a Tripletex account for.", + "format" : "int64" + }, + "accessRequestType" : { + "type" : "string", + "description" : "If the accounting office is both an accountant and an auditor", + "enum" : [ "DEFAULT", "ACCOUNTANT", "AUDITOR" ] + }, + "modules" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SalesModule" + } + }, + "type" : { + "type" : "string", + "enum" : [ "NONE", "ENK", "AS", "NUF", "ANS", "DA", "PRE", "KS", "ASA", "BBL", "BRL", "GFS", "SPA", "SF", "IKS", "KF_FKF", "FCD", "EOFG", "BA", "STI", "ORG", "ESEK", "SA", "SAM", "BO", "VPFO", "OS", "FLI", "Other" ] + }, + "sendEmails" : { + "type" : "boolean", + "description" : "Should the emails normally sent during creation be sent in this case?" + }, + "autoValidateUserLogin" : { + "type" : "boolean", + "description" : "Should the user be automatically validated? SendEmails must be false for this to have any effect." + }, + "createApiToken" : { + "type" : "boolean", + "description" : "Creates a token for the admin user. The accounting office could also use their tokens so you might not need this." + }, + "sendInvoiceToCustomer" : { + "type" : "boolean", + "description" : "Should the invoices for this account be sent to the customer?" + }, + "customerInvoiceEmail" : { + "type" : "string", + "description" : "The address to send the invoice to at the customer." + }, + "invoiceReceiverCustomerId" : { + "type" : "integer", + "description" : "The id of the customer card for the invoice receiver company.", + "format" : "int64" + }, + "creatorReceivingReceipt" : { + "type" : "boolean", + "description" : "Should the receipt for this order be sent to the user creating the account?" + }, + "numberOfEmployees" : { + "minimum" : 0, + "type" : "integer", + "description" : "The number of employees in the customer company. Is used for calculating prices and setting some default settings, i.e. approval settings for timesheet.", + "format" : "int32" + }, + "accountEndDatePeriod" : { + "minimum" : 0, + "type" : "integer", + "description" : "Available for school resellers only. Number of months the account should be valid for. If not set, the account will be valid for 6 months.", + "format" : "int32" + }, + "chartOfAccountsType" : { + "type" : "string", + "description" : "The chart of accounts to use for the new company", + "enum" : [ "DEFAULT", "MAMUT_STD_PAYROLL", "MAMUT_NARF_PAYROLL", "AGRO_FORRETNING_PAYROLL", "AGRO_LANDBRUK_PAYROLL", "AGRO_FISKE_PAYROLL", "AGRO_FORSOKSRING_PAYROLL", "AGRO_IDRETTSLAG_PAYROLL", "AGRO_FORENING_PAYROLL" ] + }, + "vatStatusType" : { + "type" : "string", + "description" : "VAT type", + "enum" : [ "VAT_REGISTERED", "VAT_NOT_REGISTERED", "VAT_APPLICANT" ] + }, + "vatTermType" : { + "type" : "string", + "description" : "VAT period", + "enum" : [ "ONE_MONTH", "TWO_MONTHS", "THREE_MONTHS", "FOUR_MONTHS", "SIX_MONTHS", "YEAR", "NOT_REGISTERED" ] + }, + "customerCategoryId1" : { + "type" : "integer", + "description" : "Customer category 1 id, used to identify the previous accounting system", + "format" : "int32" + }, + "accountAdminAccess" : { + "$ref" : "#/components/schemas/AccountAdminAccess" + }, + "accountType" : { + "type" : "string", + "enum" : [ "TEST", "PAYING", "FREE" ] + } + } + }, + "AgroToTripletex" : { + "type" : "object", + "properties" : { + "userEmail" : { + "type" : "string" + } + } + }, + "Dropdown" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "An unique ID for each element.", + "format" : "int32" + }, + "name" : { + "type" : "string", + "description" : "A display name for each element." + } + }, + "description" : "List containing the Tripletex sales modules types." + }, + "ResponseWrapperTripletexAccountCreation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexAccountCreation" + } + } + }, + "TripletexAccountCreation" : { + "type" : "object", + "properties" : { + "customerAccountNumber" : { + "type" : "integer", + "description" : "Customer account number.", + "format" : "int32", + "readOnly" : true + }, + "hasTripletexAccount" : { + "type" : "boolean", + "description" : "Flag for checking if the client has a Tripletex account. Used by the accountant or auditor to determine if they need to create a new Tripletex account for the client." + }, + "isTripletexSuspended" : { + "type" : "boolean", + "description" : "Flag for checking if Tripletex is currently suspended." + }, + "companyTypes" : { + "type" : "array", + "description" : "List containing the company types.", + "items" : { + "$ref" : "#/components/schemas/Dropdown" + } + }, + "tripletexSalesModuleTypes" : { + "type" : "array", + "description" : "List containing the Tripletex sales modules types.", + "items" : { + "$ref" : "#/components/schemas/Dropdown" + } + }, + "accountingSystemsOfOrigin" : { + "type" : "array", + "description" : "List containing the accounting systems of origins (customerCategoryId1).", + "items" : { + "$ref" : "#/components/schemas/Dropdown" + } + }, + "customerInvoiceEmail" : { + "type" : "string", + "description" : "Email address for the customer invoicing." + }, + "invoiceReceiverCustomerId" : { + "type" : "integer", + "description" : "Invoice receiver id.", + "format" : "int64", + "readOnly" : true + }, + "hasAnotherAccountantInvoiceReceiver" : { + "type" : "boolean", + "description" : "True if the client currently has an accountant that is set as invoice receiver.", + "readOnly" : true + }, + "customerCompany" : { + "$ref" : "#/components/schemas/Company" + }, + "customerName" : { + "type" : "string", + "description" : "Customer company name." + }, + "customerOrganisationNumber" : { + "type" : "string", + "description" : "Customer company organization number." + }, + "creatorCompany" : { + "$ref" : "#/components/schemas/TripletexAccountCreator" + }, + "accountantAssociationStatus" : { + "type" : "string", + "description" : "State of the accountant (or similar) and his customer with respect to the accountant having or getting access to the client.", + "enum" : [ "NOT_RELEVANT", "CONNECTED", "CLIENT_ORG_NUM_MISSING", "CLIENT_ORG_NUM_INVALID", "NO_CLIENT_TLX_ACCOUNT", "CLIENT_TLX_ACCOUNT_EXISTS", "SEVERAL_TLX_ACCOUNTS_EXIST_ERROR" ] + } + } + }, + "TripletexAccountCreator" : { + "type" : "object", + "properties" : { + "isSchoolReseller" : { + "type" : "boolean", + "description" : "Flag for checking if the creator company is a school reseller." + }, + "isAccountantOrSimilar" : { + "type" : "boolean", + "description" : "Flag for checking if the creator is either an accountant or an auditor." + }, + "isAccountantAndAuditor" : { + "type" : "boolean", + "description" : "Flag for checking if the creator is both an accountant and auditor." + }, + "isTripletex" : { + "type" : "boolean", + "description" : "Flag for checking if the creator is Tripletex." + }, + "creatorCustomerId" : { + "type" : "integer", + "description" : "Id of the creator's company card.", + "format" : "int64", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "description" : "Name of the creator company name." + }, + "companyInvoiceEmail" : { + "type" : "string", + "description" : "Email address for the accountant or auditor invoicing.", + "readOnly" : true + }, + "creatorEmployeeEmail" : { + "type" : "string", + "description" : "Email of the new account creator." + }, + "creatorEmployeeId" : { + "type" : "integer", + "description" : "Id of the new account creator.", + "format" : "int64", + "readOnly" : true + }, + "isLoginEmployeeProxy" : { + "type" : "boolean", + "description" : "Flag for checking if the current logged in employee is a proxy." + }, + "creatorRelationTypes" : { + "type" : "array", + "description" : "The creator's tripletex company's type (accountant, auditor, both or others).", + "items" : { + "type" : "string", + "description" : "The creator's tripletex company's type (accountant, auditor, both or others).", + "enum" : [ "NONE", "ACCOUNTANT", "AUDITOR", "ACCOUNTANT_AND_AUDITOR", "RESELLER", "SCHOOL_RESELLER" ] + } + } + }, + "description" : "Information about the company creator/company that wants to establish access connection." + }, + "ResponseWrapperTripletexAccountPricingDetails" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexAccountPricingDetails" + } + } + }, + "TripletexAccountPricingDetails" : { + "type" : "object", + "properties" : { + "numberOfEmployees" : { + "type" : "integer", + "description" : "A value representing the number of employees depending on the main module's type.", + "format" : "int32" + }, + "numberOfVouchers" : { + "type" : "integer", + "description" : "An unique ID related to a specific Tripletex sales module type.", + "format" : "int32" + }, + "hasNumberOfEmployees" : { + "type" : "boolean", + "description" : "Flag for checking the rendering of the number of employees dropdown." + }, + "hasNumberOfVouchers" : { + "type" : "boolean", + "description" : "Flag for checking the rendering of the number of vouchers per year dropdown." + }, + "prices" : { + "$ref" : "#/components/schemas/TripletexPrices" + }, + "antallBrukere" : { + "type" : "integer", + "description" : "A value containing the number of employees for which the prices are computed.", + "format" : "int32" + }, + "kidStartupFee" : { + "type" : "number", + "description" : "A value containing the KID's startup fee." + }, + "kidFee" : { + "type" : "integer", + "description" : "A value containing the KID's fee.", + "format" : "int32" + }, + "scanningStartupFee" : { + "type" : "integer", + "description" : "A value containing scanning startup fee.", + "format" : "int32" + }, + "scanningFee" : { + "type" : "integer", + "description" : "A value containing scanning fee.", + "format" : "int32" + }, + "annualFee" : { + "type" : "integer", + "description" : "Contains annual fee.", + "format" : "int32" + }, + "hasStartupEmployeesRow" : { + "type" : "boolean", + "description" : "Flag for checking if the startup employee's row should be displayed." + }, + "hasMonthlyEmployeesRow" : { + "type" : "boolean", + "description" : "Flag for checking if the monthly employee's row should be displayed." + }, + "hasMonthlyLogisticsRow" : { + "type" : "boolean", + "description" : "Flag for checking if the monthly logistics row should be displayed." + }, + "hasMonthlyFixedAssetsRegisterRow" : { + "type" : "boolean", + "description" : "Flag for checking if the monthly fixed assets register row should be displayed." + }, + "hasStartupCompanyRow" : { + "type" : "boolean", + "description" : "Flag for checking if the startup company's row should be displayed." + }, + "hasMonthlyCompanyRow" : { + "type" : "boolean", + "description" : "Flag for checking if the monthly company's row should be displayed." + }, + "hasKidRow" : { + "type" : "boolean", + "description" : "Flag for checking if the KID's row should be displayed." + }, + "hasRemitRow" : { + "type" : "boolean", + "description" : "Flag for checking if the remit's row should be displayed." + }, + "hasAnnualRow" : { + "type" : "boolean", + "description" : "Flag for checking if the Tripletex Fixed Assets Register module is checked." + }, + "totalStartupFees" : { + "type" : "number", + "description" : "A value containing the total startup fees." + }, + "totalMonthlyFees" : { + "type" : "number", + "description" : "A value containing the total monthly fees." + }, + "tripletexSalesModuleTypes" : { + "type" : "array", + "description" : "List containing the Tripletex sales modules types.", + "items" : { + "$ref" : "#/components/schemas/Dropdown" + } + } + } + }, + "TripletexPrices" : { + "type" : "object", + "properties" : { + "allPrices" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "additionalProperties" : { + "type" : "number" + } + } + }, + "sumStartupCategory1Users" : { + "type" : "number" + }, + "sumServiceCategory1Users" : { + "type" : "number" + }, + "listPriceCategory1UserStartup" : { + "type" : "number" + }, + "listPriceCategory1UserService" : { + "type" : "number" + }, + "sumStartup" : { + "type" : "number" + }, + "sumService" : { + "type" : "number" + }, + "sumMonthlyServiceCompany" : { + "type" : "number" + }, + "sumMonthlyAdditionalServices" : { + "type" : "number" + }, + "sumYearlyService" : { + "type" : "number" + }, + "monthlyServiceUserCat1" : { + "type" : "number" + }, + "listPriceMonthlyServiceUserCat1" : { + "type" : "number" + }, + "monthlyServiceLogisticsUserCat1" : { + "type" : "number" + }, + "listPriceMonthlyServiceLogisticsUserCat1" : { + "type" : "number" + } + }, + "description" : "DTO containing Tripletex's prices informations." + }, + "TripletexAccountModulesDetails" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "An unique customer ID.", + "format" : "int64" + }, + "numberOfVouchers" : { + "type" : "integer", + "description" : "An unique ID related to a specific Tripletex sales module type.", + "format" : "int32" + }, + "numberOfEmployees" : { + "type" : "integer", + "description" : "A value representing the number of employees depending on the main module's type.", + "format" : "int32" + }, + "companyType" : { + "type" : "string", + "description" : "A value representing the company organization type.", + "enum" : [ "NONE", "ENK", "AS", "NUF", "ANS", "DA", "PRE", "KS", "ASA", "BBL", "BRL", "GFS", "SPA", "SF", "IKS", "KF_FKF", "FCD", "EOFG", "BA", "STI", "ORG", "ESEK", "SA", "SAM", "BO", "VPFO", "OS", "FLI", "Other" ] + }, + "hasOnlyPrices" : { + "type" : "boolean", + "description" : "Flag for checking if the client has only prices." + }, + "salesModules" : { + "type" : "array", + "description" : "Sales modules the creator choose during account creation.", + "items" : { + "type" : "string", + "description" : "Sales modules the creator choose during account creation.", + "enum" : [ "MAMUT", "MAMUT_WITH_WAGE", "AGRO_LICENCE", "AGRO_CLIENT", "AGRO_DOCUMENT_CENTER", "AGRO_INVOICE", "AGRO_INVOICE_MIGRATED", "AGRO_WAGE", "NO1TS", "NO1TS_TRAVELREPORT", "NO1TS_ACCOUNTING", "DIYPACKAGE", "BASIS", "SMART", "KOMPLETT", "VVS", "ELECTRO", "ACCOUNTING_OFFICE", "WAGE", "SMART_WAGE", "TIME_TRACKING", "SMART_TIME_TRACKING", "SMART_PROJECT", "OCR", "API_V2", "ELECTRONIC_VOUCHERS", "UP_TO_100_VOUCHERS", "UP_TO_500_VOUCHERS", "UP_TO_1000_VOUCHERS", "UP_TO_2000_VOUCHERS", "UP_TO_3500_VOUCHERS", "UP_TO_5000_VOUCHERS", "UP_TO_10000_VOUCHERS", "UNLIMITED_VOUCHERS", "UP_TO_100_VOUCHERS_AUTOMATION", "UP_TO_500_VOUCHERS_AUTOMATION", "UP_TO_1000_VOUCHERS_AUTOMATION", "UP_TO_2000_VOUCHERS_AUTOMATION", "UP_TO_3500_VOUCHERS_AUTOMATION", "UP_TO_5000_VOUCHERS_AUTOMATION", "UP_TO_10000_VOUCHERS_AUTOMATION", "UNLIMITED_VOUCHERS_AUTOMATION", "LOGISTICS", "MIKRO", "AUTOPLUS_MINI", "AUTOPLUS_MEDIUM", "AUTOPLUS_STOR", "INTEGRATION_PARTNER", "PROJECT", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "STICOS", "PRO", "FIXED_ASSETS_REGISTER", "ZTL" ] + } + } + } + }, + "TripletexAccount" : { + "type" : "object", + "properties" : { + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "administrator" : { + "$ref" : "#/components/schemas/Employee" + }, + "modules" : { + "type" : "array", + "description" : "Sales modules (functionality in the application) to activate for the newly created account. Some modules have extra costs.", + "items" : { + "$ref" : "#/components/schemas/SalesModule" + } + }, + "sendEmails" : { + "type" : "boolean", + "description" : "Should the regular creation emails be sent to the company created and its users? If false you probably want to set autoValidateUserLogin to true" + }, + "autoValidateUserLogin" : { + "type" : "boolean", + "description" : "If true, the users created will be allowed to log in without validating their email address. ONLY USE THIS IF YOU ALREADY HAVE VALIDATED THE USER EMAILS. SendEmails must be false for this to have any effect." + }, + "createAdministratorApiToken" : { + "type" : "boolean", + "description" : "Create an API token for the administrator user for the consumer token used during this call. The token will be returned in the response." + }, + "createCompanyOwnedApiToken" : { + "type" : "boolean", + "description" : "Create an API token for the company to use to call their clients, only possible for accounting and auditor accounts. The token will be returned in the response." + }, + "mayCreateTripletexAccounts" : { + "type" : "boolean", + "description" : "Should the company we are creating be able to create new Tripletex accounts?" + }, + "numberOfVouchers" : { + "type" : "string", + "description" : "Used to calculate prices.", + "enum" : [ "INTERVAL_0_100", "INTERVAL_101_500", "INTERVAL_0_500", "INTERVAL_501_1000", "INTERVAL_1001_2000", "INTERVAL_2001_3500", "INTERVAL_3501_5000", "INTERVAL_5001_10000", "INTERVAL_UNLIMITED" ] + }, + "chartOfAccountsType" : { + "type" : "string", + "description" : "The chart of accounts to use for the new company", + "enum" : [ "DEFAULT", "MAMUT_STD_PAYROLL", "MAMUT_NARF_PAYROLL", "AGRO_FORRETNING_PAYROLL", "AGRO_LANDBRUK_PAYROLL", "AGRO_FISKE_PAYROLL", "AGRO_FORSOKSRING_PAYROLL", "AGRO_IDRETTSLAG_PAYROLL", "AGRO_FORENING_PAYROLL" ] + }, + "vatStatusType" : { + "type" : "string", + "description" : "VAT type", + "enum" : [ "VAT_REGISTERED", "VAT_NOT_REGISTERED", "VAT_APPLICANT" ] + }, + "vatTermType" : { + "type" : "string", + "description" : "VAT period", + "enum" : [ "ONE_MONTH", "TWO_MONTHS", "THREE_MONTHS", "FOUR_MONTHS", "SIX_MONTHS", "YEAR", "NOT_REGISTERED" ] + }, + "bankAccount" : { + "type" : "string", + "description" : "Main bank account" + }, + "postAccount" : { + "type" : "string", + "description" : "Swedish post account number (PlusGirot)" + }, + "numberOfPrepaidUsers" : { + "type" : "integer", + "description" : "Number of users Prepaid. Only available for some consumers.", + "format" : "int32" + }, + "customerCategoryId1" : { + "type" : "integer", + "description" : "CustomerCategoryId1", + "format" : "int32" + }, + "customerCategoryId2" : { + "type" : "integer", + "description" : "Customer category id used to indicate that the customer is created by Salesforce", + "format" : "int32" + }, + "marketingConsent" : { + "type" : "string", + "description" : "Marketing consent", + "enum" : [ "DEFAULT", "GRANTED", "DENIED" ] + }, + "invoiceStartDate" : { + "type" : "string", + "description" : "Start date for invoicing" + }, + "invoiceEmail" : { + "type" : "string", + "description" : "Email address used for invoices/reminders" + }, + "customerCardId" : { + "type" : "integer", + "description" : "Customer card id is used to indicate what customer account to use when creating the TripletexCompany object. 0 means customer account does not already exist.", + "format" : "int32" + }, + "accountEndDatePeriod" : { + "type" : "integer", + "description" : "Available for school resellers only. Number of months the account should be valid for. If not set, the account will be valid for 6 months.", + "format" : "int32" + }, + "signedTC" : { + "type" : "string", + "description" : "Terms and conditions", + "enum" : [ "DEFAULT", "GRANTED", "DENIED" ] + }, + "accountingOffice" : { + "type" : "boolean" + }, + "auditor" : { + "type" : "boolean" + }, + "reseller" : { + "type" : "boolean" + }, + "accountType" : { + "type" : "string", + "enum" : [ "TEST", "PAYING", "FREE" ] + } + } + }, + "OnboardAccount" : { + "type" : "object", + "properties" : { + "companyName" : { + "type" : "string" + }, + "orgNumber" : { + "type" : "string" + }, + "address" : { + "type" : "string" + }, + "city" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "municipality" : { + "type" : "string" + }, + "startDateMunicipality" : { + "type" : "string" + }, + "registrationDate" : { + "type" : "string" + }, + "vatRegistered" : { + "type" : "boolean" + }, + "enterprises" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Enterprise" + } + }, + "bankAccountNumber" : { + "type" : "string" + } + } + }, + "ResponseWrapperTripletexAccountPricesReturnDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexAccountPricesReturnDTO" + } + } + }, + "TripletexAccountPricesReturnDTO" : { + "type" : "object", + "properties" : { + "allPrices" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "readOnly" : true + }, + "readOnly" : true + }, + "readOnly" : true + }, + "sumStartupCategory1Users" : { + "type" : "number", + "readOnly" : true + }, + "sumServiceCategory1Users" : { + "type" : "number", + "readOnly" : true + }, + "listPriceCategory1UserStartup" : { + "type" : "number", + "readOnly" : true + }, + "listPriceCategory1UserService" : { + "type" : "number", + "readOnly" : true + }, + "sumStartup" : { + "type" : "number", + "readOnly" : true + }, + "sumService" : { + "type" : "number", + "readOnly" : true + }, + "sumYearlyService" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperSalesForceAccountInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalesForceAccountInfo" + } + } + }, + "SalesForceAccountInfo" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerCompanyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "creatorCompanyId" : { + "type" : "integer", + "description" : "Represents the companyId of the creator of the account", + "format" : "int32", + "readOnly" : true + }, + "creatorCompanySalesRepresentativeId" : { + "type" : "integer", + "description" : "The employeeId of the sales representative assigned to the creator company", + "format" : "int32", + "readOnly" : true + }, + "isReseller" : { + "type" : "boolean", + "readOnly" : true + }, + "isAccountant" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuditor" : { + "type" : "boolean", + "readOnly" : true + }, + "isSuspended" : { + "type" : "boolean", + "readOnly" : true + }, + "isDeleted" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAccountantConnectClient" : { + "type" : "boolean", + "readOnly" : true + }, + "registerDate" : { + "type" : "string", + "description" : "Tripletex account register Date", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "description" : "Tripletex account start Date", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "Tripletex account end Date", + "readOnly" : true + }, + "invoiceStartDate" : { + "type" : "string", + "description" : "Tripletex account invoice start date", + "readOnly" : true + }, + "invoicePostponeDate" : { + "type" : "string", + "description" : "Tripletex account invoice postpone date", + "readOnly" : true + }, + "activeMainModule" : { + "type" : "string", + "description" : "Active main module", + "readOnly" : true, + "enum" : [ "ACCOUNTING", "INVOICE", "CRM", "PROJECT", "WAGE", "NETS_PRINT", "NETS_PRINT_SALARY", "OCR", "REMIT", "SMS_NOTIFICATION", "VOUCHER_SCANNING", "TIME_TRACKING", "VVS_ELECTRO", "UBEGRENSET_BILAG_VVS_ELEKTRO", "INVOICE_OPTION_VIPPS", "INVOICE_OPTION_EFAKTURA", "INVOICE_OPTION_AVTALEGIRO", "INVOICE_OPTION_PAPER", "INVOICE_OPTION_AUTOINVOICE_OUTBOUND_EHF", "API_V2", "SMART_SCAN", "BILAG_0_100_mikro", "BILAG_0_500_vanlig_legacy", "BILAG_501_1000_vanlig_legacy", "BILAG_1001_2000_vanlig_legacy", "BILAG_2001_3500_vanlig_legacy", "BILAG_3501_5000_vanlig_legacy", "BILAG_5001_10001_vanlig_legacy", "UBEGRENSET_BILAG_vanlig_legacy", "BILAG_0_500_prosjekt_legacy", "BILAG_501_1000_prosjekt_legacy", "BILAG_1001_2000_prosjekt_legacy", "BILAG_2001_3500_prosjekt_legacy", "BILAG_3501_5000_prosjekt_legacy", "BILAG_5001_10001_prosjekt_legacy", "UBEGRENSET_BILAG_prosjekt_legacy", "MIKRO", "MINI", "MEDIUM", "TOTAL", "BASIS", "SMART", "AGRO_CLIENT", "MAMUT", "KOMPLETT", "SMART_WAGE", "SMART_TIME_TRACKING", "BILAG_0_500", "BILAG_501_1000", "BILAG_1001_2000", "BILAG_2001_3500", "BILAG_3501_5000", "BILAG_5001_10001", "UBEGRENSET_BILAG", "READ_ONLY_ACCESS", "READ_ONLY_ACCESS_FREE", "AUTOPAY", "VOUCHER_APPROVAL", "SMART_PROJECT", "ACCOUNT_OFFICE", "UNLIMITED_VOUCHER_ACCOUNT_OFFICE", "COMPANY_SERVICE_FOR_PAYING_ACCOUNT_OFFICES", "AGRO_WAGE", "INVOICE_OPTION_AUTOINVOICE_INCOMING_EHF", "MAMUT_PROJECT", "MAMUT_WITH_WAGE", "USER_SERVICE_HISTORIC_CUSTOMERS_NON_STANDARD", "ENCRYPTED_PAYSLIP", "AGRO_LICENCE", "AGRO_DOCUMENT_CENTER", "AGRO_INVOICE", "FIVE_EMPLOYEES", "AUTOPLUS_MINI", "AUTOPLUS_MEDIUM", "AUTOPLUS_STOR", "CASH_CREDIT_APRILA", "NO1TS", "NO1TS_TRAVELREPORT", "NO1TS_ACCOUNTING", "AGRO_INVOICE_MIGRATED", "USER_CATEGORY_1_LICENSE", "USER_CATEGORY_2_LICENSE", "USER_CATEGORY_3_LICENSE", "VOUCHER_FACTORY", "OCR_AUTOPAY", "CLOSED_ACCOUNT", "LOGISTICS", "INTEGRATION_PARTNER", "CREDIT_SCORING", "ZTL", "PLUSS", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "BILAG_0_100_MIKRO_AUTOMATION", "BILAG_0_500_AUTOMATION", "BILAG_501_1000_AUTOMATION", "BILAG_1001_2000_AUTOMATION", "BILAG_2001_3500_AUTOMATION", "BILAG_3501_5000_AUTOMATION", "BILAG_5001_10001_AUTOMATION", "UBEGRENSET_BILAG_AUTOMATION", "CMA_SHOPIFY", "CMA_MYSTORE", "CMA_WOOCOMMERCE", "RACKBEAT", "DIYPACKAGE", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "FIXED_ASSETS_REGISTER", "STICOS", "PRO", "RECONCILIATION", "DIGITAL_SIGNING", "TRIPLETEX_MCP_BETA" ] + }, + "activeMainModuleName" : { + "type" : "string", + "description" : "Active main module display name", + "readOnly" : true + }, + "salesForceOpportunityDTO" : { + "$ref" : "#/components/schemas/SalesForceOpportunity" + }, + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "organizationNumber" : { + "type" : "string", + "readOnly" : true + }, + "customerNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "email" : { + "type" : "string", + "readOnly" : true + }, + "invoiceEmail" : { + "type" : "string", + "readOnly" : true + }, + "overdueNoticeEmail" : { + "type" : "string", + "description" : "The email address of the customer where the noticing emails are sent in case of an overdue", + "readOnly" : true + }, + "phoneNumber" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberMobile" : { + "type" : "string", + "readOnly" : true + }, + "singleCustomerInvoice" : { + "type" : "boolean", + "description" : "Enables various orders on one customer invoice.", + "readOnly" : true + }, + "postalAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "physicalAddress" : { + "$ref" : "#/components/schemas/Address" + }, + "category1" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "category2" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "category3" : { + "$ref" : "#/components/schemas/CustomerCategory" + }, + "invoicesDueIn" : { + "maximum" : 10000, + "minimum" : 0, + "type" : "integer", + "description" : "Number of days/months in which invoices created from this customer is due", + "format" : "int32", + "readOnly" : true + }, + "userSalesRepresentativeId" : { + "type" : "integer", + "description" : "Sales representative of the Tripletex account", + "format" : "int32", + "readOnly" : true + }, + "accountManagerId" : { + "type" : "integer", + "description" : "Manager of the Tripletex account", + "format" : "int64", + "readOnly" : true + }, + "accountOwnerId" : { + "type" : "integer", + "description" : "Employee id of the admin added when the account was created", + "format" : "int64", + "readOnly" : true + }, + "isBlacklistedForSticos" : { + "type" : "boolean", + "description" : "Is this user blacklisted for Sticos access", + "readOnly" : true + }, + "loginEmployeeId" : { + "type" : "integer", + "description" : "Login employee", + "format" : "int64", + "readOnly" : true + }, + "isContactSales" : { + "type" : "boolean", + "description" : "Is the update triggered by the contact sales button", + "readOnly" : true + }, + "contactSalesModule" : { + "type" : "string", + "description" : "Module which contact sales button references.", + "readOnly" : true, + "enum" : [ "ACCOUNTING", "INVOICE", "CRM", "PROJECT", "WAGE", "NETS_PRINT", "NETS_PRINT_SALARY", "OCR", "REMIT", "SMS_NOTIFICATION", "VOUCHER_SCANNING", "TIME_TRACKING", "VVS_ELECTRO", "UBEGRENSET_BILAG_VVS_ELEKTRO", "INVOICE_OPTION_VIPPS", "INVOICE_OPTION_EFAKTURA", "INVOICE_OPTION_AVTALEGIRO", "INVOICE_OPTION_PAPER", "INVOICE_OPTION_AUTOINVOICE_OUTBOUND_EHF", "API_V2", "SMART_SCAN", "BILAG_0_100_mikro", "BILAG_0_500_vanlig_legacy", "BILAG_501_1000_vanlig_legacy", "BILAG_1001_2000_vanlig_legacy", "BILAG_2001_3500_vanlig_legacy", "BILAG_3501_5000_vanlig_legacy", "BILAG_5001_10001_vanlig_legacy", "UBEGRENSET_BILAG_vanlig_legacy", "BILAG_0_500_prosjekt_legacy", "BILAG_501_1000_prosjekt_legacy", "BILAG_1001_2000_prosjekt_legacy", "BILAG_2001_3500_prosjekt_legacy", "BILAG_3501_5000_prosjekt_legacy", "BILAG_5001_10001_prosjekt_legacy", "UBEGRENSET_BILAG_prosjekt_legacy", "MIKRO", "MINI", "MEDIUM", "TOTAL", "BASIS", "SMART", "AGRO_CLIENT", "MAMUT", "KOMPLETT", "SMART_WAGE", "SMART_TIME_TRACKING", "BILAG_0_500", "BILAG_501_1000", "BILAG_1001_2000", "BILAG_2001_3500", "BILAG_3501_5000", "BILAG_5001_10001", "UBEGRENSET_BILAG", "READ_ONLY_ACCESS", "READ_ONLY_ACCESS_FREE", "AUTOPAY", "VOUCHER_APPROVAL", "SMART_PROJECT", "ACCOUNT_OFFICE", "UNLIMITED_VOUCHER_ACCOUNT_OFFICE", "COMPANY_SERVICE_FOR_PAYING_ACCOUNT_OFFICES", "AGRO_WAGE", "INVOICE_OPTION_AUTOINVOICE_INCOMING_EHF", "MAMUT_PROJECT", "MAMUT_WITH_WAGE", "USER_SERVICE_HISTORIC_CUSTOMERS_NON_STANDARD", "ENCRYPTED_PAYSLIP", "AGRO_LICENCE", "AGRO_DOCUMENT_CENTER", "AGRO_INVOICE", "FIVE_EMPLOYEES", "AUTOPLUS_MINI", "AUTOPLUS_MEDIUM", "AUTOPLUS_STOR", "CASH_CREDIT_APRILA", "NO1TS", "NO1TS_TRAVELREPORT", "NO1TS_ACCOUNTING", "AGRO_INVOICE_MIGRATED", "USER_CATEGORY_1_LICENSE", "USER_CATEGORY_2_LICENSE", "USER_CATEGORY_3_LICENSE", "VOUCHER_FACTORY", "OCR_AUTOPAY", "CLOSED_ACCOUNT", "LOGISTICS", "INTEGRATION_PARTNER", "CREDIT_SCORING", "ZTL", "PLUSS", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "BILAG_0_100_MIKRO_AUTOMATION", "BILAG_0_500_AUTOMATION", "BILAG_501_1000_AUTOMATION", "BILAG_1001_2000_AUTOMATION", "BILAG_2001_3500_AUTOMATION", "BILAG_3501_5000_AUTOMATION", "BILAG_5001_10001_AUTOMATION", "UBEGRENSET_BILAG_AUTOMATION", "CMA_SHOPIFY", "CMA_MYSTORE", "CMA_WOOCOMMERCE", "RACKBEAT", "DIYPACKAGE", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "FIXED_ASSETS_REGISTER", "STICOS", "PRO", "RECONCILIATION", "DIGITAL_SIGNING", "TRIPLETEX_MCP_BETA" ] + }, + "privateIndividual" : { + "type" : "boolean" + }, + "supplier" : { + "type" : "boolean" + }, + "customer" : { + "type" : "boolean" + }, + "inactive" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "SalesForceOpportunity" : { + "type" : "object", + "properties" : { + "allPrices" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "description" : "A nested map of all active sales modules. The key in the outer map is the sales module, whilst the inner map contains the different pricing types for the given sales module. A pricing type could be PER_USE(10).", + "readOnly" : true + }, + "description" : "A nested map of all active sales modules. The key in the outer map is the sales module, whilst the inner map contains the different pricing types for the given sales module. A pricing type could be PER_USE(10).", + "readOnly" : true + }, + "description" : "A nested map of all active sales modules. The key in the outer map is the sales module, whilst the inner map contains the different pricing types for the given sales module. A pricing type could be PER_USE(10).", + "readOnly" : true + }, + "sumStartupCategory1Users" : { + "type" : "number", + "description" : "The total startup price for users of category 1.", + "readOnly" : true + }, + "sumServiceCategory1Users" : { + "type" : "number", + "description" : "The total price per monthly price for users of category 1.", + "readOnly" : true + }, + "listPriceCategory1UserStartup" : { + "type" : "number", + "description" : "The startup list price per user.", + "readOnly" : true + }, + "listPriceCategory1UserService" : { + "type" : "number", + "description" : "The monthly list price per user.", + "readOnly" : true + }, + "sumStartup" : { + "type" : "number", + "description" : "The startup price for the company.", + "readOnly" : true + }, + "sumService" : { + "type" : "number", + "description" : "The monthly price for the company.", + "readOnly" : true + }, + "sumYearlyService" : { + "type" : "number", + "description" : "The monthly price for the company.", + "readOnly" : true + }, + "sumAdditionalServices" : { + "type" : "number", + "description" : "The total startup price for additional services.", + "readOnly" : true + }, + "accountantStartupProvision" : { + "type" : "number", + "description" : "The initial provision for the accountant of the startup price (percentage)", + "readOnly" : true + }, + "accountantMonthlyProvision" : { + "type" : "number", + "description" : "The monthly provision for the accountant of the monthly price (percentage)", + "readOnly" : true + }, + "noOfUsersPrepaid" : { + "type" : "integer", + "description" : "The number of users prepaid when creating the company.", + "format" : "int32", + "readOnly" : true + }, + "noOfUsersIncluded" : { + "type" : "integer", + "description" : "The number of users included for free in the purchased module.", + "format" : "int32", + "readOnly" : true + } + }, + "description" : "Company opportunity", + "readOnly" : true + }, + "ListResponseSalesForceAccountInfo" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalesForceAccountInfo" + } + } + } + }, + "ListResponseSalesForceAccountantConnection" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalesForceAccountantConnection" + } + } + } + }, + "SalesForceAccountantConnection" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "aoCustomerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "clientCustomerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperSalesForceEmployeeRole" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalesForceEmployeeRole" + } + } + }, + "SalesForceEmployeeRole" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32" + }, + "employeeId" : { + "type" : "integer", + "format" : "int32" + }, + "roleId" : { + "type" : "integer", + "format" : "int32" + }, + "userId" : { + "type" : "integer", + "format" : "int32" + }, + "tripletexCustomerId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperSalesForceTripletexSalesModulePurchase" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalesForceTripletexSalesModulePurchase" + } + } + }, + "SalesForceTripletexSalesModulePurchase" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "tripletexCompanyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "tripletexPriceList" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNKNOWN", "TRIPLETEX_STANDARD", "AGRO", "MAMUT", "BASIS", "SMART", "KOMPLETT", "VVS_ELEKTRO", "AUTOPLUS", "MIKRO", "INTEGRATION_PARTNER", "PLUSS", "DIYPACKAGE", "PRO" ] + }, + "employeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "purchaseDate" : { + "type" : "string", + "description" : "Purchase date", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "description" : "Purchase end date", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexSalesModuleName" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "integer", + "description" : "Type upSale or newSales", + "format" : "int32", + "readOnly" : true + }, + "salesForceOpportunityDTO" : { + "$ref" : "#/components/schemas/SalesForceOpportunity" + } + } + }, + "ResponseWrapperSalesForceEmployee" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalesForceEmployee" + } + } + }, + "SalesForceAddress" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "addressLine1" : { + "type" : "string", + "readOnly" : true + }, + "addressLine2" : { + "type" : "string", + "readOnly" : true + }, + "postalCode" : { + "type" : "string", + "readOnly" : true + }, + "city" : { + "type" : "string", + "readOnly" : true + }, + "country" : { + "$ref" : "#/components/schemas/SalesForceCountry" + } + }, + "readOnly" : true + }, + "SalesForceCountry" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "isoAlpha2Code" : { + "type" : "string", + "readOnly" : true + }, + "isoAlpha3Code" : { + "type" : "string", + "readOnly" : true + }, + "isoNumericCode" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "SalesForceEmployee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "firstName" : { + "type" : "string", + "readOnly" : true + }, + "lastName" : { + "type" : "string", + "readOnly" : true + }, + "email" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberMobile" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberHome" : { + "type" : "string", + "readOnly" : true + }, + "phoneNumberWork" : { + "type" : "string", + "readOnly" : true + }, + "userId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "customerId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "phoneNumberSmsCertified" : { + "type" : "string", + "readOnly" : true + }, + "isUserAdministrator" : { + "type" : "boolean", + "readOnly" : true + }, + "isAccountAdministrator" : { + "type" : "boolean", + "readOnly" : true + }, + "allowLogin" : { + "type" : "boolean", + "readOnly" : true + }, + "isExternal" : { + "type" : "boolean", + "readOnly" : true + }, + "isTripletexCertified" : { + "type" : "boolean", + "readOnly" : true + }, + "isDefaultLogin" : { + "type" : "boolean", + "readOnly" : true + }, + "loginEndDate" : { + "type" : "string", + "description" : "Login end date", + "readOnly" : true + }, + "address" : { + "$ref" : "#/components/schemas/SalesForceAddress" + }, + "isMarketingConsent" : { + "type" : "boolean", + "readOnly" : true + }, + "isAppUser" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperSalesForceUserOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalesForceUserOverview" + } + } + }, + "SalesForceUserOverview" : { + "type" : "object", + "properties" : { + "customerId" : { + "type" : "integer", + "description" : "Customer Id", + "format" : "int64", + "readOnly" : true + }, + "numberOfUsers" : { + "type" : "integer", + "description" : "Number of users", + "format" : "int32", + "readOnly" : true + }, + "numberOfPayslipOnlyUsers" : { + "type" : "integer", + "description" : "Number of payslip only users", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperTripletexDashboardDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TripletexDashboardDTO" + } + } + }, + "TripletexDashboardDTO" : { + "type" : "object", + "properties" : { + "widgets" : { + "$ref" : "#/components/schemas/TripletexDashboardWidgets" + } + } + }, + "TripletexDashboardWidget" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "BANKING", "VOUCHER_SUMMARY", "INVOICE_SUMMARY", "SALARY_SUMMARY", "UPSALE_SALARY", "UPSALE_AUTOMATION", "INCOME_AND_COST_CHART", "FEEDBACK_DEADLINES_AND_TASKS_SURVEY", "ONBOARDING", "PRODUCT_SPOTLIGHT_ANNUAL_SETTLEMENT", "HELP_CENTER_EACCOUNTING", "STICOS_SPOTLIGHT", "SPOTLIGHT_2FA", "DASHBOARD_REMINDER", "REMINDER", "TASKS", "TEST_ACCOUNT_ONBOARDING", "INVOICE_RESERVE" ] + }, + "hidden" : { + "type" : "boolean", + "readOnly" : true + }, + "rowIndex" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "rowSpan" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "colIndex" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "colSpan" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "TripletexDashboardWidgets" : { + "type" : "object", + "properties" : { + "content" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TripletexDashboardWidget" + } + }, + "sidebar" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TripletexDashboardWidget" + } + } + }, + "readOnly" : true + }, + "DashboardContextDTO" : { + "type" : "object", + "properties" : { + "contextId" : { + "type" : "string", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "loginEmployeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexEmployeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "companyCurrency" : { + "type" : "string", + "readOnly" : true + }, + "companyStartDate" : { + "type" : "string", + "readOnly" : true + }, + "language" : { + "type" : "string", + "readOnly" : true + }, + "trialAccount" : { + "type" : "boolean", + "readOnly" : true + }, + "showEaccountingMessage" : { + "type" : "boolean", + "readOnly" : true + }, + "segmentationData" : { + "$ref" : "#/components/schemas/SegmentationData" + }, + "isEligibleForOnboardingFeedback" : { + "type" : "boolean", + "readOnly" : true + }, + "loginEmployeeFirstName" : { + "type" : "string", + "readOnly" : true + }, + "isTripletexSupportProxy" : { + "type" : "boolean", + "readOnly" : true + }, + "baseApplicationURL" : { + "type" : "string", + "readOnly" : true + } + } + }, + "SegmentationData" : { + "type" : "object", + "properties" : { + "contextId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "orgNumber" : { + "type" : "string", + "readOnly" : true + }, + "isTrialAccount" : { + "type" : "boolean", + "readOnly" : true + }, + "isTestOrFreeCompany" : { + "type" : "boolean", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "isAccountant" : { + "type" : "boolean", + "readOnly" : true + }, + "isReseller" : { + "type" : "boolean", + "readOnly" : true + }, + "employeeNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "packageName" : { + "type" : "string", + "readOnly" : true + }, + "industry" : { + "type" : "string", + "readOnly" : true + }, + "outgoingInvoices" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "incomingInvoices" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyStartDateYear" : { + "type" : "string", + "readOnly" : true + }, + "companyType" : { + "type" : "string", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "mainAccountBank" : { + "type" : "string", + "readOnly" : true + }, + "modules" : { + "$ref" : "#/components/schemas/SegmentationModules" + }, + "roles" : { + "$ref" : "#/components/schemas/SegmentationRoles" + }, + "pilotFeatures" : { + "type" : "object", + "additionalProperties" : { + "type" : "boolean", + "readOnly" : true + }, + "readOnly" : true + }, + "hackedOrSupportAccess" : { + "type" : "boolean", + "readOnly" : true + }, + "tripletexCustomerCategoryId1" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexCustomerCategoryId3" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexCustomerCategoryId2" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "hasFreeDimensions" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "SegmentationModules" : { + "type" : "object", + "properties" : { + "moduleaccountinginternal" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleaccountingexternal" : { + "type" : "boolean", + "readOnly" : true + }, + "moduledepartment" : { + "type" : "boolean", + "readOnly" : true + }, + "projectForecast" : { + "type" : "boolean", + "readOnly" : true + }, + "resourcePlanning" : { + "type" : "boolean", + "readOnly" : true + }, + "capacityPlanning" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleprojecteconomy" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleinvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "modulebudget" : { + "type" : "boolean", + "readOnly" : true + }, + "referenceFee" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleHourCost" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleemployee" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleproject" : { + "type" : "boolean", + "readOnly" : true + }, + "projectCategories" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleProjectBudget" : { + "type" : "boolean", + "readOnly" : true + }, + "moduletask" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleTravelExpense" : { + "type" : "boolean", + "readOnly" : true + }, + "modulecustomer" : { + "type" : "boolean", + "readOnly" : true + }, + "modulenote" : { + "type" : "boolean", + "readOnly" : true + }, + "modulesubscription" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleproduct" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVoucherExport" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleaccountingreports" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleCustomerCategories" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleCustomerCategory1" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleCustomerCategory2" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleCustomerCategory3" : { + "type" : "boolean", + "readOnly" : true + }, + "budgetOnSubcontracts" : { + "type" : "boolean", + "readOnly" : true + }, + "approveHourLists" : { + "type" : "boolean", + "readOnly" : true + }, + "approveInvoices" : { + "type" : "boolean", + "readOnly" : true + }, + "approvetravelreports" : { + "type" : "boolean", + "readOnly" : true + }, + "completeweeklyhourlists" : { + "type" : "boolean", + "readOnly" : true + }, + "completemonthlyhourlists" : { + "type" : "boolean", + "readOnly" : true + }, + "approvemonthlyhourlists" : { + "type" : "boolean", + "readOnly" : true + }, + "mustApproveRegisteredHours" : { + "type" : "boolean", + "readOnly" : true + }, + "mustApproveRegisteredHoursForHourlyRateProjects" : { + "type" : "boolean", + "readOnly" : true + }, + "mustApproveRegisteredHoursForFixedPriceProjects" : { + "type" : "boolean", + "readOnly" : true + }, + "modulePayrollAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "modulePayrollAccountingNO" : { + "type" : "boolean", + "readOnly" : true + }, + "modulehourlist" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleTimeBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVacationBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleWorkingHours" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleCurrency" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleContact" : { + "type" : "boolean", + "readOnly" : true + }, + "autoGenerateProjectNumber" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleWageExport" : { + "type" : "boolean", + "readOnly" : true + }, + "approveWeeklyHourlists" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleProvisionSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOrderNumber" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOrderDiscount" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOrderMarkup" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOrderLineCost" : { + "type" : "boolean", + "readOnly" : true + }, + "resourceGroups" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVendor" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAutoCustomerNumber" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAutoVendorNumber" : { + "type" : "boolean", + "readOnly" : true + }, + "historicalInformation" : { + "type" : "boolean", + "readOnly" : true + }, + "showTravelReportLetterhead" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOcr" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleRemit" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleRemitZtl" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleRemitAutoPay" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleTravelExpenseRates" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVoucherScanning" : { + "type" : "boolean", + "readOnly" : true + }, + "holidayPlan" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleEmployeeCategory" : { + "type" : "boolean", + "readOnly" : true + }, + "multipleCustomerCategories" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleProductInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "autoInvoicing" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleFactoring" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleEmployeeAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleDepartmentAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleProjectAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleWageProjectAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleProductAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleElectro" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleNrf" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleResultBudget" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVoucherTypes" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleWarehouse" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleNetsPrintSalary" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleNetsPrintInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "hourlyRateProjectsWriteUpDown" : { + "type" : "boolean", + "readOnly" : true + }, + "showRecentlyClosedProjectsOnSupplierInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleEmail" : { + "type" : "boolean", + "readOnly" : true + }, + "sendPayslipsByEmail" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleApproveVoucher" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleApproveProjectVoucher" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleApproveDepartmentVoucher" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleArchive" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOrderOut" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleMesan" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAccountantConnectClient" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleDivisions" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleBoligmappa" : { + "type" : "boolean", + "readOnly" : true + }, + "markReadyForInvoicing" : { + "type" : "boolean", + "readOnly" : true + }, + "tripletexSupportLoginAccessCompanyLevel" : { + "type" : "boolean", + "readOnly" : true + }, + "modulePensionreport" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleControlSchemaRequiredInvoicing" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleControlSchemaRequiredHourTracking" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionVipps" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionEfaktura" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionPaper" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionAvtaleGiro" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionEhfIncoming" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionEhfOutbound" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAPI20" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAgro" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleMamut" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleFactoringAprila" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleCashCreditAprila" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleInvoiceOptionAutoinvoiceEhf" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleSmartScan" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAutoBankReconciliation" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleOffer" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleVoucherAutomation" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleAmortization" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleEncryptedPaySlip" : { + "type" : "boolean", + "readOnly" : true + }, + "hourCostPercentage" : { + "type" : "boolean", + "readOnly" : true + }, + "yearEndReport" : { + "type" : "boolean", + "readOnly" : true + }, + "digitalSignature" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleLogistics" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleIndustry" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleQuantityHandling" : { + "type" : "boolean", + "readOnly" : true + }, + "moduleReport" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "SegmentationRoles" : { + "type" : "object", + "properties" : { + "roleAdministrator" : { + "type" : "boolean", + "readOnly" : true + }, + "roleAccountAdministrator" : { + "type" : "boolean", + "readOnly" : true + }, + "roleSystemAdministrator" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthInvoicing" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthCompanyAdmin" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthReadOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthCreateOrder" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthAccountingSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthCompanyWageAdmin" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthTravelsAndExpensesAdminSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthInvoiceAdminSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthInboxVoucher" : { + "type" : "boolean", + "readOnly" : true + }, + "isAutWageAdminSetting" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthWageSettings" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthBankReconciliation" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthAllVouchers" : { + "type" : "boolean", + "readOnly" : true + }, + "isAuthDirectRemitZtl" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperDashboardContextDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DashboardContextDTO" + } + } + }, + "TestAccountOnboardingDTO" : { + "type" : "object", + "properties" : { + "cards" : { + "type" : "array", + "description" : "List of card types to display in the widget", + "items" : { + "type" : "string", + "description" : "List of card types to display in the widget", + "enum" : [ "INVOICE", "EXPENSE", "MY_SUBSCRIPTION", "HELP" ] + } + } + } + }, + "ResponseWrapperTestAccountOnboardingDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TestAccountOnboardingDTO" + } + } + }, + "GetStartedSummary" : { + "type" : "object", + "properties" : { + "numberOfCompletedTasks" : { + "type" : "integer", + "format" : "int32" + }, + "userName" : { + "type" : "string" + }, + "completedTasksPercentage" : { + "type" : "string" + }, + "uncompletedTasksPercentage" : { + "type" : "string" + }, + "isTourMeEligible" : { + "type" : "boolean" + }, + "hasSignedLicense" : { + "type" : "boolean" + }, + "tasks" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GetStartedTaskWidget" + } + } + } + }, + "GetStartedTaskWidget" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32" + }, + "icon" : { + "type" : "string" + }, + "title" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "enum" : [ "INITIAL", "UNAVAILABLE", "PENDING", "DONE" ] + }, + "actionUrl" : { + "type" : "string" + }, + "dataTestId" : { + "type" : "string" + } + } + }, + "ResponseWrapperGetStartedSummary" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GetStartedSummary" + } + } + }, + "IncomeAndCostSummaryDTO" : { + "type" : "object", + "properties" : { + "incomeValues" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "number", + "readOnly" : true + } + }, + "costValues" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "number", + "readOnly" : true + } + }, + "accumulatedSurplusValues" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "number", + "readOnly" : true + } + }, + "widgetDisabled" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperIncomeAndCostSummaryDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomeAndCostSummaryDTO" + } + } + }, + "InvoiceReserveDTO" : { + "type" : "object", + "properties" : { + "totalReadyToInvoice" : { + "type" : "number", + "readOnly" : true + }, + "agedAmount" : { + "type" : "number", + "readOnly" : true + }, + "lastUpdated" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperInvoiceReserveDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceReserveDTO" + } + } + }, + "InvoiceSummaryDTO" : { + "type" : "object", + "properties" : { + "moreThan30DaysOverdueSum" : { + "type" : "number", + "readOnly" : true + }, + "lessThan30DaysOverdueSum" : { + "type" : "number", + "readOnly" : true + }, + "notOverdueSum" : { + "type" : "number", + "readOnly" : true + }, + "outstandingOrdersSum" : { + "type" : "number", + "readOnly" : true + }, + "showInvoiceAction" : { + "type" : "boolean", + "readOnly" : true + }, + "lastUpdated" : { + "type" : "string", + "readOnly" : true + }, + "widgetDisabled" : { + "type" : "boolean", + "readOnly" : true + }, + "invoicingOnboardingCompleted" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperInvoiceSummaryDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InvoiceSummaryDTO" + } + } + }, + "CompanyReminder" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "submissionDate" : { + "type" : "string" + }, + "status" : { + "type" : "string" + }, + "globalReminderId" : { + "type" : "integer", + "format" : "int64" + } + } + }, + "GlobalReminder" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "enum" : [ "A_MELDING", "TAX_NOTICE", "TAX_PAYMENT", "VAT_RETURN", "SHAREHOLDER_REGISTER", "WAGE_COMPILATION", "ANNUAL_ACCOUNTS" ] + }, + "displayName" : { + "type" : "string" + }, + "deadline" : { + "type" : "string" + }, + "reminderUrl" : { + "type" : "string" + }, + "term" : { + "type" : "string", + "enum" : [ "JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC", "JAN_FEB", "MAR_APR", "MAY_JUN", "JUL_AUG", "SEP_OCT", "NOV_DEC", "JAN_MAR", "APR_JUN", "JUL_SEP", "OCT_DEC", "JAN_APR", "MAY_AUG", "SEP_DEC", "H1", "H2", "YEARLY" ] + }, + "remainingDays" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "ResponseWrapperListTripletexDashboardReminder" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TripletexDashboardReminder" + } + } + } + }, + "TripletexDashboardReminder" : { + "type" : "object", + "properties" : { + "globalReminder" : { + "$ref" : "#/components/schemas/GlobalReminder" + }, + "companyReminder" : { + "$ref" : "#/components/schemas/CompanyReminder" + }, + "reminderBorderColor" : { + "type" : "string", + "enum" : [ "NONE", "RED", "GREEN", "YELLOW" ] + } + } + }, + "ResponseWrapperCompanyReminder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyReminder" + } + } + }, + "ResponseWrapperGlobalReminder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GlobalReminder" + } + } + }, + "ReminderDTO" : { + "type" : "object", + "properties" : { + "reminders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ReminderWidgetDTO" + } + } + } + }, + "ReminderWidgetDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "deadline" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperReminderDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReminderDTO" + } + } + }, + "ResponseWrapperSalarySummaryDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalarySummaryDTO" + } + } + }, + "SalarySummaryDTO" : { + "type" : "object", + "properties" : { + "numberOfActiveEmployees" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "salaryPaymentSum" : { + "type" : "number", + "readOnly" : true + }, + "currency" : { + "type" : "string", + "readOnly" : true + }, + "salaryPercentage" : { + "type" : "number", + "readOnly" : true + }, + "employersPaymentPercentage" : { + "type" : "number", + "readOnly" : true + }, + "taxesPercentage" : { + "type" : "number", + "readOnly" : true + }, + "salaryPeriodMonthFirstDay" : { + "type" : "string", + "readOnly" : true + }, + "salaryPeriodMonthLastDay" : { + "type" : "string", + "readOnly" : true + }, + "validAltInnConfig" : { + "type" : "boolean", + "readOnly" : true + }, + "salaryVoucherPresent" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperTaskDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaskDTO" + } + } + }, + "TaskDTO" : { + "type" : "object", + "properties" : { + "tasks" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaskWidgetDTO" + } + } + } + }, + "TaskWidgetDTO" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "message" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "icon" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperTrialDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TrialDTO" + } + } + }, + "TrialDTO" : { + "type" : "object", + "properties" : { + "packageName" : { + "type" : "string", + "readOnly" : true + }, + "packageNameTranslated" : { + "type" : "string", + "readOnly" : true + }, + "companyEndDate" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperVoucherSummaryDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherSummaryDTO" + } + } + }, + "VoucherDetailsDTO" : { + "type" : "object", + "properties" : { + "count" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "baseLink" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "VoucherSummaryDTO" : { + "type" : "object", + "properties" : { + "voucherReceptionData" : { + "$ref" : "#/components/schemas/VoucherDetailsDTO" + }, + "attestationVouchersData" : { + "$ref" : "#/components/schemas/VoucherDetailsDTO" + }, + "nonPostedVouchersData" : { + "$ref" : "#/components/schemas/VoucherDetailsDTO" + }, + "automatedVouchersData" : { + "$ref" : "#/components/schemas/VoucherDetailsDTO" + } + } + }, + "UserLicense" : { + "type" : "object", + "properties" : { + "startupPaid" : { + "type" : "boolean" + }, + "id" : { + "type" : "integer", + "description" : "User license id.", + "format" : "int64", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "description" : "Company id.", + "format" : "int64", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "userCategory" : { + "type" : "integer", + "description" : "User category of the license.", + "format" : "int32", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "description" : "User license start date." + }, + "endDate" : { + "type" : "string", + "description" : "User license end date." + }, + "isStartupPaid" : { + "type" : "boolean", + "description" : "True if startup fee has been paid, false otherwise.", + "readOnly" : true + }, + "userLicenseStatus" : { + "type" : "string", + "description" : "User license status (terminated or active)", + "readOnly" : true, + "enum" : [ "TERMINATED", "ACTIVE" ] + }, + "monthlyPrice" : { + "type" : "number", + "description" : "Monthly fee paid for the user license", + "readOnly" : true + }, + "employeeDeleted" : { + "type" : "boolean", + "description" : "True if the employee was deleted but the user license still exists", + "readOnly" : true + }, + "deletedEmployeeDisplayName" : { + "type" : "string", + "description" : "Display name of the deleted employee", + "readOnly" : true + }, + "lastEditedByEmployee" : { + "$ref" : "#/components/schemas/Employee" + }, + "lastEditedByEmployeeTimestamp" : { + "type" : "string", + "description" : "Timestamp when the user license was last edited. Only relevant for Tripletex.", + "readOnly" : true + }, + "discountPriority" : { + "type" : "integer", + "description" : "Ordinal representing the position in line this discount has when receiving discounts.", + "format" : "int32", + "readOnly" : true + }, + "discountPercentage" : { + "type" : "number", + "description" : "Discount percentage", + "readOnly" : true + } + } + }, + "UserLicenseExport" : { + "type" : "object", + "properties" : { + "zeroDaysExcluded" : { + "type" : "boolean" + }, + "exportType" : { + "type" : "string", + "description" : "The type of the exported file, either PDF or CSV." + }, + "customerId" : { + "type" : "integer", + "description" : "Customer id.", + "format" : "int64", + "readOnly" : true + }, + "priceDate" : { + "type" : "string", + "description" : "Price date." + }, + "hasSingleDate" : { + "type" : "boolean", + "description" : "True if the single date option is checked.", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "The type of the user license status (ACTIVE, TERMINATED, ALL)." + }, + "userType" : { + "type" : "string", + "description" : "The type of the user (EMPLOYEE, CONTACT, ALL)." + }, + "endDate" : { + "type" : "string", + "description" : "End date." + }, + "startDate" : { + "type" : "string", + "description" : "Start date." + }, + "hasMonthlyFee" : { + "type" : "boolean", + "description" : "True if the monthly fee option is checked.", + "readOnly" : true + }, + "userLicenseType" : { + "type" : "array", + "description" : "The type of the user license.", + "items" : { + "type" : "string", + "description" : "The type of the user license." + } + }, + "isZeroDaysExcluded" : { + "type" : "boolean", + "description" : "True if the option to exclude the users licenses which lasts less than one day is checked.", + "readOnly" : true + }, + "sorting" : { + "type" : "string", + "description" : "The field which we sort by." + } + } + }, + "ListResponseUserLicense" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/UserLicense" + } + } + } + }, + "ResponseWrapperUserLicenseSettingsDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/UserLicenseSettingsDTO" + } + } + }, + "UserLicenseSettingsDTO" : { + "type" : "object", + "properties" : { + "isPriceDifferentiation" : { + "type" : "boolean" + }, + "isAdvanceInvoicing" : { + "type" : "boolean" + }, + "isAuthTripletexSupportInvoiceManager" : { + "type" : "boolean" + }, + "isAuthTripletexSupport" : { + "type" : "boolean" + }, + "customerDisplayName" : { + "type" : "string" + }, + "hasCategory2Licenses" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperUserLicense" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/UserLicense" + } + } + }, + "ResponseWrapperUserBanner" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/UserBanner" + } + } + }, + "UserBanner" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "userBannerType" : { + "type" : "string", + "readOnly" : true + }, + "closed" : { + "type" : "boolean", + "readOnly" : true + }, + "lastUpdated" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ListResponseVatReturnsOverviewItem" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatReturnsOverviewItem" + } + } + } + }, + "VatReturnsOverviewItem" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "startDate" : { + "type" : "string", + "readOnly" : true + }, + "endDate" : { + "type" : "string", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NOT_STARTED", "INSTANCE_CREATED", "VAT_ENVELOPE_DELIVERED", "VAT_RETURNS_DELIVERED", "ATTACHMENTS_DELIVERED", "FILLING_COMPLETE", "SENDING_COMPLETE", "FEEDBACK_RECEIVED", "MANUAL_DELIVERY", "USER_FORBIDDEN", "SENDING_FAILED" ] + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "voucherNumber" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "isPaid" : { + "type" : "boolean", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "termDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "reportType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + }, + "reportTypeName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseYear" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Year" + } + } + } + }, + "Year" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperVatDeliveryStatusUpdate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatDeliveryStatusUpdate" + } + } + }, + "VatDeliveryStatusUpdate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "year" : { + "type" : "integer", + "description" : "The year of the VAT term", + "format" : "int32", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The VAT term", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperVatPaymentStatusUpdate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatPaymentStatusUpdate" + } + } + }, + "VatPaymentStatusUpdate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "company" : { + "$ref" : "#/components/schemas/Company" + }, + "year" : { + "type" : "integer", + "description" : "The year of the VAT term", + "format" : "int32", + "readOnly" : true + }, + "term" : { + "type" : "integer", + "description" : "The VAT term", + "format" : "int32", + "readOnly" : true + } + } + }, + "ResponseWrapperVatReturns2022" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatReturns2022" + } + } + }, + "VatReturns2022" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "start" : { + "type" : "string", + "readOnly" : true + }, + "end" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "vatTermNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "closedDate" : { + "type" : "string", + "readOnly" : true + }, + "status" : { + "type" : "string", + "description" : "The current instance status of the vatReturns.", + "readOnly" : true, + "enum" : [ "NOT_STARTED", "INSTANCE_CREATED", "VAT_ENVELOPE_DELIVERED", "VAT_RETURNS_DELIVERED", "ATTACHMENTS_DELIVERED", "FILLING_COMPLETE", "SENDING_COMPLETE", "FEEDBACK_RECEIVED", "MANUAL_DELIVERY", "USER_FORBIDDEN", "SENDING_FAILED" ] + }, + "userComment" : { + "type" : "string", + "readOnly" : true + }, + "structuredComment" : { + "type" : "string", + "readOnly" : true + }, + "vatGroups" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatSpecificationGroup" + } + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "altinnMetadata" : { + "$ref" : "#/components/schemas/AltinnInstance" + }, + "receiptId" : { + "type" : "integer", + "description" : "Attachment for vat return", + "format" : "int32", + "readOnly" : true + }, + "totalAmountVatToPay" : { + "type" : "number", + "readOnly" : true + }, + "remainingAmountVatToPay" : { + "type" : "number", + "readOnly" : true + }, + "isPaid" : { + "type" : "boolean", + "readOnly" : true + }, + "reportType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + } + }, + "readOnly" : true + }, + "VatSpecificationGroup" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "description" : "The name of the group", + "readOnly" : true + }, + "lines" : { + "type" : "array", + "description" : "The vat lines", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatSpecificationLine" + } + }, + "totalAmountVat" : { + "type" : "number", + "description" : "Total vat amount on the group", + "readOnly" : true + }, + "totalAmountVatBasis" : { + "type" : "number", + "description" : "Total vat basis amount on the group", + "readOnly" : true + } + }, + "readOnly" : true + }, + "VatSpecificationLine" : { + "type" : "object", + "properties" : { + "vatReturns2022DTO" : { + "$ref" : "#/components/schemas/VatReturns2022" + }, + "id" : { + "type" : "integer", + "format" : "int32" + }, + "standardCode" : { + "type" : "integer", + "description" : "The SAF-T code", + "format" : "int32" + }, + "userComment" : { + "type" : "string", + "description" : "User comment" + }, + "structuredComment" : { + "type" : "string", + "description" : "Pre-generated structured comment" + }, + "rate" : { + "type" : "number", + "description" : "Rate" + }, + "basis" : { + "type" : "number", + "description" : "Basis" + }, + "vatAmount" : { + "type" : "number", + "description" : "Vat amount" + }, + "isReversable" : { + "type" : "boolean", + "description" : "Is Reversable" + }, + "expectedSign" : { + "type" : "string", + "description" : "Expected delivery sign", + "enum" : [ "ZERO", "POSITIVE", "NEGATIVE" ] + }, + "specificationType" : { + "type" : "string", + "description" : "Vat specificationType", + "enum" : [ "DEFAULT", "LOSS_OF_CLAIM", "WITHDRAWAL", "ADJUSTMENT", "REVERSAL", "COMPENSATION" ] + }, + "vatType" : { + "$ref" : "#/components/schemas/VatType" + } + }, + "description" : "The vat lines", + "readOnly" : true + }, + "ListResponseDocument" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Document" + } + } + } + }, + "ResponseWrapperVatSpecificationLine" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatSpecificationLine" + } + } + }, + "CommentInput" : { + "type" : "object", + "properties" : { + "comment" : { + "type" : "string", + "description" : "The comment" + }, + "isStructured" : { + "type" : "boolean", + "description" : "Is this comment a structured comment? It must be in a predefined list from Skatteetaten" + }, + "vatReturnsId" : { + "type" : "integer", + "description" : "The id of the vatReturns", + "format" : "int32" + } + } + }, + "VatReturns2022Creation" : { + "type" : "object", + "properties" : { + "year" : { + "minimum" : 0, + "type" : "integer", + "description" : "The year of creating the vatReturns", + "format" : "int32" + }, + "term" : { + "minimum" : 0, + "type" : "integer", + "description" : "The term of the vatReturns. Must be according to the terms the company have.", + "format" : "int32" + }, + "reportType" : { + "type" : "string", + "description" : "Vat report type", + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + } + } + }, + "ResponseWrapperVatReturnsValidationResult" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatReturnsValidationResult" + } + } + }, + "ValidationError" : { + "type" : "object", + "properties" : { + "vatCode" : { + "type" : "string", + "description" : "The vatCode connected to this error", + "readOnly" : true + }, + "vatSpecificationLineId" : { + "type" : "integer", + "description" : "The vatSpecificationLine id the error is connected to", + "format" : "int64", + "readOnly" : true + }, + "reasons" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ValidationReason" + } + } + }, + "description" : "The general error messages the validation has", + "readOnly" : true + }, + "ValidationReason" : { + "type" : "object", + "properties" : { + "statusType" : { + "type" : "string", + "description" : "The status of the reason", + "readOnly" : true, + "enum" : [ "SUCCESS", "INVALID", "WARNING", "MISSING_INFORMATION" ] + }, + "errorCode" : { + "type" : "string", + "description" : "Skatteetatens errorCode", + "readOnly" : true + }, + "reason" : { + "type" : "string", + "description" : "The actual reason for the validation error", + "readOnly" : true + }, + "developerReason" : { + "type" : "string", + "description" : "Developer message for the error. In some cases it could be a xml error, then more info will be here.", + "readOnly" : true + } + }, + "description" : "The list of reasons of this error", + "readOnly" : true + }, + "VatReturnsValidationResult" : { + "type" : "object", + "properties" : { + "validationStatus" : { + "type" : "string", + "description" : "The status of general validation", + "readOnly" : true, + "enum" : [ "SUCCESS", "INVALID", "WARNING", "MISSING_INFORMATION" ] + }, + "generalMessage" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string" + } + }, + "errors" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ValidationError" + } + } + } + }, + "ResponseWrapperVatReturns2022ValidateCreate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatReturns2022ValidateCreate" + } + } + }, + "VatReturns2022ValidateCreate" : { + "type" : "object", + "properties" : { + "incompleteVouchers" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accountingPeriodClosed" : { + "type" : "boolean", + "readOnly" : true + }, + "beforeStartBalance" : { + "type" : "boolean", + "readOnly" : true + }, + "invalidDate" : { + "type" : "boolean", + "readOnly" : true + }, + "accountsRequiringHarmonization" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Account" + } + }, + "helpAccountPostedOn" : { + "$ref" : "#/components/schemas/Account" + }, + "alreadyExists" : { + "type" : "boolean", + "readOnly" : true + }, + "success" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperVatReturnsPaymentInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatReturnsPaymentInfo" + } + } + }, + "VatReturnsPaymentInfo" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "vatReturns" : { + "$ref" : "#/components/schemas/VatReturns2022" + }, + "kid" : { + "type" : "string", + "description" : "The KID number from Skatteetaten" + }, + "account" : { + "type" : "string", + "description" : "The bank account number of Skatteetaten" + }, + "amount" : { + "type" : "number", + "description" : "Amount to pay or receive" + }, + "dueDate" : { + "type" : "string" + } + } + }, + "ListResponseVatReturnsComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatReturnsComment" + } + } + } + }, + "VatReturnsComment" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "description" : "Title of the comment", + "readOnly" : true + }, + "technicalName" : { + "type" : "string", + "description" : "Technical name of the comment", + "readOnly" : true + }, + "description" : { + "type" : "string", + "description" : "Detailed description of the comment", + "readOnly" : true + }, + "vatSpecificationType" : { + "type" : "string", + "description" : "Detailed description of the comment", + "readOnly" : true, + "enum" : [ "DEFAULT", "LOSS_OF_CLAIM", "WITHDRAWAL", "ADJUSTMENT", "REVERSAL", "COMPENSATION" ] + }, + "expectedSign" : { + "type" : "string", + "description" : "The sign expected on the structured comment", + "readOnly" : true, + "enum" : [ "ZERO", "POSITIVE", "NEGATIVE" ] + }, + "deliveredSign" : { + "type" : "string", + "description" : "The sign delivered on the structured comment", + "readOnly" : true, + "enum" : [ "ZERO", "POSITIVE", "NEGATIVE" ] + } + }, + "description" : "List of comments for the given vatCode", + "readOnly" : true + }, + "ListResponseVatReturnsVatCodeComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatReturnsVatCodeComment" + } + } + } + }, + "VatReturnsVatCodeComment" : { + "type" : "object", + "properties" : { + "vatCode" : { + "type" : "string", + "description" : "The vatCode" + }, + "comments" : { + "type" : "array", + "description" : "List of comments for the given vatCode", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatReturnsComment" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperVatTermSizeSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VatTermSizeSettings" + } + } + }, + "VatTermSizeSettings" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "reportType" : { + "type" : "string", + "description" : "VAT report type, used to separate the different var report types.", + "enum" : [ "PRIMARY_INDUSTRY", "GENERAL_INDUSTRY" ] + }, + "fromDate" : { + "type" : "string", + "description" : "Date from which this VAT term size setting is active." + }, + "termSize" : { + "type" : "string", + "description" : "VAT term type, used to calculate the start and end date for a vatreturns", + "enum" : [ "ONE_MONTH", "TWO_MONTHS", "THREE_MONTHS", "FOUR_MONTHS", "SIX_MONTHS", "YEAR", "NOT_REGISTERED" ] + } + }, + "readOnly" : true + }, + "ListResponseVatTermSizeSettings" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VatTermSizeSettings" + } + } + } + }, + "Comment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "comment" : { + "type" : "string", + "readOnly" : true + }, + "createdAt" : { + "type" : "string", + "readOnly" : true + }, + "editedAt" : { + "type" : "string", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "actualEmployeeId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "actualEmployeeCompanyId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "actualEmployeeName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperComment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Comment" + } + } + }, + "CommentCreation" : { + "type" : "object", + "properties" : { + "commentText" : { + "type" : "string", + "description" : "The text of the comment to be created" + } + } + }, + "ListResponseComment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Comment" + } + } + } + }, + "ArchiveModelTypes" : { + "type" : "object", + "properties" : { + "supplier" : { + "type" : "boolean", + "readOnly" : true + }, + "customer" : { + "type" : "boolean", + "readOnly" : true + }, + "project" : { + "type" : "boolean", + "readOnly" : true + }, + "order" : { + "type" : "boolean", + "readOnly" : true + }, + "offer" : { + "type" : "boolean", + "readOnly" : true + }, + "product" : { + "type" : "boolean", + "readOnly" : true + }, + "employee" : { + "type" : "boolean", + "readOnly" : true + }, + "account" : { + "type" : "boolean", + "readOnly" : true + }, + "asset" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperArchiveModelTypes" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ArchiveModelTypes" + } + } + }, + "ArchiveTargetPath" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseArchiveTargetPath" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ArchiveTargetPath" + } + } + } + }, + "VoucherInboxArchive" : { + "type" : "object", + "properties" : { + "ids" : { + "type" : "string", + "description" : "List of voucherInboxIds to move to archive" + }, + "pathId" : { + "type" : "integer", + "description" : "Target path in archive", + "format" : "int32" + }, + "archiveDate" : { + "type" : "string" + }, + "filename" : { + "type" : "string", + "description" : "Override filename" + }, + "modelType" : { + "type" : "string", + "description" : "Add to specific archive", + "enum" : [ "NONE", "CUSTOMER", "SUPPLIER", "PROJECT", "ORDER", "OFFER", "PRODUCT", "EMPLOYEE", "ACCOUNT", "ASSET" ] + }, + "modelId" : { + "type" : "integer", + "format" : "int32" + }, + "addToInvoice" : { + "type" : "string", + "description" : "Add to document to invoice", + "enum" : [ "ADD_TO_INVOICE_NONE", "ADD_TO_INVOICE_NEXT", "ADD_TO_INVOICE_ALL" ] + } + } + }, + "PredictionKey" : { + "type" : "object", + "properties" : { + "account" : { + "type" : "string" + }, + "vatNumber" : { + "type" : "string" + }, + "project" : { + "type" : "string" + }, + "department" : { + "type" : "string" + } + } + }, + "PredictionLine" : { + "type" : "object", + "properties" : { + "account" : { + "type" : "string", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + }, + "vatNumber" : { + "type" : "string", + "readOnly" : true + }, + "vatPercentage" : { + "type" : "number", + "readOnly" : true + }, + "project" : { + "type" : "string", + "readOnly" : true + }, + "department" : { + "type" : "string", + "readOnly" : true + }, + "key" : { + "$ref" : "#/components/schemas/PredictionKey" + } + }, + "readOnly" : true + }, + "ResponseWrapperVoucherInboxItem" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherInboxItem" + } + } + }, + "VoucherInboxItem" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "filterType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNKNOWN", "EHF", "EHF_WITH_PREDICTIONS", "EFO_NELFO", "EFO_NELFO_WITH_PREDICTIONS", "INVOICE", "PDF_INVOICE", "PDF_INVOICE_WITH_PREDICTIONS", "PDF_RECEIPT", "PDF_CREDIT_NOTE", "ERROR_EHF_IMPORT", "REPLAYABLE_VOUCHER", "REMINDER_SPECIFICATION" ] + }, + "receivedDate" : { + "type" : "string", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "invoiceId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "bankAccount" : { + "type" : "string", + "readOnly" : true + }, + "kid" : { + "type" : "string", + "readOnly" : true + }, + "merchantName" : { + "type" : "string", + "readOnly" : true + }, + "orderNumberCustomer" : { + "type" : "string", + "readOnly" : true + }, + "orderNumberBuyer" : { + "type" : "string", + "readOnly" : true + }, + "projectRef" : { + "type" : "string", + "readOnly" : true + }, + "vendorRef" : { + "type" : "string", + "readOnly" : true + }, + "buyersRef" : { + "type" : "string", + "readOnly" : true + }, + "buyersContact" : { + "type" : "string", + "readOnly" : true + }, + "lastComment" : { + "type" : "string", + "readOnly" : true + }, + "invoiceNumber" : { + "type" : "string", + "readOnly" : true + }, + "invoiceDate" : { + "type" : "string", + "readOnly" : true + }, + "dueDate" : { + "type" : "string", + "readOnly" : true + }, + "isDue" : { + "type" : "boolean", + "readOnly" : true + }, + "supplierName" : { + "type" : "string", + "readOnly" : true + }, + "invoiceAmount" : { + "type" : "number", + "readOnly" : true + }, + "invoiceCurrency" : { + "type" : "string", + "readOnly" : true + }, + "documents" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "documentIds" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "account" : { + "type" : "string", + "readOnly" : true + }, + "vatNumber" : { + "type" : "string", + "readOnly" : true + }, + "vatAmount" : { + "type" : "number", + "readOnly" : true + }, + "vatPercentage" : { + "type" : "number", + "readOnly" : true + }, + "project" : { + "type" : "string", + "readOnly" : true + }, + "department" : { + "type" : "string", + "readOnly" : true + }, + "paymentTypeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "paymentType" : { + "type" : "string", + "readOnly" : true + }, + "importFailureReason" : { + "type" : "string", + "readOnly" : true + }, + "predictionLines" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/PredictionLine" + } + }, + "filename" : { + "type" : "string", + "readOnly" : true + }, + "isTemporary" : { + "type" : "boolean", + "readOnly" : true + }, + "isInvoiceSimple" : { + "type" : "boolean", + "readOnly" : true + }, + "isInvoiceDetailed" : { + "type" : "boolean", + "readOnly" : true + }, + "hasPredictions" : { + "type" : "boolean", + "description" : "Has one or more predictions from FabricAi", + "readOnly" : true + }, + "hasSmartScanSuggestions" : { + "type" : "boolean", + "description" : "Has one or more suggestions from SmartScan", + "readOnly" : true + }, + "isLocked" : { + "type" : "boolean", + "description" : "Is voucher locked for change by external integration", + "readOnly" : true + }, + "commentCount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "nonAutomationReason" : { + "type" : "string", + "readOnly" : true + }, + "pdfScanningStatus" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NOT_STARTED", "SENT", "PROCESSING", "COMPLETED", "FAILED", "PROCESSING_ERROR", "VALIDATION_ERROR", "WONT_SEND", "STOPPED" ] + }, + "smartScanStatus" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NOT_STARTED", "SENT", "COMPLETED", "FAILED", "PROCESSING_ERROR", "STOPPED" ] + }, + "isPDFInvoiceWhichCanBeSentToLedger" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeSentToLedger" : { + "type" : "boolean", + "description" : "Possible to do one click 'Send to ledger'", + "readOnly" : true + }, + "canBeRegisteredAsChanged" : { + "type" : "boolean", + "description" : "Possible to do one click 'Send to ledger'", + "readOnly" : true + }, + "canBeRegisteredAsSimpleInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsDetailedInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsIncomingInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsBankReconciliation" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsPaymentIn" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsIncome" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsCustomsDeclaration" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsAdvanced" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeSentToAccountant" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeSentToArchive" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeDeleted" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredInQueue" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeMerged" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeReclaimed" : { + "type" : "boolean", + "readOnly" : true + }, + "canChangeDescription" : { + "type" : "boolean", + "readOnly" : true + }, + "preferDetailedInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "approvalHasBeenRejected" : { + "type" : "boolean", + "readOnly" : true + }, + "allowPostingBeforeVoucherApproved" : { + "type" : "boolean", + "readOnly" : true + }, + "senderEmailAddress" : { + "type" : "string", + "readOnly" : true + }, + "isSpam" : { + "type" : "boolean", + "readOnly" : true + }, + "emailArrivalTime" : { + "type" : "string", + "readOnly" : true + }, + "spamReportForDisplay" : { + "type" : "string", + "readOnly" : true + }, + "hasAttachment" : { + "type" : "boolean", + "readOnly" : true + }, + "voucherDocuments" : { + "type" : "array", + "description" : "All documents linked to this voucher for PDF display", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherDocument" + } + }, + "documentUploaderName" : { + "type" : "string", + "readOnly" : true + }, + "documentUploaderEmail" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "VoucherChangeDescription" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "voucherInboxId to rename", + "format" : "int32" + }, + "description" : { + "type" : "string", + "description" : "New description" + }, + "companyId" : { + "type" : "integer", + "description" : "Company id", + "format" : "int32" + } + } + }, + "ListResponseVoucherInboxItem" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherInboxItem" + } + } + } + }, + "VoucherDelete" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "voucherInboxId to delete", + "format" : "int32" + }, + "companyId" : { + "type" : "integer", + "description" : "CompanyId", + "format" : "int32" + } + } + }, + "ResponseWrapperVoucherInboxContext" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherInboxContext" + } + } + }, + "VoucherInboxContext" : { + "type" : "object", + "properties" : { + "contextId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyName" : { + "type" : "string", + "readOnly" : true + }, + "showInbox" : { + "type" : "boolean", + "readOnly" : true + }, + "showAttestation" : { + "type" : "boolean", + "readOnly" : true + }, + "showFollowUp" : { + "type" : "boolean", + "readOnly" : true + }, + "showLastUpdated" : { + "type" : "boolean", + "readOnly" : true + }, + "showGoToPayment" : { + "type" : "boolean", + "readOnly" : true + }, + "showApprovePayment" : { + "type" : "boolean", + "readOnly" : true + }, + "showClientInbox" : { + "type" : "boolean", + "readOnly" : true + }, + "hasAutomation" : { + "type" : "boolean", + "readOnly" : true + }, + "hasEfoNelfoInvoices" : { + "type" : "boolean", + "readOnly" : true + }, + "hasBankAgreement" : { + "type" : "boolean", + "readOnly" : true + }, + "authAddBankAccountNumbers" : { + "type" : "boolean", + "readOnly" : true + }, + "allowPostingBeforeVoucherApproved" : { + "type" : "boolean", + "readOnly" : true + }, + "authSendToLedger" : { + "type" : "boolean", + "readOnly" : true + }, + "isUserReadOnly" : { + "type" : "boolean", + "writeOnly" : true + }, + "canUserUpload" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserRegisterAdvancedVoucher" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserCreateIncomeVoucher" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserUseCustomsDeclaration" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserUseIncomingInvoiceBeta" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserUseInvoiceDetailed" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserUseInvoiceSimple" : { + "type" : "boolean", + "readOnly" : true + }, + "establishedCompany" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserAccessAutomationPage" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserAccessSuppliers" : { + "type" : "boolean", + "readOnly" : true + }, + "inDeveloperMode" : { + "type" : "boolean", + "readOnly" : true + }, + "inTaskFoxDeveloperMode" : { + "type" : "boolean", + "readOnly" : true + }, + "inNewVoucherMenuPilot" : { + "type" : "boolean", + "readOnly" : true + }, + "inAttestationSupplierInvoicePilot" : { + "type" : "boolean", + "readOnly" : true + }, + "voucherAttestationEnabled" : { + "type" : "boolean", + "readOnly" : true + }, + "voucherScanningEmail" : { + "type" : "string", + "readOnly" : true + }, + "mainBankAccountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "roundOffAccountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "employeeId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "automatedVouchersLast30Days" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "tripletexStartDate" : { + "type" : "string", + "readOnly" : true + }, + "companyAttestorCanOverride" : { + "type" : "boolean", + "readOnly" : true + }, + "showUserSurveyBanner" : { + "type" : "boolean", + "readOnly" : true + }, + "isActiveAccountantProxy" : { + "type" : "boolean", + "readOnly" : true + }, + "isActiveAuditorProxy" : { + "type" : "boolean", + "readOnly" : true + }, + "canUserActivateModules" : { + "type" : "boolean", + "readOnly" : true + }, + "companyCurrency" : { + "type" : "string", + "readOnly" : true + }, + "companyCurrencyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "hasModuleDepartmentAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleProductAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleProduct" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleEmployee" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleProject" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleProjectAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "defaultChargeOnProject" : { + "type" : "boolean", + "readOnly" : true + }, + "showRecentlyClosedProjectsOnSupplierInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "allowMultipleProjectInvoiceVat" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleLogistics" : { + "type" : "boolean", + "readOnly" : true + }, + "hasWarehouseLocation" : { + "type" : "boolean", + "readOnly" : true + }, + "mainWarehouseId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "hasModuleQuantityHandling" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleMultipleLedgers" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleFixedAssetRegister" : { + "type" : "boolean", + "readOnly" : true + }, + "incomingInvoicePilot" : { + "type" : "boolean", + "readOnly" : true + }, + "isQualifiedForIncomingInvoicePilotOptIn" : { + "type" : "boolean", + "readOnly" : true + }, + "inIncomingInvoiceOptInPilot" : { + "type" : "boolean", + "readOnly" : true + }, + "inKrrAdvancedVoucherPilot" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleVoucherTypes" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleVoucherApproval" : { + "type" : "boolean", + "readOnly" : true + }, + "hasModuleYearEndReport" : { + "type" : "boolean", + "writeOnly" : true + }, + "mainModule" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ACCOUNTING", "INVOICE", "CRM", "PROJECT", "WAGE", "NETS_PRINT", "NETS_PRINT_SALARY", "OCR", "REMIT", "SMS_NOTIFICATION", "VOUCHER_SCANNING", "TIME_TRACKING", "VVS_ELECTRO", "UBEGRENSET_BILAG_VVS_ELEKTRO", "INVOICE_OPTION_VIPPS", "INVOICE_OPTION_EFAKTURA", "INVOICE_OPTION_AVTALEGIRO", "INVOICE_OPTION_PAPER", "INVOICE_OPTION_AUTOINVOICE_OUTBOUND_EHF", "API_V2", "SMART_SCAN", "BILAG_0_100_mikro", "BILAG_0_500_vanlig_legacy", "BILAG_501_1000_vanlig_legacy", "BILAG_1001_2000_vanlig_legacy", "BILAG_2001_3500_vanlig_legacy", "BILAG_3501_5000_vanlig_legacy", "BILAG_5001_10001_vanlig_legacy", "UBEGRENSET_BILAG_vanlig_legacy", "BILAG_0_500_prosjekt_legacy", "BILAG_501_1000_prosjekt_legacy", "BILAG_1001_2000_prosjekt_legacy", "BILAG_2001_3500_prosjekt_legacy", "BILAG_3501_5000_prosjekt_legacy", "BILAG_5001_10001_prosjekt_legacy", "UBEGRENSET_BILAG_prosjekt_legacy", "MIKRO", "MINI", "MEDIUM", "TOTAL", "BASIS", "SMART", "AGRO_CLIENT", "MAMUT", "KOMPLETT", "SMART_WAGE", "SMART_TIME_TRACKING", "BILAG_0_500", "BILAG_501_1000", "BILAG_1001_2000", "BILAG_2001_3500", "BILAG_3501_5000", "BILAG_5001_10001", "UBEGRENSET_BILAG", "READ_ONLY_ACCESS", "READ_ONLY_ACCESS_FREE", "AUTOPAY", "VOUCHER_APPROVAL", "SMART_PROJECT", "ACCOUNT_OFFICE", "UNLIMITED_VOUCHER_ACCOUNT_OFFICE", "COMPANY_SERVICE_FOR_PAYING_ACCOUNT_OFFICES", "AGRO_WAGE", "INVOICE_OPTION_AUTOINVOICE_INCOMING_EHF", "MAMUT_PROJECT", "MAMUT_WITH_WAGE", "USER_SERVICE_HISTORIC_CUSTOMERS_NON_STANDARD", "ENCRYPTED_PAYSLIP", "AGRO_LICENCE", "AGRO_DOCUMENT_CENTER", "AGRO_INVOICE", "FIVE_EMPLOYEES", "AUTOPLUS_MINI", "AUTOPLUS_MEDIUM", "AUTOPLUS_STOR", "CASH_CREDIT_APRILA", "NO1TS", "NO1TS_TRAVELREPORT", "NO1TS_ACCOUNTING", "AGRO_INVOICE_MIGRATED", "USER_CATEGORY_1_LICENSE", "USER_CATEGORY_2_LICENSE", "USER_CATEGORY_3_LICENSE", "VOUCHER_FACTORY", "OCR_AUTOPAY", "CLOSED_ACCOUNT", "LOGISTICS", "INTEGRATION_PARTNER", "CREDIT_SCORING", "ZTL", "PLUSS", "YEAR_END_REPORTING_ENK", "YEAR_END_REPORTING_AS", "BILAG_0_100_MIKRO_AUTOMATION", "BILAG_0_500_AUTOMATION", "BILAG_501_1000_AUTOMATION", "BILAG_1001_2000_AUTOMATION", "BILAG_2001_3500_AUTOMATION", "BILAG_3501_5000_AUTOMATION", "BILAG_5001_10001_AUTOMATION", "UBEGRENSET_BILAG_AUTOMATION", "CMA_SHOPIFY", "CMA_MYSTORE", "CMA_WOOCOMMERCE", "RACKBEAT", "DIYPACKAGE", "YEAR_END_REPORTING_ANS", "YEAR_END_REPORTING_DA", "YEAR_END_REPORTING_STI", "YEAR_END_REPORTING_ORG", "YEAR_END_REPORTING_SA", "YEAR_END_REPORTING_FLI", "YEAR_END_REPORTING_NUF", "PRIMARY_INDUSTRY", "FIXED_ASSETS_REGISTER", "STICOS", "PRO", "RECONCILIATION", "DIGITAL_SIGNING", "TRIPLETEX_MCP_BETA" ] + }, + "dimension1Name" : { + "type" : "string", + "readOnly" : true + }, + "dimension1InUse" : { + "type" : "boolean", + "readOnly" : true + }, + "dimension2Name" : { + "type" : "string", + "readOnly" : true + }, + "dimension2InUse" : { + "type" : "boolean", + "readOnly" : true + }, + "dimension3Name" : { + "type" : "string", + "readOnly" : true + }, + "dimension3InUse" : { + "type" : "boolean", + "readOnly" : true + }, + "userReadOnly" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperVoucherInboxQueueMetadata" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherInboxQueueMetadata" + } + } + }, + "VoucherInboxQueueMetadata" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "canBeRegisteredAsIncomingInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsIncome" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsAdvanced" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsCustomsDeclaration" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsSimpleInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsDetailedInvoice" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeRegisteredAsChanged" : { + "type" : "boolean", + "readOnly" : true + }, + "canBeMerged" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperVoucherMessage" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherMessage" + } + } + }, + "VoucherMessage" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "voucherId" : { + "type" : "integer", + "description" : "The voucher this message is connected to. Required on create, and populated in responses.", + "format" : "int64" + }, + "content" : { + "type" : "string", + "description" : "The message" + }, + "sender" : { + "$ref" : "#/components/schemas/Employee" + }, + "sendTime" : { + "type" : "string", + "description" : "The timestamp of the message" + } + }, + "readOnly" : true + }, + "ListResponseVoucherMessage" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherMessage" + } + } + } + }, + "ResponseWrapperVoucherStatus" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/VoucherStatus" + } + } + }, + "VoucherStatus" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "voucher" : { + "$ref" : "#/components/schemas/Voucher" + }, + "type" : { + "type" : "string", + "description" : "The type of process", + "readOnly" : true, + "enum" : [ "TRIPLETEX", "SUPPLIERINVOICE_EXTERNAL", "DEBT_COLLECTION" ] + }, + "status" : { + "type" : "string", + "description" : "Process status", + "enum" : [ "WAITING", "DONE", "SKIPPED", "ERROR", "NONE", "PROCESSING", "RECLAIMED" ] + }, + "timestamp" : { + "type" : "string", + "description" : "Time of last update", + "readOnly" : true + }, + "message" : { + "type" : "string", + "description" : "1 or 0 predefined status message", + "enum" : [ "NONE", "ONGOING", "NEEDS_APPROVAL", "WITHDRAWN", "SETTLED" ] + }, + "externalObjectUrl" : { + "type" : "string", + "description" : "Link to external object" + }, + "comment" : { + "type" : "string" + }, + "referenceNumber" : { + "type" : "string", + "description" : "reference number to external object" + } + }, + "readOnly" : true + }, + "ListResponseVoucherStatus" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/VoucherStatus" + } + } + } + }, + "Banner" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "bannerType" : { + "type" : "string", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "message" : { + "type" : "string", + "readOnly" : true + }, + "button" : { + "type" : "string", + "readOnly" : true + }, + "link" : { + "type" : "string", + "readOnly" : true + }, + "tag" : { + "type" : "string", + "readOnly" : true + }, + "done" : { + "type" : "boolean", + "readOnly" : true + }, + "cancellable" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperBanner" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Banner" + } + } + }, + "GeneralBannerDTO" : { + "type" : "object", + "properties" : { + "bannerType" : { + "type" : "string", + "enum" : [ "info", "warning", "error", "success" ] + }, + "tag" : { + "type" : "string" + }, + "title" : { + "type" : "string" + }, + "link" : { + "type" : "string" + }, + "message" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "ListResponseGeneralBannerDTO" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GeneralBannerDTO" + } + } + } + }, + "ListResponseBanner" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Banner" + } + } + } + }, + "Callout" : { + "type" : "object", + "properties" : { + "severity" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "INFO", "WARNING", "ERROR", "CONFIRMATION" ] + }, + "message" : { + "type" : "string", + "readOnly" : true + }, + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "pageSpecific" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseCallout" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Callout" + } + } + } + }, + "GetStartedBannerData" : { + "type" : "object", + "properties" : { + "banner" : { + "type" : "string", + "enum" : [ "ListNotesBanner", "TestBannerPleaseIgnore", "SalaryTaxCardBanner", "SalaryAmeldingBanner", "UpdateHourListBanner", "TravelsAndExpensesBanner", "ReportViewerBanner", "ClientTasksViewBanner", "YearEndPageBanner", "InboxArchiveBanner", "BankReconciliationAutoBanner", "VoucherReceptionBanner", "CreateSalaryBanner", "NewOrderInvoiceBanner", "SimpleInvoiceToEffortlessBanner", "UserTestEffortlessBanner", "UserInsightInterestNoteBanner", "UserTestEffortlessBannerLogistics", "ActivateEHFBanner", "ActivateEFakturaBanner", "TripletexDashboardBanner", "VoucherAutomationBanner", "PurchaseOrdersBanner", "CompanyInformationBanner", "StartBalanceBanner", "PaymentsBanner", "YearEndReportTripletexDashboardBanner", "YearEndSubmissionOpenEnkBanner", "YearEndSubmissionOpenAsBanner", "YearEndSubmissionReminderEnkBanner", "YearEndSubmissionReminderBanner", "FeedbackDeadlinesAndTasksSurveyBanner", "MySubscriptionSurveyBanner", "AIAssistantInstructionsBanner", "SticosSurveyBanner", "SticosInfoBanner", "SalaryOverviewBanner", "AccountingSettingsBanner", "UpsellFromBasisToSmartTripletexDashboardBanner", "CopilotInfoBanner", "ProductOverviewBanner", "MySubscriptionInTripletexBanner", "NewDashboardReminderBanner", "AttestationBanner", "Altinn3Banner", "AISeminarBanner", "RecurringOrdersOptInBanner", "RecurringOrdersInfoBanner" ] + }, + "state" : { + "type" : "string", + "enum" : [ "VISIBLE", "MINIMIZED", "DISMISSED" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperListGetStartedBannerData" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GetStartedBannerData" + } + } + } + }, + "ResponseWrapperGetStartedBannerData" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GetStartedBannerData" + } + } + }, + "ListResponseGetStartedBannerData" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GetStartedBannerData" + } + } + } + }, + "Favorite" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "rank" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "pageUrl" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "FavoriteMenu" : { + "type" : "object", + "properties" : { + "shouldShow" : { + "type" : "boolean", + "readOnly" : true + }, + "favoriteList" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Favorite" + } + } + } + }, + "ResponseWrapperFavoriteMenu" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/FavoriteMenu" + } + } + }, + "ResponseWrapperHelpCenterState" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "OPEN", "CLOSED" ] + } + } + }, + "McpClientCompany" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "mcpEnabled" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "McpCompany" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "mcpEnabled" : { + "type" : "boolean", + "readOnly" : true + }, + "payslipOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "clients" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/McpClientCompany" + } + }, + "clientsTruncated" : { + "type" : "boolean", + "description" : "True when the clients list was cut off at the server-side limit and may be incomplete", + "readOnly" : true + } + } + }, + "ResponseWrapperListMcpCompany" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/McpCompany" + } + } + } + }, + "Menu" : { + "type" : "object", + "properties" : { + "menuStyle" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NORMAL", "AGRO", "AGRO_ON_PREMISE" ] + }, + "menuItems" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MenuItem" + } + }, + "defaultContentUrl" : { + "type" : "string", + "readOnly" : true + }, + "showTrialWidget" : { + "type" : "boolean", + "readOnly" : true + }, + "packageName" : { + "type" : "string", + "readOnly" : true + }, + "purchaseUrl" : { + "type" : "string", + "readOnly" : true + }, + "trialExpiresDate" : { + "type" : "string", + "readOnly" : true + }, + "currentServerTime" : { + "type" : "string", + "readOnly" : true + }, + "showCategorizedSearch" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "MenuItem" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string", + "readOnly" : true + }, + "theme" : { + "type" : "string", + "readOnly" : true + }, + "testId" : { + "type" : "string", + "readOnly" : true + }, + "icon" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperMenu" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Menu" + } + } + }, + "ListResponseMenuItemV2" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MenuItemV2" + } + } + } + }, + "MenuItemV2" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string" + }, + "id" : { + "type" : "string" + }, + "url" : { + "type" : "string" + }, + "category" : { + "type" : "string" + }, + "isChild" : { + "type" : "boolean", + "writeOnly" : true + }, + "child" : { + "type" : "boolean" + } + }, + "readOnly" : true + }, + "ListResponseNews" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/News" + } + } + } + }, + "News" : { + "type" : "object", + "properties" : { + "title" : { + "type" : "string" + }, + "publish_date" : { + "type" : "string" + }, + "excerpt" : { + "type" : "string" + }, + "permalink" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "PageOptions" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "key" : { + "type" : "string", + "description" : "The lookup key for this PageOptions entry" + }, + "type" : { + "type" : "string", + "description" : "The type that `data` is", + "enum" : [ "IncomingInvoiceViewOptions", "PurchaseOrderOverviewOptions", "BankBalanceEstimationViewOptions", "OrderFormViewOptions", "InvoiceOverviewOptions", "VoucherFlowViewOptions", "SalaryOnboardingOptions", "IncomePageViewOptions", "ReconciliationViewOptions", "IncomingInvoiceUnifiedViewOptions" ] + }, + "level" : { + "type" : "string", + "description" : "The level that `data` is stored at", + "enum" : [ "Employee", "Company" ] + }, + "data" : { + "type" : "object", + "additionalProperties" : { + "type" : "object", + "description" : "The actual options as a JSON blob" + }, + "description" : "The actual options as a JSON blob" + } + } + }, + "ResponseWrapperPageOptions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PageOptions" + } + } + }, + "CompanyChooserCompany" : { + "type" : "object", + "properties" : { + "url" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "parent" : { + "$ref" : "#/components/schemas/CompanyChooserCompany" + }, + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "isSuspended" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "CompanyChooserDTO" : { + "type" : "object", + "properties" : { + "currentCompany" : { + "$ref" : "#/components/schemas/CompanyChooserCompany" + }, + "hasAccessToMultipleCompanies" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperCompanyChooserDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyChooserDTO" + } + } + }, + "ResponseWrapperListCompanyChooserCompany" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CompanyChooserCompany" + } + } + } + }, + "ProfileDTO" : { + "type" : "object", + "properties" : { + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "profileImageUrl" : { + "type" : "string", + "readOnly" : true + }, + "menuItems" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/MenuItem" + } + }, + "site" : { + "type" : "string", + "readOnly" : true + }, + "userLocale" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperProfileDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProfileDTO" + } + } + }, + "ListResponseZendeskSearchResult" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZendeskSearchResult" + } + } + } + }, + "ZendeskSearchResult" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "title" : { + "type" : "string", + "readOnly" : true + }, + "url" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperSegmentationData" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SegmentationData" + } + } + }, + "ResponseWrapperSpacesuitMetaDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SpacesuitMetaDTO" + } + } + }, + "SpacesuitMetaDTO" : { + "type" : "object", + "properties" : { + "helpCenterBaseUrl" : { + "type" : "string" + }, + "chatBaseUrl" : { + "type" : "string" + } + } + }, + "ResponseWrapperZendeskChatMetaDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZendeskChatMetaDTO" + } + } + }, + "TicketFields" : { + "type" : "object", + "properties" : { + "companyId" : { + "type" : "string", + "readOnly" : true + }, + "contextId" : { + "type" : "string", + "readOnly" : true + }, + "copilotResponseId" : { + "type" : "string", + "readOnly" : true + }, + "mcpChatId" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ZendeskChatMetaDTO" : { + "type" : "object", + "properties" : { + "apiKey" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "email" : { + "type" : "string", + "readOnly" : true + }, + "locale" : { + "type" : "string", + "readOnly" : true + }, + "departments" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "tags" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "useMessaging" : { + "type" : "boolean", + "readOnly" : true + }, + "hasActiveConversation" : { + "type" : "boolean", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "contextId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "ticketFields" : { + "$ref" : "#/components/schemas/TicketFields" + }, + "redDay" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "TranscriptRequest" : { + "type" : "object", + "properties" : { + "transcript" : { + "type" : "string", + "description" : "AI assistant transcript text" + } + }, + "description" : "Request to store an AI transcript for later attachment to a Zendesk ticket" + }, + "ConnectionTestRequest" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "description" : "Type of connection to test: PRODUCT or CUSTOMER", + "enum" : [ "PRODUCT", "CUSTOMER" ] + }, + "companyId" : { + "type" : "integer", + "description" : "Company ID (required for CUSTOMER type, null for PRODUCT)", + "format" : "int32" + }, + "wholesalerCompanyId" : { + "type" : "integer", + "description" : "Wholesaler company ID", + "format" : "int32" + }, + "credentialType" : { + "type" : "string", + "description" : "Credential type to test: IMPORT or EXPORT (used for CUSTOMER type)", + "enum" : [ "IMPORT", "EXPORT" ] + } + }, + "description" : "Connection test request" + }, + "Altinn2ReceptionReceipt" : { + "type" : "object", + "properties" : { + "subReceipts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Altinn2ReceptionReceipt" + } + }, + "messages" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Altinn2ReceptionReceiptMessage" + } + }, + "status" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "4", "5" ] + } + }, + "readOnly" : true + }, + "Altinn2ReceptionReceiptMessage" : { + "type" : "object", + "properties" : { + "severity" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "0", "1" ] + }, + "subject" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "fieldName" : { + "type" : "string", + "readOnly" : true + }, + "deviationInfo" : { + "$ref" : "#/components/schemas/Altinn2ReceptionReceiptMessageDeviationInfo" + }, + "positionInfo" : { + "$ref" : "#/components/schemas/Altinn2ReceptionReceiptMessagePositionInfo" + }, + "raw" : { + "type" : "string", + "readOnly" : true + }, + "xpath" : { + "type" : "string", + "readOnly" : true + } + } + }, + "Altinn2ReceptionReceiptMessageDeviationInfo" : { + "type" : "object", + "properties" : { + "submittedValue" : { + "type" : "string", + "readOnly" : true + }, + "expectedValue" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "Altinn2ReceptionReceiptMessagePositionInfo" : { + "type" : "object", + "properties" : { + "line" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "position" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "AnnualAccountsSubTotalLine" : { + "type" : "object", + "properties" : { + "orid" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "technicalName" : { + "type" : "string", + "readOnly" : true + }, + "info" : { + "type" : "string", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "notes" : { + "type" : "string", + "readOnly" : true + }, + "freeNotes" : { + "type" : "string", + "readOnly" : true + } + } + }, + "AnnualAccountsSubTotalSection" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string" + }, + "sumOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "sumClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "subTotalLines" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalLine" + } + } + } + }, + "AnnualAccountsSubmissionResult" : { + "type" : "object", + "properties" : { + "failureStep" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "4", "5", "6", "64", "255" ] + }, + "failureCategory" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "4" ] + }, + "failureMainMessage" : { + "type" : "string" + }, + "failureMessage" : { + "type" : "string" + }, + "receptionReceipt" : { + "$ref" : "#/components/schemas/Altinn2ReceptionReceipt" + } + } + }, + "ResponseWrapperYearEndAnnualAccounts" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndAnnualAccounts" + } + } + }, + "YearEndAnnualAccounts" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "sentDate" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "enum" : [ "STARTED", "UPDATED", "RESTARTED", "SUBMITTED_UNSIGNED", "SUBMITTED_SIGNED", "USER_MARKED_AS_SIGNEDBYALL", "SYSTEM_MARKED_AS_SIGNEDBYALL" ] + }, + "submissionInProgress" : { + "type" : "boolean" + }, + "submissionAttemptDate" : { + "type" : "string" + }, + "submissionResult" : { + "$ref" : "#/components/schemas/AnnualAccountsSubmissionResult" + }, + "operatingProfitRevenues" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "operatingProfitExpenses" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "operatingProfit" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "netFinancialItemsIncome" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "netFinancialItemsExpenses" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "netFinancialItems" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "ordinaryResultBeforeTaxes" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "ordinaryResultAfterTaxes" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "netProfitOrLossForTheYear" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "netProfitOrLossForTheYearAfterMinoritiesShareOfProfit" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "transfers" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "fixedAssetsIntangible" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "fixedAssetsTangible" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "fixedAssetsFinancial" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "fixedAssets" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "currentAssetsStocks" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "currentAssetsReceivables" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "currentAssetsInvestments" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "currentAssetsBankDepositsCash" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "currentAssets" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "assets" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "equityPaidInCapital" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "equityRetainedEarnings" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "equity" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "longTermLiabilitiesProvisions" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "longTermLiabilitiesOther" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "longTermLiabilities" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "currentLiabilities" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "liabilities" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "equityAndLiabilities" : { + "$ref" : "#/components/schemas/AnnualAccountsSubTotalSection" + }, + "sumOpeningBalance" : { + "type" : "number" + }, + "sumClosingBalance" : { + "type" : "number" + } + } + }, + "ListResponseYearEndAnnualAccountsCode" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/YearEndAnnualAccountsCode" + } + } + } + }, + "YearEndAnnualAccountsCode" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "guid" : { + "type" : "string", + "readOnly" : true + }, + "languageTextNO" : { + "type" : "string", + "readOnly" : true + }, + "languageTextEN" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + } + }, + "BasicData" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "nationalIdentityNumber" : { + "type" : "string" + }, + "businessActivityType" : { + "type" : "string", + "enum" : [ "OTHER_COMMERCIAL_ACTIVITIES", "OTHER_COMMERCIAL_ACTIVITIES_2", "OTHER_COMMERCIAL_ACTIVITIES_3", "OTHER_COMMERCIAL_ACTIVITIES_4", "AGRICULTURE_HORTICULTURE_FUR_FARMING", "FISHING_AND_HUNTING_AT_SEA", "REINDEER_HUSBANDRY", "FAMILY_DAY_CARE_CENTRE_IN_OWN_HOME", "SLATE_QUARRYING", "FORESTRY", "NOT_INDUSTRY" ] + }, + "businessActivityDescription" : { + "type" : "string" + }, + "isCompanyLiquidated" : { + "type" : "boolean" + }, + "companyLiquidatedYear" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "GenericData" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32" + }, + "genericDataType" : { + "type" : "string", + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubType" : { + "type" : "string", + "enum" : [ "NONE", "NOT_LICENSED", "FREIGHT_TRANSPORT", "TAXI", "ACQUISITION_AND_REALIZATION", "PRODUCT_TYPE_INVENTORY", "CASH_REGISTER_SYSTEM", "PRIVATE_WITHDRAWAL_OF_GOODS", "ENTERTAINMENT", "MULTI_UNIT_BUILDING_UNIT", "RENTAL_WITHDRAWAL_SALE_COMPANY", "RENTAL_WITHDRAWAL_SALE_SHAREHOLDER", "RESOLUTION", "WORK_PACKAGE", "COLLABORATIVE_BUSINESS", "OTHER_PUBLIC_SUPPORT", "BUSINESS_ACTIVITY", "RELATED_COMPANY", "FUNCTION_AND_RISK", "TRANSACTION", "OUTSTANDING", "INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM", "COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP", "INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM", "INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION", "ENTERPRISE_DEBT_ALLOCATION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "integer", + "format" : "int32" + }, + "postType" : { + "type" : "string", + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "string" + } + } + }, + "TangibleFixedAsset" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "businessActivityTitle" : { + "type" : "string", + "readOnly" : true + }, + "objectIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "objectGroup" : { + "type" : "string", + "readOnly" : true + }, + "accountNumber" : { + "type" : "string", + "readOnly" : true + }, + "accountId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "accountName" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "newAcquisitions" : { + "type" : "number", + "readOnly" : true + }, + "acquisitionCost" : { + "type" : "number", + "readOnly" : true + }, + "improvements" : { + "type" : "number", + "readOnly" : true + }, + "publicSubsidies" : { + "type" : "number", + "readOnly" : true + }, + "salesAndOtherRealisation" : { + "type" : "number", + "readOnly" : true + }, + "salesAndOtherRealisationRecognition" : { + "type" : "number", + "readOnly" : true + }, + "subsidiesForRegionalInvestments" : { + "type" : "number", + "readOnly" : true + }, + "reversalOfSubsidiesForRegionalInvestments" : { + "type" : "number", + "readOnly" : true + }, + "adjustmentOfInputVat" : { + "type" : "number", + "readOnly" : true + }, + "obviousChangeOfValue" : { + "type" : "number", + "readOnly" : true + }, + "unknownTransactionType" : { + "type" : "number", + "readOnly" : true + }, + "depreciation" : { + "type" : "number", + "readOnly" : true + }, + "writeupsOrWritedowns" : { + "type" : "number", + "readOnly" : true + }, + "depreciationTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "calculatedDepreciation" : { + "type" : "number", + "readOnly" : true + }, + "accountedDepreciationPercentage" : { + "type" : "number", + "readOnly" : true + }, + "depreciationPercentage" : { + "type" : "number", + "readOnly" : true + }, + "depreciationPercentageTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "depreciationDifference" : { + "type" : "number", + "readOnly" : true + }, + "incomeRecognitionOfNegativeBalance" : { + "type" : "number", + "readOnly" : true + }, + "straightLineDepreciation" : { + "type" : "number", + "readOnly" : true + }, + "straightLineDepreciationTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "basisForDepreciationOrIncomeRecognition" : { + "type" : "number", + "readOnly" : true + }, + "basisForDepreciationOrIncomeRecognitionTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "profitTransferredToProfitAndLossAccount" : { + "type" : "number", + "readOnly" : true + }, + "lossTransferredToProfitAndLossAccount" : { + "type" : "number", + "readOnly" : true + }, + "accountingValueProfitAndLoss" : { + "type" : "number", + "readOnly" : true + }, + "accountingRelatedProfitOrLoss" : { + "type" : "number", + "readOnly" : true + }, + "warningTooHighPercentage" : { + "type" : "string", + "readOnly" : true + }, + "warningTooLowPercentage" : { + "type" : "string", + "readOnly" : true + }, + "infoResidualWriteOff" : { + "type" : "string", + "readOnly" : true + }, + "infoMessageDepreciation" : { + "type" : "string", + "readOnly" : true + }, + "infoMessageIncomeRecognition" : { + "type" : "string", + "readOnly" : true + }, + "infoTransferBalance" : { + "type" : "string", + "readOnly" : true + }, + "negate" : { + "type" : "boolean", + "readOnly" : true + }, + "lifetime" : { + "type" : "number", + "description" : "Additional tax for the project" + }, + "acquisitionDate" : { + "type" : "string" + }, + "realisationDate" : { + "type" : "string" + }, + "historicalCostPrice" : { + "type" : "number", + "description" : "Additional tax for the project" + }, + "writtenDownValuePr01011984" : { + "type" : "number", + "description" : "Additional tax for the project" + }, + "lowerLimitDepreciation" : { + "type" : "number", + "description" : "Additional tax for the project" + }, + "commercialBuildingAcquiredBefore1984" : { + "type" : "boolean", + "readOnly" : true + }, + "isPhysicalOperatingAssetsInBalanceSheet" : { + "type" : "boolean", + "readOnly" : true + }, + "facilityType" : { + "type" : "string", + "description" : "Underlying Documents Used For Assessment", + "enum" : [ "LIFETIME_OVER_20_YEARS", "LIFETIME_UNDER_20_YEARS", "LIVESTOCK_BUILDINGS", "FRUIT_FIELD", "BERRY_FIELD" ] + }, + "maxDepreciationPercentage" : { + "type" : "number", + "readOnly" : true + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "physicalOperatingAssetsInBalanceSheet" : { + "type" : "boolean" + } + } + }, + "TaxReturnSubmissionResult" : { + "type" : "object", + "properties" : { + "failureStep" : { + "type" : "string", + "enum" : [ "0", "1", "64", "2", "4", "5", "6", "7", "255" ] + }, + "failureCategory" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "4" ] + }, + "failureMessage" : { + "type" : "string" + }, + "validationResult" : { + "$ref" : "#/components/schemas/TaxReturnValidationResult" + } + } + }, + "TaxReturnValidationDeviation" : { + "type" : "object", + "properties" : { + "deviationType" : { + "type" : "string", + "readOnly" : true + }, + "occurrenceIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "receivedValue" : { + "type" : "number", + "readOnly" : true + }, + "calculatedValue" : { + "type" : "number", + "readOnly" : true + }, + "deviationInValue" : { + "type" : "number", + "readOnly" : true + }, + "receivedText" : { + "type" : "string", + "readOnly" : true + }, + "calculatedText" : { + "type" : "string", + "readOnly" : true + }, + "path" : { + "type" : "string", + "readOnly" : true + }, + "otherInformation" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "TaxReturnValidationGuidance" : { + "type" : "object", + "properties" : { + "guidanceType" : { + "type" : "string", + "readOnly" : true + }, + "occurrenceIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "helpText" : { + "type" : "string", + "readOnly" : true + }, + "strategyOfService" : { + "type" : "string", + "readOnly" : true + }, + "path" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "TaxReturnValidationResult" : { + "type" : "object", + "properties" : { + "resultFromValidation" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "validatedOK", "validatedWithErrors" ] + }, + "causesOfValidatedWithError" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string", + "readOnly" : true + } + }, + "deviationsAtValidation" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxReturnValidationDeviation" + } + }, + "deviationsAfterCalculation" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxReturnValidationDeviation" + } + }, + "guidancesAfterControl" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxReturnValidationGuidance" + } + } + }, + "readOnly" : true + }, + "YearEndReport" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "sentDate" : { + "type" : "string" + }, + "yearEndReportBasicData" : { + "$ref" : "#/components/schemas/BasicData" + }, + "status" : { + "type" : "string", + "enum" : [ "STARTED", "UPDATED", "RESTARTED", "COMPLEMENTARY_DATA_DOWNLOADED", "COMPLEMENTARY_DATA_MODIFIED", "PREVALIDATED_ACCEPTED", "PREVALIDATED_DECLINED", "ALTINN_INSTANCE_CREATED_AND_INITIATED", "ALTINN_INSTANCE_MAIN_CONTENT_UPLOADED", "ALTINN_INSTANCE_ATTACHMENT_UPLOADED", "ALTINN_INSTANCE_CLOSED", "ALTINN_INSTANCE_APPROVED_FOR_TRANSFER", "CONTENT_PROCESSING_AT_RECIPIENT", "ALTINN_INSTANCE_HAS_FEEDBACK", "FEEDBACK_ACCEPTED", "FEEDBACK_DECLINED", "USER_MARKED_AS_DELIVERED" ] + }, + "altinnMetadata" : { + "$ref" : "#/components/schemas/AltinnInstance" + }, + "submissionResult" : { + "$ref" : "#/components/schemas/TaxReturnSubmissionResult" + }, + "submissionInProgress" : { + "type" : "boolean" + }, + "submissionAttemptDate" : { + "type" : "string" + }, + "annualResult" : { + "type" : "number" + }, + "annualResultPreviousYear" : { + "type" : "number" + }, + "asset" : { + "type" : "number" + }, + "assetPreviousYear" : { + "type" : "number" + }, + "equityAndDebt" : { + "type" : "number" + }, + "equityAndDebtPreviousYear" : { + "type" : "number" + }, + "operatingRevenue" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "operatingExpense" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "capitalIncome" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "capitalCost" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "extraordinaryCost" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "taxCost" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "fixedAsset" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "currentAsset" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "equity" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "debt" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "currentDebt" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "inventories" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "yearEndReportPosting" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "tangibleFixedAssets" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TangibleFixedAsset" + } + }, + "wealthFromBusinessActivity" : { + "$ref" : "#/components/schemas/YearEndReportType" + }, + "showInfoSumDepreciation" : { + "type" : "boolean" + }, + "showInfoSumRevenueRecognitionNegBalance" : { + "type" : "boolean" + }, + "accountsExcludedFromTaxResult" : { + "type" : "string" + } + } + }, + "YearEndReportPost" : { + "type" : "object", + "properties" : { + "groupNumber" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "groupingPreviousYear" : { + "type" : "string", + "readOnly" : true + }, + "post" : { + "type" : "string", + "readOnly" : true + }, + "subPost" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "technicalName" : { + "type" : "string", + "readOnly" : true + }, + "info" : { + "type" : "string", + "readOnly" : true + }, + "sumAmount" : { + "type" : "number", + "readOnly" : true + }, + "sumAmountPreviousYear" : { + "type" : "number", + "readOnly" : true + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "isExcludeFromTaxReturn" : { + "type" : "boolean" + }, + "capitalDebtShareSpouse" : { + "type" : "number", + "readOnly" : true + }, + "capitalDebtShareSpouseId" : { + "type" : "integer", + "format" : "int64" + }, + "capitalDebtShareSpouseGroupId" : { + "type" : "integer", + "format" : "int32" + } + } + }, + "YearEndReportType" : { + "type" : "object", + "properties" : { + "sumAmount" : { + "type" : "number", + "readOnly" : true + }, + "sumAmountPreviousYear" : { + "type" : "number", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndReportPost" + } + } + } + }, + "ResponseWrapperYearEndAnnualAccountsFreeNote" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndAnnualAccountsFreeNote" + } + } + }, + "YearEndAnnualAccountsFreeNote" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "checked" : { + "type" : "boolean" + }, + "displayName" : { + "type" : "string" + }, + "numerated" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "sortOrder" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "content" : { + "type" : "string" + }, + "grouping" : { + "type" : "string" + }, + "lastModifiedInfo" : { + "$ref" : "#/components/schemas/YearEndAnnualAccountsFreeNoteLastModifiedInfo" + } + }, + "readOnly" : true + }, + "YearEndAnnualAccountsFreeNoteLastModifiedInfo" : { + "type" : "object", + "properties" : { + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "date" : { + "type" : "string", + "description" : "The date of when the note has been modified", + "readOnly" : true + }, + "time" : { + "type" : "string", + "description" : "The time of when the note has been modified", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseYearEndAnnualAccountsFreeNote" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/YearEndAnnualAccountsFreeNote" + } + } + } + }, + "ResponseWrapperYearEndSigner" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndSigner" + } + } + }, + "YearEndSigner" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Signer name" + }, + "role" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Signer role" + }, + "email" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string", + "description" : "Signer email" + }, + "year" : { + "type" : "integer", + "description" : "Year", + "format" : "int32" + }, + "sortOrder" : { + "minimum" : 0, + "type" : "integer", + "description" : "Sort order for display", + "format" : "int32" + } + } + }, + "ListResponseYearEndSigner" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/YearEndSigner" + } + } + } + }, + "ResponseWrapperTaxCalculation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxCalculation" + } + } + }, + "TaxCalculation" : { + "type" : "object", + "properties" : { + "objectIdentifier" : { + "type" : "number", + "readOnly" : true + }, + "taxableProfit" : { + "type" : "number", + "readOnly" : true + }, + "accumulatedLoss" : { + "type" : "number", + "readOnly" : true + }, + "taxRateThisYear" : { + "type" : "number", + "readOnly" : true + }, + "taxRateNextYear" : { + "type" : "number", + "readOnly" : true + }, + "taxCalculated" : { + "type" : "number", + "readOnly" : true + }, + "taxPosted" : { + "type" : "number", + "readOnly" : true + }, + "taxDiff" : { + "type" : "number", + "readOnly" : true + }, + "tooLittleTaxSetAside" : { + "type" : "number", + "readOnly" : true + }, + "tooMuchTaxSetAside" : { + "type" : "number", + "readOnly" : true + }, + "totalTaxSetAside" : { + "type" : "number", + "readOnly" : true + }, + "basisDefferedTax" : { + "type" : "number", + "readOnly" : true + }, + "basisDefferedTaxAssets" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxAssetsOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxAssetsClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "calculatedDeferredTax" : { + "type" : "number", + "readOnly" : true + }, + "calculatedDeferredTaxAssets" : { + "type" : "number", + "readOnly" : true + }, + "increasedDeferredTax" : { + "type" : "number", + "readOnly" : true + }, + "decreasedDeferredTax" : { + "type" : "number", + "readOnly" : true + }, + "increasedDeferredTaxAssets" : { + "type" : "number", + "readOnly" : true + }, + "decreasedDeferredTaxAssets" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxToBePosted" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxAssetsToBePosted" : { + "type" : "number", + "readOnly" : true + }, + "totalTaxToSetAsside" : { + "type" : "number", + "readOnly" : true + }, + "totalAdditions" : { + "type" : "number", + "readOnly" : true + }, + "totalDeductions" : { + "type" : "number", + "readOnly" : true + }, + "totalBasis" : { + "type" : "number", + "readOnly" : true + }, + "deferredTaxAssetsInBalance" : { + "type" : "number", + "readOnly" : true + }, + "totalWealthDistribution" : { + "type" : "number", + "readOnly" : true + }, + "taxCalculatedOnWealth" : { + "type" : "number", + "readOnly" : true + }, + "totalTaxCalculated" : { + "type" : "number", + "readOnly" : true + }, + "showTaxEffectInfo" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperYearEndReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndReport" + } + } + }, + "ResponseWrapperListYearEndReportComment" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndReportComment" + } + } + } + }, + "YearEndReportComment" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "stepType" : { + "type" : "integer", + "format" : "int32" + }, + "comment" : { + "type" : "string" + }, + "date" : { + "type" : "string" + }, + "uploaderName" : { + "type" : "string" + }, + "disabled" : { + "type" : "boolean" + } + } + }, + "ResponseWrapperYearEndReportComment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndReportComment" + } + } + }, + "AccountInfo" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "accountName" : { + "type" : "string" + }, + "accountNumber" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "balanceIn" : { + "type" : "number", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "readOnly" : true + }, + "sumAmount" : { + "type" : "number", + "readOnly" : true + }, + "optionsCollectionId" : { + "type" : "number", + "readOnly" : true + }, + "postings" : { + "type" : "array", + "description" : "Link to postings on this account.", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + } + } + }, + "AccountSpecification" : { + "type" : "object", + "properties" : { + "startDate" : { + "type" : "string" + }, + "endDate" : { + "type" : "string" + }, + "type" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "totalAmountVat" : { + "type" : "number" + }, + "accounts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AccountInfo" + } + } + } + }, + "ResponseWrapperAccountSpecification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountSpecification" + } + } + }, + "ResponseWrapperDouble" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "number", + "format" : "double" + } + } + }, + "AnnualAccountStatement" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "postings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Posting" + } + }, + "balanceIn" : { + "type" : "number", + "description" : "Balance in", + "readOnly" : true + }, + "balanceChange" : { + "type" : "number", + "description" : "Balance change", + "readOnly" : true + }, + "balanceOut" : { + "type" : "number", + "description" : "Balance out", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseAnnualAccountStatement" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AnnualAccountStatement" + } + } + } + }, + "AttachmentCategoryCode" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "technicalName" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseAttachmentCategoryCode" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AttachmentCategoryCode" + } + } + } + }, + "ResponseWrapperBasicData" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/BasicData" + } + } + }, + "Checklist" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "checklistProperty" : { + "$ref" : "#/components/schemas/ChecklistProperty" + }, + "customizedChecklistProperty" : { + "$ref" : "#/components/schemas/CustomizedChecklistProperty" + }, + "checked" : { + "type" : "boolean" + }, + "employee" : { + "$ref" : "#/components/schemas/Employee" + }, + "changedBy" : { + "type" : "string" + }, + "changedDate" : { + "type" : "string" + }, + "comment" : { + "type" : "string" + } + } + }, + "ChecklistProperty" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "checklistType" : { + "type" : "string", + "enum" : [ "TANGIBLE_FIXED_ASSETS", "PROFIT_AND_LOSS", "INVENTORIES", "CUSTOMER_RECEIVABLES", "SALARY_AND_PENSION", "COMMERCIAL_VEHICLE", "ACCOMMODATION_AND_RESTAURANT", "RESEARCH_AND_DEVELOPMENT", "RESULT_BALANCE", "PERSONAL_INCOME", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "TAXABLE_RESULT", "GROUP_CONTRIBUTION", "DIVIDEND", "DISPOSITIONS", "RECONCILIATION_OF_EQUITY", "PROPERTY", "ASSET_PAPIR", "PARTICIPANTS_IN_COMPANY_WITH_PARICIPANT_SETTING", "CONTROLLED_TRANSACTIONS_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_REDUCTION", "COMPANY_TAX_RETURN", "PARTICIPANTS_TASK", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "TIMBER_ACCOUNT", "FOREST_FUND", "TAX_ASSESSMENT", "REINDEER_HUSBANDRY", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "TAX_RETURN", "TAX_RETURN_TAX_CALCULATION", "CONTROL_TAX_RETURN", "SUBMIT", "GENERAL_INFO", "RESULT_BALANCE_ANNUAL_ACCOUNT", "NOTES", "CONTROL_ANNUAL_ACCOUNT", "ANNUAL_ACCOUNT_SUBMITTED", "NOTES_INTERNAL", "SIGNING", "ABOUT_BUSINESS", "PREPARATION", "SETTLEMENTS_ITEMS", "WHAT_TO_REPORT", "PARTICIPANT" ] + }, + "typeId" : { + "type" : "integer", + "format" : "int32" + }, + "name" : { + "type" : "string" + }, + "info" : { + "type" : "string" + }, + "section" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "CustomizedChecklistProperty" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32" + }, + "checklistType" : { + "type" : "string", + "enum" : [ "TANGIBLE_FIXED_ASSETS", "PROFIT_AND_LOSS", "INVENTORIES", "CUSTOMER_RECEIVABLES", "SALARY_AND_PENSION", "COMMERCIAL_VEHICLE", "ACCOMMODATION_AND_RESTAURANT", "RESEARCH_AND_DEVELOPMENT", "RESULT_BALANCE", "PERSONAL_INCOME", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "TAXABLE_RESULT", "GROUP_CONTRIBUTION", "DIVIDEND", "DISPOSITIONS", "RECONCILIATION_OF_EQUITY", "PROPERTY", "ASSET_PAPIR", "PARTICIPANTS_IN_COMPANY_WITH_PARICIPANT_SETTING", "CONTROLLED_TRANSACTIONS_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_REDUCTION", "COMPANY_TAX_RETURN", "PARTICIPANTS_TASK", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "TIMBER_ACCOUNT", "FOREST_FUND", "TAX_ASSESSMENT", "REINDEER_HUSBANDRY", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "TAX_RETURN", "TAX_RETURN_TAX_CALCULATION", "CONTROL_TAX_RETURN", "SUBMIT", "GENERAL_INFO", "RESULT_BALANCE_ANNUAL_ACCOUNT", "NOTES", "CONTROL_ANNUAL_ACCOUNT", "ANNUAL_ACCOUNT_SUBMITTED", "NOTES_INTERNAL", "SIGNING", "ABOUT_BUSINESS", "PREPARATION", "SETTLEMENTS_ITEMS", "WHAT_TO_REPORT", "PARTICIPANT" ] + }, + "name" : { + "type" : "string" + } + } + }, + "ListResponseChecklist" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Checklist" + } + } + } + }, + "ResponseWrapperChecklist" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Checklist" + } + } + }, + "ListResponseChecklistProperty" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ChecklistProperty" + } + } + } + }, + "ListResponseCustomizedChecklistProperty" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CustomizedChecklistProperty" + } + } + } + }, + "ResponseWrapperCustomizedChecklistProperty" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CustomizedChecklistProperty" + } + } + }, + "CountryCode" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "technicalName" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseCountryCode" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CountryCode" + } + } + } + }, + "DepreciationRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "balanceGroup" : { + "type" : "string", + "readOnly" : true + }, + "maxPercentage" : { + "type" : "number", + "readOnly" : true + }, + "oppositePostingAccount" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "maxPercentagePreviousYear" : { + "type" : "number" + }, + "oppositePostingAccountPreviousYear" : { + "type" : "integer", + "format" : "int32" + } + }, + "readOnly" : true + }, + "ListResponseDepreciationRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/DepreciationRate" + } + } + } + }, + "Disposition" : { + "type" : "object", + "properties" : { + "annualResult" : { + "type" : "number", + "readOnly" : true + }, + "groupContributionGiven" : { + "type" : "number", + "readOnly" : true + }, + "groupContributionReceived" : { + "type" : "number", + "readOnly" : true + }, + "dividend" : { + "type" : "number", + "readOnly" : true + }, + "sumAnnualResult" : { + "type" : "number", + "readOnly" : true + }, + "freeEquityOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "freeEquityClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "calculatedFreeEquityClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "freeEquityDiff" : { + "type" : "number", + "readOnly" : true + }, + "uncoveredLossOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "uncoveredLossClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "calculatedUncoveredLossClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "helpAccountOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "helpAccountClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "otherChangesInEquity" : { + "type" : "number", + "readOnly" : true + }, + "uncoveredLossDiff" : { + "type" : "number", + "readOnly" : true + }, + "remainingUncoveredLoss" : { + "type" : "number", + "readOnly" : true + }, + "freeEquity" : { + "type" : "number", + "readOnly" : true + }, + "showFixIt" : { + "type" : "boolean", + "readOnly" : true + }, + "showEquityWarning" : { + "type" : "boolean", + "readOnly" : true + }, + "showHelpAccountWarning" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperDisposition" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Disposition" + } + } + }, + "Dividend" : { + "type" : "object", + "properties" : { + "accountedDividend" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DividendDetails" + } + }, + "accountedGroupContribution" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DividendDetails" + } + }, + "annualResultAfterTax" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DividendDetails" + } + }, + "equityInAccount" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DividendDetails" + } + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "difference" : { + "type" : "number", + "readOnly" : true + }, + "equity" : { + "type" : "number", + "readOnly" : true + }, + "maxCalculatedDividend" : { + "type" : "number", + "readOnly" : true + } + } + }, + "DividendDetails" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "value" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperDividend" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Dividend" + } + } + }, + "EnumType" : { + "type" : "object", + "properties" : { + "enumType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "VEHICLE_TYPE", "VEHICLE_CATEGORY", "TAXIMETER", "BUSINESS_ACTIVITY_TYPE", "TAX_TRANSACTION_TYPE", "TYPE_OF_GOODS", "CASH_REGISTER_SYSTEM", "COUNTRY_CODE", "STEP_TYPE", "STOCK_TYPE", "SHARE_CLASS", "REAL_ESTATE_TYPE", "COMMERCIAL_PROPERTY_TYPE", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "FINANCIAL_PRODUCT", "TRANSACTION_TYPE", "ASSET_TYPE", "PRICING_METHOD", "SHARES_TRANSACTION_TYPE", "REDUCE_SHARES_TRANSACTION_TYPE" ] + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "value" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "technicalName" : { + "type" : "string", + "readOnly" : true + }, + "stepNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseEnumType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EnumType" + } + } + } + }, + "ResponseWrapperMapStringString" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "object", + "additionalProperties" : { + "type" : "string" + } + } + } + }, + "BusinessActivityType" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseBusinessActivityType" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/BusinessActivityType" + } + } + } + }, + "CashRegisterCode" : { + "type" : "object", + "properties" : { + "enumName" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseCashRegisterCode" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CashRegisterCode" + } + } + } + }, + "AgriculturalAccount" : { + "type" : "object", + "properties" : { + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "departments" : { + "type" : "string", + "readOnly" : true + }, + "departmentNames" : { + "type" : "string", + "readOnly" : true + }, + "operationalEntity" : { + "type" : "string", + "readOnly" : true + }, + "municipalityNumber" : { + "type" : "number", + "readOnly" : true + }, + "relatedSalesIncomeAndWithdrawals" : { + "type" : "number", + "description" : "Related sales income and withdrawals", + "readOnly" : true + }, + "notRelatedSalesIncomeAndWithdrawals" : { + "type" : "number", + "description" : "Not related sales income and withdrawals", + "readOnly" : true + }, + "ownCorrectionsIncome" : { + "type" : "number", + "description" : "Own corrections income", + "readOnly" : true + }, + "incomeFromProfitAndLossAccount" : { + "type" : "number", + "description" : "Income from profit and loss account", + "readOnly" : true + }, + "incomeDeductionsFromProfitAndLossAccount" : { + "type" : "number", + "description" : "Income deductions from profit and loss account", + "readOnly" : true + }, + "incomeRecognitionOfNegativeBalance" : { + "type" : "number", + "description" : "Income recognition of negative balance", + "readOnly" : true + }, + "totalOperatingCosts" : { + "type" : "number", + "description" : "Total operating costs", + "readOnly" : true + }, + "shareOfOperatingCosts" : { + "type" : "number", + "description" : "Share of operating costs", + "readOnly" : true + }, + "transferredFromPreviousYear" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "correctionBiomassWoodProduction" : { + "type" : "number", + "description" : "Correction from biomass or wood production", + "readOnly" : true + }, + "operatingProfitLossFromActivitiesNotIncluded" : { + "type" : "number", + "description" : "Operating profit and loss from activities not included", + "readOnly" : true + }, + "transferredData" : { + "$ref" : "#/components/schemas/TransferredData" + }, + "balanceData" : { + "$ref" : "#/components/schemas/BalanceDataAgriculture" + }, + "profitAndLossData" : { + "$ref" : "#/components/schemas/ProfitAndLossAgriculture" + } + } + }, + "AgriculturalAccountOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "agriculturalAccounts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AgriculturalAccount" + } + }, + "showMissingDepartmentWarning" : { + "type" : "boolean", + "readOnly" : true + }, + "showDuplicateDepartmentWarning" : { + "type" : "boolean", + "readOnly" : true + }, + "showNotLinkedDepartmentWarning" : { + "type" : "boolean", + "readOnly" : true + }, + "useMultipleAccounts" : { + "type" : "boolean", + "readOnly" : true + }, + "transferredFromAgriculturalAccountAccounting" : { + "type" : "number", + "readOnly" : true + }, + "transferredFromAgriculturalAccountInAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + }, + "registeredAccounting" : { + "type" : "number", + "readOnly" : true + }, + "registeredInAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + }, + "deductedAccounting" : { + "type" : "number", + "readOnly" : true + }, + "deductedInAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "BalanceDataAgriculture" : { + "type" : "object", + "properties" : { + "inheritedUponInheritanceGenerationalChange" : { + "type" : "number", + "readOnly" : true + }, + "realizedUponInheritanceGenerationalChange" : { + "type" : "number", + "readOnly" : true + }, + "transferredIncomeOrExpenseToAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + }, + "basisBalanceAdjustment" : { + "type" : "number", + "readOnly" : true + }, + "shareOfBasisNextYearRate" : { + "type" : "number", + "readOnly" : true + }, + "shareOfBasisNextYear" : { + "type" : "number", + "readOnly" : true + }, + "incomeOrExpenseFromAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + }, + "sumTransferred" : { + "type" : "number", + "readOnly" : true + }, + "shareRateLimit" : { + "type" : "number", + "readOnly" : true + }, + "depreciationLimit" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Balansc data", + "readOnly" : true + }, + "ProfitAndLossAgriculture" : { + "type" : "object", + "properties" : { + "incomeOrDeductionFromAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + }, + "incomeOrDeficitNotOnAgriculturalAccount" : { + "type" : "number", + "readOnly" : true + }, + "sumProfitAndLoss" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Profit and loss data", + "readOnly" : true + }, + "TransferredData" : { + "type" : "object", + "properties" : { + "shareOfOperatingRevenuesHuntingFishingEtc" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "profitLossHuntingFishingEtc" : { + "type" : "number", + "readOnly" : true + }, + "operatingProfitLoss" : { + "type" : "number", + "readOnly" : true + }, + "shareFromExtraordinaryDistribution" : { + "type" : "number", + "readOnly" : true + }, + "correctionBiomassWoodProduction" : { + "type" : "number", + "readOnly" : true + }, + "standardIncomeBiomassWoodproduction" : { + "type" : "number", + "readOnly" : true + }, + "profitLossToTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "shareOfProfitToRegister" : { + "type" : "number", + "readOnly" : true + }, + "sumTransferred" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Transferred data", + "readOnly" : true + }, + "YearEndGroupDetails" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "percentage" : { + "type" : "string", + "readOnly" : true + }, + "value" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "BalanceData" : { + "type" : "object", + "properties" : { + "incomingValueFromAquiredTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "valueOfShareOfRealizedTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "transferredIncomeOrExpenseToTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "basisBalanceAdjustment" : { + "type" : "number", + "readOnly" : true + }, + "shareOfBasisNextYearRate" : { + "type" : "number", + "readOnly" : true + }, + "shareOfBasisNextYear" : { + "type" : "number", + "readOnly" : true + }, + "incomeOrExpenseFromTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "sumTransferred" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Balansc data", + "readOnly" : true + }, + "ExtraordinaryDistributionData" : { + "type" : "object", + "properties" : { + "remainderNotTaxedFelling" : { + "type" : "number", + "readOnly" : true + }, + "remainderIncludedThisYear" : { + "type" : "number", + "readOnly" : true + }, + "sumLaterIncomeRecognition" : { + "type" : "number", + "readOnly" : true + }, + "municipalityNumber" : { + "type" : "string", + "readOnly" : true + }, + "paidPublicContributionForestFund" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Forest fund and extraordinary distribution data", + "readOnly" : true + }, + "ForestFundData" : { + "type" : "object", + "properties" : { + "municipalityNumber" : { + "type" : "number", + "readOnly" : true + }, + "paidPublicContributionForestFund" : { + "type" : "number", + "readOnly" : true + }, + "calculatedReversalOfPrevCalculations" : { + "type" : "number", + "readOnly" : true + }, + "basisForCalculationTaxAssets" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Forest fund and extraordinary distribution data", + "readOnly" : true + }, + "ProfitAndLossData" : { + "type" : "object", + "properties" : { + "incomeOrDeductionFromTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "incomeOrDeficitNotOnTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "correctionBiomassWoodProduction" : { + "type" : "number", + "readOnly" : true + }, + "sumProfitAndLoss" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Profit and loss data", + "readOnly" : true + }, + "TimberAccount" : { + "type" : "object", + "properties" : { + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "salesIncomeAndWithdrawalsTimberPulpwoodEtc" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "salesIncomeAndWithdrawalsFirewoodBiomass" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "incomeHuntingFishingEtc" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "revenueRecognitionNegativeBalance" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "incomeDeductionProfitAndLoss" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "operatingRevenuesIncTaxablePartOfForestFund" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "operatingCostIncDepreciationAndAllocationForestFund" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "transferredFromPreviousYear" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "forestFundPaymentToPurposeWithTaxAssets" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "paidUpGovernmentContributionsToForestFund" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "taxAssetsForestFund" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "reversalOfPrevCalculatedTaxAssetsForestFund" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "forestFundPaymentToPurposeWithoutTaxAssets" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "taxableIncomeForestFund" : { + "$ref" : "#/components/schemas/YearEndGroupDetails" + }, + "transferredData" : { + "$ref" : "#/components/schemas/TransferredData" + }, + "balanceData" : { + "$ref" : "#/components/schemas/BalanceData" + }, + "profitAndLossData" : { + "$ref" : "#/components/schemas/ProfitAndLossData" + }, + "extraordinaryDistributionData" : { + "$ref" : "#/components/schemas/ExtraordinaryDistributionData" + }, + "forestFundData" : { + "$ref" : "#/components/schemas/ForestFundData" + } + } + }, + "TimberAccountOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "timberAccounts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TimberAccount" + } + }, + "transferredFromTimberAccountAccounting" : { + "type" : "number", + "readOnly" : true + }, + "transferredFromTimberAccountInTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "registeredAccounting" : { + "type" : "number", + "readOnly" : true + }, + "registeredInTimberAccount" : { + "type" : "number", + "readOnly" : true + }, + "deductedAccounting" : { + "type" : "number", + "readOnly" : true + }, + "deductedInTimberAccount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ControlledTransactionsCompanySpecification" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "identifier" : { + "type" : "string", + "description" : "The official identifier of the company" + }, + "companyName" : { + "type" : "string", + "description" : "The official name of the company" + }, + "country" : { + "type" : "string", + "description" : "The country where the company is registered" + }, + "transactions" : { + "type" : "array", + "description" : "A list of transactions made between this company and users company", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsTransaction" + } + }, + "outstandingBalances" : { + "type" : "array", + "description" : "A list of outstanding accounts between this company and users company", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsOutstanding" + } + } + } + }, + "ControlledTransactionsOutstanding" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "account" : { + "type" : "string", + "description" : "The type of account which is outstanding" + }, + "amount" : { + "type" : "number", + "description" : "The amount of money transferred" + }, + "countryCode" : { + "type" : "string", + "description" : "What country is the outstanding balance in" + } + }, + "description" : "List of outstanding balances" + }, + "ControlledTransactionsTransaction" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "transactionType" : { + "type" : "string", + "description" : "The type of the transaction" + }, + "description" : { + "type" : "string", + "description" : "A description of the transaction" + }, + "amount" : { + "type" : "number", + "description" : "The amount of money transferred" + }, + "countryCode" : { + "type" : "string", + "description" : "What country did the transaction take place in" + } + }, + "description" : "List of transactions" + }, + "ControlledTransactions" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "exemptFromTransactionSharing" : { + "type" : "boolean", + "description" : "Is exempt from sharing transactions" + }, + "exemptFromPriceSharing" : { + "type" : "boolean", + "description" : "Is exempt from sharing prices" + }, + "consolidatedMarginYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Year of consolidated margin", + "format" : "int32" + }, + "consolidatedMarginPercentage" : { + "type" : "number", + "description" : "Percentage of consolidated margin" + }, + "reportsOnlyProvisionIncome" : { + "type" : "string", + "description" : "Whether or not the company only reports provision income" + }, + "costOfImmaterialAssets" : { + "type" : "number", + "description" : "The total cost related to development of the company's immaterial assets" + }, + "numberOfRegisteredPatents" : { + "minimum" : 0, + "type" : "integer", + "description" : "The number of patents registered by the company", + "format" : "int32" + }, + "groupBeenRestructured" : { + "type" : "boolean", + "description" : "Whether or not the group related to the company has undergone restructuring" + }, + "companyServicedOtherCompanyInGroupForFree" : { + "type" : "boolean", + "description" : "Whether or not the company has serviced another company in the same group for free" + }, + "companyGuarantorForAgreementsByOtherCompaniesInSameGroup" : { + "type" : "boolean", + "description" : "Whether or not the company acts as a guarantor for an agreement by another company in the same group" + }, + "relatedCompaniesUsingImmaterialAssets" : { + "type" : "array", + "description" : "Related companies that's using the company's immaterial assets", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsRelatedCompanies" + } + }, + "functionAndRisk" : { + "type" : "array", + "description" : "List of functions and risks", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsFunctionAndRisk" + } + }, + "summary" : { + "$ref" : "#/components/schemas/ControlledTransactionsSummary" + } + } + }, + "ControlledTransactionsFunctionAndRisk" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "functionType" : { + "type" : "string", + "description" : "The type of the function" + }, + "riskType" : { + "type" : "string", + "description" : "The type of risk" + }, + "description" : { + "type" : "string", + "description" : "Description of the function and risk combination" + } + }, + "description" : "List of functions and risks" + }, + "ControlledTransactionsRelatedCompanies" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "identifier" : { + "type" : "string", + "description" : "The public identifier of the company" + }, + "companyName" : { + "type" : "string", + "description" : "The name of the company" + }, + "country" : { + "type" : "string", + "description" : "Country wherein the company is registered" + } + }, + "description" : "Related companies that's using the company's immaterial assets" + }, + "ControlledTransactionsSummary" : { + "type" : "object", + "properties" : { + "sumOperationalIncome" : { + "type" : "number", + "description" : "The sum of all transactions with the category operational income" + }, + "sumFinancialIncome" : { + "type" : "number", + "description" : "The sum of all transactions with the category financial income" + }, + "totalOperationalCost" : { + "type" : "number", + "description" : "The sum of all transactions with the category operational cost" + }, + "totalFinancialCost" : { + "type" : "number", + "description" : "The sum of all transactions with the category financial cost" + }, + "totalExtraordinaryPurchases" : { + "type" : "number", + "description" : "The sum of all transactions with the category extraordinary purchase" + }, + "totalExtraordinarySales" : { + "type" : "number", + "description" : "The sum of all transactions with the category extraordinary sale" + }, + "totalClaims" : { + "type" : "number", + "description" : "The sum of all outstanding with the category claim" + }, + "totalDebt" : { + "type" : "number", + "description" : "The sum of all outstanding with the category debt" + }, + "totalGuarantorResponsibility" : { + "type" : "number", + "description" : "The sum of all outstanding with the category guarantor responsibility" + }, + "totalGuaranteeBasis" : { + "type" : "number", + "description" : "The sum of all outstanding with the category guarantee basis" + } + }, + "description" : "Summary of something" + }, + "ResponseWrapperControlledTransactions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ControlledTransactions" + } + } + }, + "ListResponseControlledTransactionsCompanySpecification" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsCompanySpecification" + } + } + } + }, + "ResponseWrapperControlledTransactionsCompanySpecification" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ControlledTransactionsCompanySpecification" + } + } + }, + "EnterpriseDebtAllocation" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "incomeGroupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Income group ID. Always a real positive id after eager-allocation (TRIP-61550); 0 only appears in read-only impersonation contexts.", + "format" : "int32" + }, + "allocatedDebt" : { + "type" : "number", + "description" : "Allocated debt amount" + }, + "allocatedInterest" : { + "type" : "number", + "description" : "Allocated interest amount" + } + }, + "description" : "Allocations per income group" + }, + "EnterpriseDebtDistribution" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "accountId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Ledger account ID", + "format" : "int32" + }, + "accountNumber" : { + "type" : "string", + "description" : "Account number (e.g. 2390)" + }, + "interestAccountNumber" : { + "type" : "string", + "description" : "Linked interest account number (8150-8159)" + }, + "interestTotal" : { + "type" : "number", + "description" : "Total interest for this account" + }, + "allocations" : { + "type" : "array", + "description" : "Allocations per income group", + "items" : { + "$ref" : "#/components/schemas/EnterpriseDebtAllocation" + } + } + } + }, + "ListResponseEnterpriseDebtDistribution" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EnterpriseDebtDistribution" + } + } + } + }, + "ResponseWrapperEnterpriseDebtDistribution" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EnterpriseDebtDistribution" + } + } + }, + "EnterpriseOtherInterestAllocation" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "incomeGroupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Income group ID. Always a real positive id after eager-allocation (TRIP-61550); 0 only appears in read-only impersonation contexts.", + "format" : "int32" + }, + "allocatedInterest" : { + "type" : "number", + "description" : "Interest amount not tied to a specific debt account" + } + } + }, + "ListResponseEnterpriseOtherInterestAllocation" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EnterpriseOtherInterestAllocation" + } + } + } + }, + "ResponseWrapperEnterpriseOtherInterestAllocation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EnterpriseOtherInterestAllocation" + } + } + }, + "ResponseWrapperGenericData" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GenericData" + } + } + }, + "AccommodationAndRestaurant" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "genericDataOverviews" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + } + }, + "CashRegisterSystem" : { + "type" : "object", + "properties" : { + "groupId" : { + "type" : "number", + "readOnly" : true + }, + "genericDataType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "yearOfInitialRegistration" : { + "type" : "number", + "readOnly" : true + }, + "cashRegisterSystem" : { + "type" : "string", + "readOnly" : true + } + } + }, + "GenericDataOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "genericDataType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataTypeGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "industryObjectIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "typeOfGoodsPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TypeOfGoods" + } + }, + "multiUnitBuildingUnitPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/MultiUnitBuildingUnit" + } + }, + "cashRegisterSystemPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CashRegisterSystem" + } + }, + "calculatedDeduction" : { + "type" : "number", + "readOnly" : true + }, + "expenses" : { + "type" : "number", + "readOnly" : true + }, + "reversedExpenses" : { + "type" : "number", + "readOnly" : true + }, + "showProfitAndLossDetails" : { + "type" : "boolean", + "readOnly" : true + }, + "annualIncomeRecognitionOrDeductionBasis" : { + "type" : "number", + "readOnly" : true + }, + "annualIncomeRecognition" : { + "type" : "number", + "readOnly" : true + }, + "annualDeduction" : { + "type" : "number", + "readOnly" : true + }, + "sumProfitAndLoss" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceProfitAndLoss" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceProfitAndLoss" : { + "type" : "number", + "readOnly" : true + }, + "objectIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "calculatedAssetValue" : { + "type" : "number", + "readOnly" : true + }, + "calculatedTotalAssetValue" : { + "type" : "number", + "readOnly" : true + }, + "calculatedMarketValue" : { + "type" : "number", + "readOnly" : true + }, + "calculatedIncomeValueRental" : { + "type" : "number", + "readOnly" : true + }, + "calculatedAssetValueRental" : { + "type" : "number", + "readOnly" : true + }, + "estimatedIncreasedTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "estimatedDiffTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "valuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "valuationDiscountAmount" : { + "type" : "number", + "readOnly" : true + }, + "totalAssetValueAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "showMunicipalityValidationMessage" : { + "type" : "number", + "readOnly" : true + }, + "calculatedTotalAssetRate" : { + "type" : "number", + "readOnly" : true + }, + "estimatedIncreasedTaxRate" : { + "type" : "number", + "readOnly" : true + }, + "receivedAdjustedAmountAccordingToFinancialTaxRule" : { + "type" : "number", + "readOnly" : true + }, + "submittedAdjustedAmountAccordingToFinancialTaxRule" : { + "type" : "number", + "readOnly" : true + }, + "warningPercentageProfitAndLossAccount" : { + "type" : "string", + "readOnly" : true + } + } + }, + "MultiUnitBuildingUnit" : { + "type" : "object", + "properties" : { + "groupId" : { + "type" : "number", + "readOnly" : true + }, + "genericDataType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "unitNo" : { + "type" : "string", + "readOnly" : true + }, + "area" : { + "type" : "number", + "readOnly" : true + }, + "constructionYear" : { + "type" : "number", + "readOnly" : true + }, + "value" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperAccommodationAndRestaurant" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccommodationAndRestaurant" + } + } + }, + "TypeOfGoods" : { + "type" : "object", + "properties" : { + "groupId" : { + "type" : "number", + "readOnly" : true + }, + "genericDataType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "typeOfGoods" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "FOOD_STUFFS", "TOBACCO_ETC", "COFFEE_AND_TEA", "SOFT_DRINKS", "ALCOPOP_AND_CIDER", "BEER", "WINE", "SPIRITS", "OTHER_PRODUCTS" ] + }, + "productName" : { + "type" : "string", + "readOnly" : true + }, + "openingStock" : { + "type" : "number", + "readOnly" : true + }, + "closingStock" : { + "type" : "number", + "readOnly" : true + }, + "purchaseOfGoods" : { + "type" : "number", + "readOnly" : true + }, + "costOfGoodsSold" : { + "type" : "number", + "readOnly" : true + }, + "salesRevenueAndWithdrawals" : { + "type" : "number", + "readOnly" : true + }, + "salesRevenueInCash" : { + "type" : "number", + "readOnly" : true + } + } + }, + "CommercialVehicle" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "sumExpenses" : { + "type" : "number", + "readOnly" : true + }, + "accountedValue" : { + "type" : "number", + "readOnly" : true + }, + "groupedAccountedValue" : { + "type" : "number", + "readOnly" : true + }, + "amountToBePostedOnAccount" : { + "type" : "number", + "readOnly" : true + }, + "genericDataOverviews" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + } + }, + "ResponseWrapperCommercialVehicle" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CommercialVehicle" + } + } + }, + "CustomerReceivable" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "openingBalanceReceivableAndNonInvoicedRevenue" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceReceivableAndNonInvoicedRevenue" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceAscertainedLoss" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceAscertainedLoss" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceWriteDown" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceWriteDown" : { + "type" : "number", + "readOnly" : true + }, + "sumTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "amountToBePostedOnAccount" : { + "type" : "number", + "readOnly" : true + }, + "accountedValue" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceDifferences" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceDifferences" : { + "type" : "number", + "readOnly" : true + }, + "changes" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceAccountingValues" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceAccountingValues" : { + "type" : "number", + "readOnly" : true + }, + "genericDataOverviews" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + } + }, + "ResponseWrapperCustomerReceivable" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CustomerReceivable" + } + } + }, + "DocumentationGenericData" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32" + }, + "genericDataType" : { + "type" : "string", + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubType" : { + "type" : "string", + "enum" : [ "NONE", "NOT_LICENSED", "FREIGHT_TRANSPORT", "TAXI", "ACQUISITION_AND_REALIZATION", "PRODUCT_TYPE_INVENTORY", "CASH_REGISTER_SYSTEM", "PRIVATE_WITHDRAWAL_OF_GOODS", "ENTERTAINMENT", "MULTI_UNIT_BUILDING_UNIT", "RENTAL_WITHDRAWAL_SALE_COMPANY", "RENTAL_WITHDRAWAL_SALE_SHAREHOLDER", "RESOLUTION", "WORK_PACKAGE", "COLLABORATIVE_BUSINESS", "OTHER_PUBLIC_SUPPORT", "BUSINESS_ACTIVITY", "RELATED_COMPANY", "FUNCTION_AND_RISK", "TRANSACTION", "OUTSTANDING", "INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM", "COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP", "INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM", "INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION", "ENTERPRISE_DEBT_ALLOCATION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "integer", + "format" : "int32" + }, + "postType" : { + "type" : "string", + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "string" + }, + "documentName" : { + "type" : "string" + }, + "uploaderName" : { + "type" : "string" + }, + "attachmentCategory" : { + "type" : "string" + }, + "selected" : { + "type" : "boolean" + }, + "size" : { + "type" : "integer", + "format" : "int32" + }, + "date" : { + "type" : "string" + } + } + }, + "ResponseWrapperListDocumentationGenericData" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/DocumentationGenericData" + } + } + } + }, + "DownloadedBrreg" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + }, + "docId" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperDownloadedBrreg" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DownloadedBrreg" + } + } + }, + "GroupContributions" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "sumExpenses" : { + "type" : "number", + "readOnly" : true + }, + "sumPaid" : { + "type" : "number", + "readOnly" : true + }, + "sumPaidWithTaxRelatedEffect" : { + "type" : "number", + "readOnly" : true + }, + "sumPaidWithoutTaxRelatedEffect" : { + "type" : "number", + "readOnly" : true + }, + "sumReceived" : { + "type" : "number", + "readOnly" : true + }, + "sumReceivedWithTaxRelatedEffect" : { + "type" : "number", + "readOnly" : true + }, + "sumReceivedWithoutTaxRelatedEffect" : { + "type" : "number", + "readOnly" : true + }, + "receivedGroupContribution" : { + "type" : "number", + "readOnly" : true + }, + "paidGroupContribution" : { + "type" : "number", + "readOnly" : true + }, + "accountedValue" : { + "type" : "number", + "readOnly" : true + }, + "groupedAccountedValue" : { + "type" : "number", + "readOnly" : true + }, + "amountToBePostedOnAccount" : { + "type" : "number", + "readOnly" : true + }, + "genericDataOverviews" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + } + }, + "ResponseWrapperGroupContributions" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GroupContributions" + } + } + }, + "InventoriesDetails" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "openingBalancePostType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "closingBalancePostType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + } + } + }, + "InventoriesOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "inventories" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/InventoriesDetails" + } + }, + "totalOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "totalClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "totalOpeningBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "totalClosingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceDifferences" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceDifferences" : { + "type" : "number", + "readOnly" : true + }, + "changes" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperInventoriesOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InventoriesOverview" + } + } + }, + "ResponseWrapperGenericDataOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + }, + "Participant" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "ownership" : { + "type" : "number", + "readOnly" : true + }, + "ownershipAtBeginningOfYear" : { + "type" : "number", + "readOnly" : true + }, + "shareOfResult" : { + "type" : "number", + "readOnly" : true + }, + "shareOfWealth" : { + "type" : "number", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + } + }, + "description" : "Information about the participant", + "readOnly" : true + }, + "ParticipantOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "participants" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Participant" + } + } + } + }, + "ResponseWrapperParticipantOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ParticipantOverview" + } + } + }, + "DifferencesOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "permanentDifferencesAdditions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PermanentDifferences" + } + }, + "permanentDifferencesDeductions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PermanentDifferences" + } + }, + "temporaryDifferences" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TemporaryDifferences" + } + }, + "sumAdditions" : { + "type" : "number", + "readOnly" : true + }, + "sumDeductions" : { + "type" : "number", + "readOnly" : true + }, + "sumChanges" : { + "type" : "number", + "readOnly" : true + } + } + }, + "PermanentDifferences" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "negate" : { + "type" : "boolean", + "readOnly" : true + }, + "readOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "source" : { + "type" : "string", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperDifferencesOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/DifferencesOverview" + } + } + }, + "TemporaryDifferences" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "objectIdentifier" : { + "type" : "string", + "readOnly" : true + }, + "negate" : { + "type" : "boolean", + "readOnly" : true + }, + "readOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "source" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "openingBalanceAccountValue" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceDifferences" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceAccountValue" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceDifferences" : { + "type" : "number", + "readOnly" : true + }, + "changes" : { + "type" : "number", + "readOnly" : true + }, + "showAccounting" : { + "type" : "boolean", + "readOnly" : true + }, + "showTax" : { + "type" : "boolean", + "readOnly" : true + }, + "profitTransferedToProfitAndLossAccount" : { + "type" : "number", + "readOnly" : true + }, + "lossTransferedToProfitAndLossAccount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ProfitAndLoss" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "sumProfit" : { + "type" : "number", + "readOnly" : true + }, + "sumLoss" : { + "type" : "number", + "readOnly" : true + }, + "sumProfitAndLoss" : { + "type" : "number", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceProfit" : { + "type" : "number", + "readOnly" : true + }, + "openingBalanceLoss" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceProfit" : { + "type" : "number", + "readOnly" : true + }, + "closingBalanceLoss" : { + "type" : "number", + "readOnly" : true + }, + "postedOpeningBalanceProfit" : { + "type" : "number", + "readOnly" : true + }, + "postedOpeningBalanceLoss" : { + "type" : "number", + "readOnly" : true + }, + "postedClosingBalanceProfit" : { + "type" : "number", + "readOnly" : true + }, + "postedClosingBalanceLoss" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "annualIncomeRecognition" : { + "type" : "number", + "readOnly" : true + }, + "annualDeduction" : { + "type" : "number", + "readOnly" : true + }, + "amountToBePostedOnIncomeRecognitionAccount" : { + "type" : "number", + "readOnly" : true + }, + "amountToBePostedOnDeductionAccount" : { + "type" : "number", + "readOnly" : true + }, + "deductionDepartmentMap" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "readOnly" : true + }, + "readOnly" : true + }, + "incomeRecognitionDepartmentMap" : { + "type" : "object", + "additionalProperties" : { + "type" : "number", + "readOnly" : true + }, + "readOnly" : true + }, + "genericDataOverviews" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + } + }, + "ResponseWrapperProfitAndLoss" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ProfitAndLoss" + } + } + }, + "RealEstate" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "genericDataOverviews" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericDataOverview" + } + } + } + }, + "ResponseWrapperRealEstate" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/RealEstate" + } + } + }, + "ChangeOfEquity" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "negate" : { + "type" : "boolean", + "readOnly" : true + }, + "readOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ReconciliationOfEquityOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "changeOfEquities" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ChangeOfEquity" + } + }, + "openingEquity" : { + "type" : "number", + "readOnly" : true + }, + "closingEquity" : { + "type" : "number", + "readOnly" : true + }, + "calculatedClosingEquity" : { + "type" : "number", + "readOnly" : true + }, + "closingEquityDiff" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperReconciliationOfEquityOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReconciliationOfEquityOverview" + } + } + }, + "ResponseWrapperListSharesAndSecurities" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SharesAndSecurities" + } + } + } + }, + "SharesAndSecurities" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32" + }, + "genericDataType" : { + "type" : "string", + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubType" : { + "type" : "string", + "enum" : [ "NONE", "NOT_LICENSED", "FREIGHT_TRANSPORT", "TAXI", "ACQUISITION_AND_REALIZATION", "PRODUCT_TYPE_INVENTORY", "CASH_REGISTER_SYSTEM", "PRIVATE_WITHDRAWAL_OF_GOODS", "ENTERTAINMENT", "MULTI_UNIT_BUILDING_UNIT", "RENTAL_WITHDRAWAL_SALE_COMPANY", "RENTAL_WITHDRAWAL_SALE_SHAREHOLDER", "RESOLUTION", "WORK_PACKAGE", "COLLABORATIVE_BUSINESS", "OTHER_PUBLIC_SUPPORT", "BUSINESS_ACTIVITY", "RELATED_COMPANY", "FUNCTION_AND_RISK", "TRANSACTION", "OUTSTANDING", "INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM", "COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP", "INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM", "INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION", "ENTERPRISE_DEBT_ALLOCATION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "integer", + "format" : "int32" + }, + "postType" : { + "type" : "string", + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "string" + }, + "name" : { + "type" : "string" + }, + "vatNumber" : { + "type" : "string" + }, + "isin" : { + "type" : "string" + }, + "stockType" : { + "type" : "string" + }, + "shareClass" : { + "type" : "string" + }, + "financialProduct" : { + "type" : "string" + }, + "value" : { + "type" : "number" + }, + "dividend" : { + "type" : "number" + }, + "profitRealisation" : { + "type" : "number" + }, + "lossRealisation" : { + "type" : "number" + }, + "countryCode" : { + "type" : "string" + }, + "sharesByTheStartOfTheYear" : { + "type" : "number" + }, + "sharesByTheEndOfTheYear" : { + "type" : "number" + }, + "totalValue" : { + "type" : "number" + }, + "interestIncome" : { + "type" : "number" + }, + "profitInterest" : { + "type" : "number" + }, + "lossInterest" : { + "type" : "number" + }, + "exemptionMethod" : { + "type" : "integer", + "format" : "int32" + }, + "isRelatedToCompanyInGroup" : { + "type" : "boolean" + } + } + }, + "AidScheme" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "negate" : { + "type" : "boolean", + "readOnly" : true + }, + "readOnly" : { + "type" : "boolean", + "readOnly" : true + }, + "source" : { + "type" : "string", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperTaxReturnOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxReturnOverview" + } + } + }, + "TaxReturn" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "amountSign" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "POSITIVE", "NEGATIVE" ] + } + } + }, + "TaxReturnOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "showConcernRelation" : { + "type" : "boolean", + "readOnly" : true + }, + "showForestry" : { + "type" : "boolean", + "readOnly" : true + }, + "businessIncome" : { + "type" : "number", + "readOnly" : true + }, + "groupContributionReceived" : { + "type" : "number", + "readOnly" : true + }, + "groupContributionReceivedGrouping" : { + "type" : "string", + "readOnly" : true + }, + "paidGroupContribution" : { + "type" : "number", + "readOnly" : true + }, + "paidGroupContributionGrouping" : { + "type" : "string", + "readOnly" : true + }, + "obtainedPrivateAgreementAndDebtForgiveness" : { + "type" : "number", + "readOnly" : true + }, + "obtainedPrivateAgreementAndDebtForgivenessGrouping" : { + "type" : "string", + "readOnly" : true + }, + "taxableProfitForTheYear" : { + "type" : "number", + "readOnly" : true + }, + "taxableProfitToTaxReturn" : { + "type" : "number", + "readOnly" : true + }, + "accumulatedLossFromPreviousYear" : { + "type" : "number", + "readOnly" : true + }, + "lossesInBusinessAndRealEstate" : { + "type" : "number", + "readOnly" : true + }, + "useOfLossCarryForwards" : { + "type" : "number", + "readOnly" : true + }, + "accumulatedLossForNextYear" : { + "type" : "number", + "readOnly" : true + }, + "taxValueTangibleFixedAssets" : { + "type" : "number", + "readOnly" : true + }, + "sumAmountAnsDaGroup" : { + "type" : "number", + "readOnly" : true + }, + "sumTotalWealthDistribution" : { + "type" : "number", + "readOnly" : true + }, + "taxValueInventories" : { + "type" : "number", + "readOnly" : true + }, + "taxValueCustomerReceivables" : { + "type" : "number", + "readOnly" : true + }, + "negativeTaxValueCustomerReceivables" : { + "type" : "number", + "readOnly" : true + }, + "sumGrossAssets" : { + "type" : "number", + "readOnly" : true + }, + "totalDebtInAccounts" : { + "type" : "number", + "readOnly" : true + }, + "taxToPay" : { + "type" : "number", + "readOnly" : true + }, + "sumDebt" : { + "type" : "number", + "readOnly" : true + }, + "totalTaxValue" : { + "type" : "number", + "readOnly" : true + }, + "reductionOfAssetValue" : { + "type" : "number", + "readOnly" : true + }, + "correctedAssetValue" : { + "type" : "number", + "readOnly" : true + }, + "valuePerShare" : { + "type" : "number", + "readOnly" : true + }, + "totalValueSharesAndSecurities" : { + "type" : "number", + "readOnly" : true + }, + "totalValueRealEstate" : { + "type" : "number", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "capitalAndDebt" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TaxReturn" + } + }, + "aidSchemes" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/AidScheme" + } + }, + "taxValueTangibleFixedAssetsAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "tangibleFixedAssetsValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "taxValueInventoriesAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "inventoriesValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "taxValueCustomerReceivablesAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "customerReceivablesValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "taxValueSharesAndSecuritiesAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "sharesAndSecuritiesValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "taxValueRealEstateAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "realEstateValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "taxValueSdf" : { + "type" : "number", + "readOnly" : true + }, + "taxValueSdfAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "sdfDebt" : { + "type" : "number", + "readOnly" : true + }, + "sdfValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "taxValueForestryAfterValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "forestryValuationDiscount" : { + "type" : "number", + "readOnly" : true + }, + "reductionDebtValuationDiscount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "CompaniesIncludedInNorwegianPartOfGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "netInterestCost" : { + "type" : "number", + "description" : "Net interest cost" + }, + "netDeductibleInterestCost" : { + "type" : "number", + "description" : "Net deductible interest cost" + } + }, + "description" : "Companies included in the Norwegian part of the group" + }, + "ForwardingDisallowedInterestDeduction" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "incomeYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Income year", + "format" : "int32" + }, + "carriedForwardFromPreviousYear" : { + "type" : "number", + "description" : "Carried forward from previous year" + }, + "deductibleThisYear" : { + "type" : "number", + "description" : "Deductible this year", + "readOnly" : true + }, + "remainingCarriedForward" : { + "type" : "number", + "description" : "Remaining carried forward", + "readOnly" : true + } + }, + "description" : "Forwarding disallowed interest deductions" + }, + "InterestExpensesToCompaniesInSameGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "interestExpensesToCompanies" : { + "type" : "array", + "description" : "Interest expenses to companies in the same group", + "items" : { + "$ref" : "#/components/schemas/InterestExpensesToCompanyInSameGroup" + } + }, + "interestExpensesToOthersGroupGuarantor" : { + "type" : "array", + "description" : "Interest expenses to other group guarantor", + "items" : { + "$ref" : "#/components/schemas/InterestExpensesToOtherGroupGuarantor" + } + }, + "interestExpensesToOthersWithOutstandingClaim" : { + "type" : "array", + "description" : "Interest expenses to other companies with outstanding claims", + "items" : { + "$ref" : "#/components/schemas/InterestExpensesToOtherWithOutstandingClaim" + } + }, + "totalInterestExpenses" : { + "type" : "number", + "description" : "Total interest expenses", + "readOnly" : true + }, + "costsForGuaranteeCommission" : { + "type" : "number", + "description" : "Costs for guarantee commission" + }, + "totalInterestExpensesIncludingGuaranteeCosts" : { + "type" : "number", + "description" : "Total interest expenses including guarantee costs", + "readOnly" : true + } + } + }, + "InterestExpensesToCompanyInSameGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest expenses to companies in the same group" + }, + "InterestExpensesToOtherGroupGuarantor" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest expenses to other group guarantor" + }, + "InterestExpensesToOtherWithOutstandingClaim" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest expenses to other companies with outstanding claims" + }, + "InterestExpensesToRelatedPartiesOutsideGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "interestExpensesToCompanies" : { + "type" : "array", + "description" : "Interest expenses to companies in the same group", + "items" : { + "$ref" : "#/components/schemas/InterestExpensesToRelatedPartyOutsideGroup" + } + }, + "interestExpensesToOthersGroupGuarantor" : { + "type" : "array", + "description" : "Interest expenses to other group guarantor", + "items" : { + "$ref" : "#/components/schemas/InterestExpensesToRelatedPartyOutsideGroupOtherGroupGuarantor" + } + }, + "interestExpensesToOthersWithOutstandingClaim" : { + "type" : "array", + "description" : "Interest expenses to other companies with outstanding claims", + "items" : { + "$ref" : "#/components/schemas/InterestExpensesToRelatedPartyOutsideGroupOtherWithOutstandingClaim" + } + }, + "totalInterestExpenses" : { + "type" : "number", + "description" : "Total interest expenses", + "readOnly" : true + }, + "costsForGuaranteeCommission" : { + "type" : "number", + "description" : "Costs for guarantee commission" + }, + "totalInterestExpensesIncludingGuaranteeCosts" : { + "type" : "number", + "description" : "Total interest expenses including guarantee costs", + "readOnly" : true + } + } + }, + "InterestExpensesToRelatedPartyOutsideGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest expenses to companies in the same group" + }, + "InterestExpensesToRelatedPartyOutsideGroupOtherGroupGuarantor" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest expenses to other group guarantor" + }, + "InterestExpensesToRelatedPartyOutsideGroupOtherWithOutstandingClaim" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest expenses to other companies with outstanding claims" + }, + "InterestIncomeFromCompaniesInSameGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "interestIncomeFromCompanies" : { + "type" : "array", + "description" : "Interest income from companies in the same group", + "items" : { + "$ref" : "#/components/schemas/InterestIncomeFromCompanyInSameGroup" + } + }, + "totalInterestIncome" : { + "type" : "number", + "description" : "Total interest income", + "readOnly" : true + }, + "lossForHolderOnRealizationOfPremiumDiscountBonds" : { + "type" : "number", + "description" : "Loss for holder on realization of premium discount bonds" + }, + "gainForHolderUponRealizationOfPremiumDiscountBonds" : { + "type" : "number", + "description" : "Gain for holder upon realization of premium discount bonds" + }, + "lossForHolderOnRealizationOfCompositeVolumeDebtInstruments" : { + "type" : "number", + "description" : "Loss for holder on realization of composite volume debt instruments" + }, + "gainForHolderOnRealizationOfCompositeVolumeDebtInstruments" : { + "type" : "number", + "description" : "Gain for holder on realization of composite volume debt instruments" + }, + "totalInterestIncomeEtc" : { + "type" : "number", + "description" : "Total interest income etc", + "readOnly" : true + }, + "netInterestExpensesToCompanies" : { + "type" : "number", + "description" : "Net interest expenses to companies", + "readOnly" : true + } + } + }, + "InterestIncomeFromCompanyInSameGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest income from companies in the same group" + }, + "InterestIncomeFromRelatedPartiesOutsideGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "interestIncomeFromCompanies" : { + "type" : "array", + "description" : "Interest income from companies in the same group", + "items" : { + "$ref" : "#/components/schemas/InterestIncomeFromRelatedPartyOutsideGroup" + } + }, + "totalInterestIncome" : { + "type" : "number", + "description" : "Total interest income", + "readOnly" : true + }, + "lossForHolderOnRealizationOfPremiumDiscountBonds" : { + "type" : "number", + "description" : "Loss for holder on realization of premium discount bonds" + }, + "gainForHolderUponRealizationOfPremiumDiscountBonds" : { + "type" : "number", + "description" : "Gain for holder upon realization of premium discount bonds" + }, + "lossForHolderOnRealizationOfCompositeVolumeDebtInstruments" : { + "type" : "number", + "description" : "Loss for holder on realization of composite volume debt instruments" + }, + "gainForHolderOnRealizationOfCompositeVolumeDebtInstruments" : { + "type" : "number", + "description" : "Gain for holder on realization of composite volume debt instruments" + }, + "totalInterestIncomeEtc" : { + "type" : "number", + "description" : "Total interest income etc", + "readOnly" : true + }, + "netInterestExpensesToCompanies" : { + "type" : "number", + "description" : "Net interest expenses to companies", + "readOnly" : true + } + } + }, + "InterestIncomeFromRelatedPartyOutsideGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "interestTransactions" : { + "type" : "number", + "description" : "Interest transactions" + } + }, + "description" : "Interest income from companies in the same group" + }, + "InterestLimitation" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyComplianceWithInterestLimitation" : { + "type" : "boolean" + }, + "netInterestCostsNorwegianGroupExceeds25MNOK" : { + "type" : "boolean" + }, + "companyUsesExceptionRule" : { + "type" : "boolean" + }, + "companyCarriedForwardInterestDeductionsFromPreviousYears" : { + "type" : "boolean" + }, + "groupApex" : { + "$ref" : "#/components/schemas/InterestLimitationGroupApex" + }, + "norwegianPartOfGroup" : { + "$ref" : "#/components/schemas/InterestLimitationNorwegianPartOfGroup" + }, + "calculationOfTotalNetCosts" : { + "$ref" : "#/components/schemas/InterestLimitationCalculationOfTotalNetCosts" + }, + "interestExpensesToCompaniesInSameGroup" : { + "$ref" : "#/components/schemas/InterestExpensesToCompaniesInSameGroup" + }, + "interestIncomeFromCompaniesInSameGroup" : { + "$ref" : "#/components/schemas/InterestIncomeFromCompaniesInSameGroup" + }, + "interestExpensesToRelatedPartiesOutsideGroup" : { + "$ref" : "#/components/schemas/InterestExpensesToRelatedPartiesOutsideGroup" + }, + "interestIncomeFromRelatedPartiesOutsideGroup" : { + "$ref" : "#/components/schemas/InterestIncomeFromRelatedPartiesOutsideGroup" + }, + "basisForCalculationOfInterestDeductionLimit" : { + "$ref" : "#/components/schemas/InterestLimitationCalculationOfInterestDeductionLimit" + }, + "forwardingDisallowedInterestDeductions" : { + "type" : "array", + "description" : "Forwarding disallowed interest deductions", + "items" : { + "$ref" : "#/components/schemas/ForwardingDisallowedInterestDeduction" + } + }, + "netInterestCosts" : { + "type" : "number", + "description" : "Net interest cost from calculation of total net costs", + "readOnly" : true + }, + "interestDeductionLimit" : { + "type" : "number", + "description" : "Interest deduction limit", + "readOnly" : true + }, + "additionsOrDeductionsInIncomeDifference" : { + "type" : "number", + "description" : "Additions or deductions in income difference", + "readOnly" : true + }, + "incomeAdditionForExceedingInterestDeductionLimit" : { + "type" : "number", + "description" : "Income addition for exceeding interest deduction limit", + "readOnly" : true + }, + "reversedIncomeAddition" : { + "type" : "number", + "description" : "Reversed income addition", + "readOnly" : true + }, + "incomeAdditionForInterestDeductionDenialToRelatedParties" : { + "type" : "number", + "description" : "Income addition for interest deduction denial to related parties", + "readOnly" : true + }, + "additionToIncome" : { + "type" : "number", + "description" : "Addition to income", + "readOnly" : true + }, + "deductionFromIncome" : { + "type" : "number", + "description" : "Deduction from income", + "readOnly" : true + }, + "incomeAdjustment" : { + "type" : "number", + "description" : "Income adjustment", + "readOnly" : true + }, + "carriedForwardFromPreviousYears" : { + "type" : "number", + "description" : "Income adjustment", + "readOnly" : true + }, + "interestExpensesForCarryForward" : { + "type" : "number", + "description" : "Interest expenses for carry forward", + "readOnly" : true + } + } + }, + "InterestLimitationCalculationOfInterestDeductionLimit" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "thisYearsResultFromTaxReturn" : { + "type" : "number", + "description" : "This year result from tax return" + }, + "givenGroupContribution" : { + "type" : "number", + "description" : "Given group contribution" + }, + "additionsForTaxDepreciationFromFixedAssets" : { + "type" : "number", + "description" : "Additions for tax depreciation from fixed assets" + }, + "directCompensationForDepreciatedAsset" : { + "type" : "number", + "description" : "Direct compensation for depreciated assets" + }, + "amortizedLeaseCost" : { + "type" : "number", + "description" : "Amortized lease cost" + }, + "deductionForGroupContributionsNotIncludedInCalculationBasis" : { + "type" : "number", + "description" : "Deduction for group contributions not included in calculation basis" + }, + "basisForCalculationOfInterestDeductionLimit" : { + "type" : "number", + "description" : "Basis for calculation of interest deduction limit", + "readOnly" : true + }, + "netInterestCosts" : { + "type" : "number", + "description" : "Net interest costs", + "readOnly" : true + } + } + }, + "InterestLimitationCalculationOfTotalNetCosts" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "totalInterestExpensesFromAccount" : { + "type" : "number", + "description" : "Total interest expenses from account 815x" + }, + "totalInterestIncomeFromAccount" : { + "type" : "number", + "description" : "Total interest income from account 805x" + }, + "overriddenTotalInterestExpensesFromAccount" : { + "type" : "number", + "description" : "Overridden total interest expenses from account 815x" + }, + "overriddenTotalInterestIncomeFromAccount" : { + "type" : "number", + "description" : "Overridden total interest income from account 805x" + }, + "correctionOfInterestExpenses" : { + "type" : "number", + "description" : "Correction of interest expenses" + }, + "correctionOfInterestIncome" : { + "type" : "number", + "description" : "Correction Of Interest Income" + }, + "guaranteeCommissionsOnDebt" : { + "type" : "number", + "description" : "Guarantee commissions on debt" + }, + "lossOnRealizationOfPremiumDiscountBonds" : { + "type" : "number", + "description" : "Loss on realization of premium discount bonds" + }, + "gainOnRealizationOfPremiumDiscountBonds" : { + "type" : "number", + "description" : "Gain on realization of premium discount bonds" + }, + "lossOnRealizationOfCompositeVolumeDebtInstruments" : { + "type" : "number", + "description" : "Loss on realization of composite volume debt instruments" + }, + "gainOnRealizationOfCompositeVolumeDebtInstruments" : { + "type" : "number", + "description" : "Gain on realization of composite volume debt instruments" + }, + "netInterestCosts" : { + "type" : "number", + "description" : "Net interest costs", + "readOnly" : true + } + } + }, + "InterestLimitationGroupApex" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + } + } + }, + "InterestLimitationNorwegianPartOfGroup" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "infoNorwegianPartOfGroupReportedAnotherCompany" : { + "type" : "boolean", + "description" : "Information about the Norwegian group reported by another company" + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "companiesIncludedInNorwegianPartOfGroup" : { + "type" : "array", + "description" : "Companies included in the Norwegian part of the group", + "items" : { + "$ref" : "#/components/schemas/CompaniesIncludedInNorwegianPartOfGroup" + } + } + } + }, + "ResponseWrapperInterestLimitation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InterestLimitation" + } + } + }, + "ResearchAndDevelopment2024" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "projectNumber" : { + "type" : "string", + "description" : "Project Number" + }, + "projectTitle" : { + "type" : "string", + "description" : "Project Title" + }, + "projectStatus" : { + "type" : "string", + "description" : "Project Status", + "enum" : [ "NONE", "APPLICATION_REJECTED", "APPLICATION_APPROVED", "COMPLAINT_RECEIVED", "PROJECT_CANCELLED_BY_NFR", "APPROVAL_RESCINDED", "FINISHED", "CANCELLED", "WITHDRAWN", "PROCESSING_AFTER_APPROVED_COMPLAINT", "ADMINISTRATIVELY_APPROVED_COMPLAINT" ] + }, + "approvedRndIncentiveStartYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Approved R&D Incentive Start Year", + "format" : "int32" + }, + "approvedRndIncentiveEndYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Approved R&D Incentive End Year", + "format" : "int32" + }, + "businessCategory" : { + "type" : "string", + "description" : "Business Category", + "enum" : [ "NONE", "SMALL_BUSINESS", "MEDIUM_BUSINESS", "LARGE_BUSINESS" ] + }, + "collaborativeProjectWithOtherEnterprises" : { + "type" : "string", + "description" : "Is Collaborative Project With Other Enterprises", + "enum" : [ "NONE", "NO", "YES" ] + }, + "stakeInCollaborativeProject" : { + "type" : "number", + "description" : "Stake in a collaborative project as percent" + }, + "hasExtensiveDisseminationThroughConferencesPublicationsEtc" : { + "type" : "string", + "description" : "Has Extensive Dissemination Through Conferences Publications Etc", + "enum" : [ "NONE", "NO", "YES" ] + }, + "appliedForOtherPublicAidInNorway" : { + "type" : "string", + "description" : "Has applied for other public aid in Norway", + "enum" : [ "NONE", "NO", "YES" ] + }, + "collaborativeBusinesses" : { + "type" : "array", + "description" : "List of businesses which is collaborating on the project", + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopmentCollaborativeBusiness" + } + }, + "workPackages" : { + "type" : "array", + "description" : "List of specifications of work packages", + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopmentWorkPackage" + } + }, + "totalCostForProjectPeriod" : { + "type" : "number", + "description" : "The total cost of the project since it's infancy" + }, + "totalGrossTaxDeductionFromPreviousYears" : { + "type" : "number", + "description" : "Total Gross Tax Deduction From Previous Years" + }, + "otherPublicSupportList" : { + "type" : "array", + "description" : "List of other public support the project has received", + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopmentOtherPublicSupport" + } + }, + "publicSupportAsReducedWorkerFee" : { + "type" : "number", + "description" : "Public Support As Reduced Worker Fee" + }, + "totalGrossPublicSupportInProjectPeriod" : { + "type" : "number", + "description" : "Total Gross Public Support In Project Period", + "readOnly" : true + }, + "taxDeductionForProject" : { + "type" : "number", + "description" : "Tax deduction for the project" + }, + "addedTaxForProject" : { + "type" : "number", + "description" : "Additional tax for the project" + }, + "maxApprovedGrossAmountOfPublicSupport" : { + "type" : "number", + "description" : "Max approved gross amount public support" + }, + "grossAmountTaxExemptionForYear" : { + "type" : "number", + "description" : "Gross value tax reduction for current year" + }, + "grossAmountTaxExemptionForPreviousYear" : { + "type" : "number", + "description" : "Gross value tax reduction for previous year" + }, + "amountOfSupportExceedingApprovedAmount" : { + "type" : "number", + "description" : "Assigned support beyond max gross amount public support" + }, + "amountOfSupportExceedingApprovedAmountThisYear" : { + "type" : "number", + "description" : "Assigned support beyond max gross amount public support this year" + }, + "remainingAidGrossValue" : { + "type" : "number", + "description" : "Remaining aid after this year's deductions" + }, + "rndRate" : { + "type" : "number", + "description" : "R&D tax deduction rate" + }, + "taxDeductionForReductionAgainstOtherStateAid" : { + "type" : "number", + "description" : "Net tax deduction for reduction against other state aid" + }, + "wasInEconomicDifficultiesAtApplicationTime" : { + "type" : "string", + "description" : "Was In Economic Difficulties At Application Time", + "enum" : [ "NONE", "NO", "YES" ] + }, + "underlyingDocumentsUsedForAssessment" : { + "type" : "string", + "description" : "Underlying Documents Used For Assessment", + "enum" : [ "NONE", "INTERIM_BALANCE", "ANNUAL_ACCOUNTS" ] + }, + "underlyingDocumentationDate" : { + "type" : "string", + "description" : "Underlying Documentation Date", + "example" : "2024-04-29" + }, + "projectToBeSignedByAuditor" : { + "type" : "string", + "description" : "Project to be signed by auditor", + "enum" : [ "NONE", "NO", "YES" ] + }, + "netAmountAidAwarded" : { + "type" : "number", + "description" : "Net value of aid awarded" + } + } + }, + "ResearchAndDevelopmentCollaborativeBusiness" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "organizationNumber" : { + "type" : "string", + "description" : "Organization Number" + }, + "description" : { + "type" : "string", + "description" : "Description" + } + }, + "description" : "List of businesses which is collaborating on the project" + }, + "ResearchAndDevelopmentOtherPublicSupport" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "payerName" : { + "type" : "string", + "description" : "Payer name" + }, + "amount" : { + "type" : "number", + "description" : "Amount" + } + }, + "description" : "Other Public Supports" + }, + "ResearchAndDevelopmentWorkPackage" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "packageId" : { + "type" : "string", + "description" : "ID of the work package" + }, + "packageTitle" : { + "type" : "string", + "description" : "The title of the package" + }, + "projectCategory" : { + "type" : "string", + "description" : "The category of the project", + "enum" : [ "NONE", "RESEARCH", "DEVELOPMENT" ] + }, + "costInIncomeYear" : { + "type" : "number", + "description" : "Cost In Income Year" + }, + "includedPersonnelCostsInIncomeYear" : { + "type" : "number", + "description" : "Included Personnel Costs In Income Year" + }, + "numberOfOwnHoursInIncomeYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number Of Own Hours In Income Year", + "format" : "int64" + }, + "totalCostsFromPreviousYears" : { + "type" : "number", + "description" : "Total Costs Previous Years" + }, + "maxApprovedPublicSupportAsShareOfTotalCost" : { + "type" : "number", + "description" : "Maximum Approved Public Support As A Share Of Total Costs", + "readOnly" : true + } + }, + "description" : "List of specifications of work packages" + }, + "ListResponseResearchAndDevelopment2024" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment2024" + } + } + } + }, + "ResponseWrapperResearchAndDevelopment2024" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment2024" + } + } + }, + "ResearchAndDevelopment" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "projectNumber" : { + "type" : "string", + "description" : "Project Number" + }, + "projectTitle" : { + "type" : "string", + "description" : "Project Title" + }, + "projectCategory" : { + "type" : "string", + "description" : "Project Category", + "enum" : [ "NONE", "RESEARCH", "DEVELOPMENT" ] + }, + "applicationApprovedDate" : { + "type" : "string", + "description" : "Application approved date", + "example" : "2024-04-29" + }, + "projectStartDate" : { + "type" : "string", + "description" : "Project start date", + "example" : "2024-04-29" + }, + "projectEndDate" : { + "type" : "string", + "description" : "Project end date", + "example" : "2024-04-29" + }, + "approvedRndIncentiveStartYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Approved R&D Incentive Start Year", + "format" : "int32" + }, + "approvedRndIncentiveEndYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Approved R&D Incentive End Year", + "format" : "int32" + }, + "projectStatus" : { + "type" : "string", + "description" : "Project Status", + "enum" : [ "NONE", "APPLICATION_REJECTED", "APPLICATION_APPROVED", "COMPLAINT_RECEIVED", "PROJECT_CANCELLED_BY_NFR", "APPROVAL_RESCINDED", "FINISHED", "CANCELLED", "WITHDRAWN", "PROCESSING_AFTER_APPROVED_COMPLAINT", "ADMINISTRATIVELY_APPROVED_COMPLAINT" ] + }, + "projectStatusDate" : { + "type" : "string", + "description" : "Project status date", + "example" : "2024-04-29" + }, + "resolutions" : { + "type" : "array", + "description" : "Resolutions", + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopmentResolution" + } + }, + "businessCategory" : { + "type" : "string", + "description" : "Business Category", + "enum" : [ "NONE", "SMALL_BUSINESS", "MEDIUM_BUSINESS", "LARGE_BUSINESS" ] + }, + "isCollaborativeProjectWIthOtherEnterprises" : { + "type" : "string", + "description" : "Is Collaborative Project With Other Enterprises", + "enum" : [ "NONE", "NO", "YES" ] + }, + "hasExtensiveDisseminationThroughConferencesPublicationsEtc" : { + "type" : "string", + "description" : "Has Extensive Dissemination Through Conferences Publications Etc", + "enum" : [ "NONE", "NO", "YES" ] + }, + "maximumApprovedPublicSupportAsAShareOfTotalCosts" : { + "type" : "number", + "description" : "Maximum Approved Public Support As A Share Of Total Costs", + "readOnly" : true + }, + "totalCostsPreviousYears" : { + "type" : "number", + "description" : "Total Costs Previous Years" + }, + "totalGrossTaxDeductionFromPreviousYears" : { + "type" : "number", + "description" : "Total Gross Tax Deduction From Previous Years" + }, + "costInIncomeYear" : { + "type" : "number", + "description" : "Cost In Income Year" + }, + "includedPersonnelCostsInIncomeYear" : { + "type" : "number", + "description" : "Included Personnel Costs In Income Year" + }, + "numberOfOwnHoursInIncomeYear" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number Of Own Hours In Income Year", + "format" : "int32" + }, + "otherPublicSupports" : { + "type" : "array", + "description" : "Other Public Supports", + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopmentOtherPublicSupport" + } + }, + "publicSupportAsReducedWorkerFee" : { + "type" : "number", + "description" : "Public Support As Reduced Worker Fee" + }, + "totalGrossPublicSupportInProjectPeriod" : { + "type" : "number", + "description" : "Total Gross Public Support In Project Period", + "readOnly" : true + }, + "wasInEconomicDifficultiesAtApplicationTime" : { + "type" : "string", + "description" : "Was In Economic Difficulties At Application Time", + "enum" : [ "NONE", "NO", "YES" ] + }, + "underlyingDocumentsUsedForAssessment" : { + "type" : "string", + "description" : "Underlying Documents Used For Assessment", + "enum" : [ "NONE", "INTERIM_BALANCE", "ANNUAL_ACCOUNTS" ] + }, + "underlyingDocumentationDate" : { + "type" : "string", + "description" : "Underlying Documentation Date", + "example" : "2024-04-29" + }, + "totalCostsExcludedFromTaxDeduction" : { + "type" : "number", + "description" : "Total costs excluded from tax deduction" + }, + "totalCostsForEntireProjectPeriod" : { + "type" : "number", + "description" : "Total costs for entire project period", + "readOnly" : true + }, + "maxApprovedGrossAmountPublicSupport" : { + "type" : "number", + "description" : "Max approved gross amount public support" + }, + "assignedSupportBeyondMaxGrossAmountPublicSupport" : { + "type" : "number", + "description" : "Assigned support beyond max gross amount public support" + }, + "netTaxDeductionBeforeReductionAgainstOtherPublicSupport" : { + "type" : "number", + "description" : "Net tax deduction before reduction against other public support" + }, + "taxDeductionForTheProject" : { + "type" : "number", + "description" : "Tax deduction for the project" + }, + "additionalTaxForTheProject" : { + "type" : "number", + "description" : "Additional tax for the project" + }, + "projectToBeSignedByAuditor" : { + "type" : "string", + "description" : "Project to be signed by auditor", + "enum" : [ "NONE", "NO", "YES" ] + }, + "grossValueTaxDeduction" : { + "type" : "number", + "description" : "Gross value tax reduction for current year" + }, + "allocatedSupportAmount" : { + "type" : "number", + "description" : "Net tax deduction after reduction against other public support", + "readOnly" : true + } + } + }, + "ResearchAndDevelopmentResolution" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "date" : { + "type" : "string", + "description" : "The date of the resolution" + }, + "type" : { + "type" : "string", + "description" : "The type of the resolution", + "enum" : [ "NONE", "DELIMITATION", "PROCESSING_AFTER_APPROVED_COMPLAINT", "APPROVAL_RESCINDED", "ADMINISTRATIVELY_APPROVED_COMPLAINT", "COMPLAINT_RECEIVED", "PROJECT_CANCELLED", "FINAL_REPORT_APPROVED", "FINAL_REPORT_SENT", "FINAL_REPORT_RETURNED", "FINAL_REPORT_PENDING", "APPLICATION_REJECTED", "APPLICATION_APPROVED", "ANNUAL_REPORT_APPROVED", "ANNUAL_REPORT_SENT", "ANNUAL_REPORT_RETURNED", "ANNUAL_REPORT_PENDING" ] + }, + "delimitation" : { + "type" : "string", + "description" : "The delimitation of the resolution" + } + }, + "description" : "Resolutions" + }, + "ListResponseResearchAndDevelopment" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment" + } + } + } + }, + "ResponseWrapperResearchAndDevelopment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ResearchAndDevelopment" + } + } + }, + "ResponseWrapperListDepartment" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Department" + } + } + } + }, + "ResponseWrapperAgriculturalAccountOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AgriculturalAccountOverview" + } + } + }, + "ConditionalDeferredGain" : { + "type" : "object", + "properties" : { + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "identifier" : { + "type" : "string", + "readOnly" : true + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "compensationAmount" : { + "type" : "number", + "readOnly" : true + }, + "taxFreeAmount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ConditionalDeferredGainOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "conditionalDeferredGains" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ConditionalDeferredGain" + } + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperConditionalDeferredGainOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ConditionalDeferredGainOverview" + } + } + }, + "ControlledTransactions2024" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "controlledTransactionsExceedingLimit" : { + "type" : "boolean", + "description" : "Has controlled transaction exceeding the set limit" + }, + "obligedToDocument" : { + "type" : "boolean", + "description" : "The company is obliged to document controlled transactions" + }, + "consolidatedMarginPercentage" : { + "type" : "number", + "description" : "Percentage of consolidated margin" + }, + "costOfImmaterialAssets" : { + "type" : "number", + "description" : "The total cost related to development of the company's immaterial assets" + }, + "numberOfRegisteredPatents" : { + "minimum" : 0, + "type" : "integer", + "description" : "The number of patents registered by the company", + "format" : "int32" + }, + "groupBeenRestructured" : { + "type" : "boolean", + "description" : "Whether or not the group related to the company has undergone restructuring" + }, + "companyServicedOtherCompanyInGroupForFree" : { + "type" : "boolean", + "description" : "Whether or not the company has serviced another company in the same group for free" + }, + "companyHasBeenServicedByOtherCompanyInGroupForFree" : { + "type" : "boolean", + "description" : "Whether or not the company has been serviced by another company in the same group for free" + }, + "companyGuarantorForAgreementsByOtherCompaniesInSameGroup" : { + "type" : "boolean", + "description" : "Whether or not the company acts as a guarantor for an agreement by another company in the same group" + }, + "resultAsPercentageOfGrossRevenue" : { + "type" : "number", + "description" : "Yearly result as the percentage of total gross revenue" + }, + "summary" : { + "$ref" : "#/components/schemas/ControlledTransactionsSummary" + }, + "numberOfEntitiesWithControlledTransactionsInNorway" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of entities with controlled transactions in norway", + "format" : "int64" + }, + "numberOfEntitiesWithControlledTransactionsOutsideNorway" : { + "minimum" : 0, + "type" : "integer", + "description" : "Number of entities with controlled transactions outside of norway", + "format" : "int64" + }, + "businessActivities" : { + "type" : "array", + "description" : "List of business activities", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsBusinessActivity" + } + }, + "transactions" : { + "type" : "array", + "description" : "List of transactions", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsTransaction" + } + }, + "outstandingBalances" : { + "type" : "array", + "description" : "List of outstanding balances", + "items" : { + "$ref" : "#/components/schemas/ControlledTransactionsOutstanding" + } + } + } + }, + "ControlledTransactionsBusinessActivity" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "mainBusinessActivity" : { + "type" : "string", + "description" : "The main type of business activity" + } + }, + "description" : "List of business activities" + }, + "ResponseWrapperControlledTransactions2024" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ControlledTransactions2024" + } + } + }, + "CooperativeEnterpriseOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "totalSales" : { + "type" : "number", + "readOnly" : true + }, + "shareOfSales" : { + "type" : "number", + "readOnly" : true + }, + "totalRetroactivePayment" : { + "type" : "number", + "readOnly" : true + }, + "taxableBusinessIncome" : { + "type" : "number", + "readOnly" : true + }, + "totalPurchases" : { + "type" : "number", + "readOnly" : true + }, + "shareOfPurchases" : { + "type" : "number", + "readOnly" : true + }, + "totalCarryForwardDeductionLimit" : { + "type" : "number", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + } + } + }, + "ResponseWrapperCooperativeEnterpriseOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CooperativeEnterpriseOverview" + } + } + }, + "OtherCircumstancesOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "assetsCompanyPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/RealizationAndRentalOfAssets" + } + }, + "assetsShareholderPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/RealizationAndRentalOfAssets" + } + } + } + }, + "RealizationAndRentalOfAssets" : { + "type" : "object", + "properties" : { + "groupId" : { + "type" : "number", + "readOnly" : true + }, + "genericDataType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "MISC", "TRANSPORT", "ACCOMMODATION_AND_RESTAURANT", "PROFIT_AND_LOSS", "CUSTOMER_RECEIVABLE", "INVENTORIES", "TANGIBLE_FIXED_ASSETS", "RECONCILIATION_OF_EQUITY", "PERMANENT_DIFFERENCES", "TEMPORARY_DIFFERENCES", "DOCUMENT_DOWNLOADED", "GROUP_CONTRIBUTIONS", "TAX_RETURN", "TAX_CALCULATIONS", "DOCUMENTATION", "SHARES_AND_SECURITIES", "REAL_ESTATE", "PARTICIPANT", "SALARY_AND_PENSION_EXPENSES", "COOPERATIVE_ENTERPRISE", "OTHER_CIRCUMSTANCES", "RESEARCH_AND_DEVELOPMENT", "TIMBER_ACCOUNT", "CONTROLLED_TRANSACTIONS", "PARTICIPANT_ASSESSMENT_REPORT", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION", "INTEREST_LIMITATION", "DOCUMENT_WITH_ALTINN_ID", "FOREST_FUND", "TAX_ASSESSMENT", "DISTRIBUTION_OF_CAPITAL_DEBT", "REINDEER_HUSBANDRY", "LANDBRUKETS_DATAFLYT", "AGRICULTURAL_ACCOUNT", "CONDITIONAL_DEFERRED_GAIN", "ENTERPRISE_DEBT_DISTRIBUTION", "ENTERPRISE_OTHER_INTEREST_DISTRIBUTION" ] + }, + "genericDataSubType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "NONE", "NOT_LICENSED", "FREIGHT_TRANSPORT", "TAXI", "ACQUISITION_AND_REALIZATION", "PRODUCT_TYPE_INVENTORY", "CASH_REGISTER_SYSTEM", "PRIVATE_WITHDRAWAL_OF_GOODS", "ENTERTAINMENT", "MULTI_UNIT_BUILDING_UNIT", "RENTAL_WITHDRAWAL_SALE_COMPANY", "RENTAL_WITHDRAWAL_SALE_SHAREHOLDER", "RESOLUTION", "WORK_PACKAGE", "COLLABORATIVE_BUSINESS", "OTHER_PUBLIC_SUPPORT", "BUSINESS_ACTIVITY", "RELATED_COMPANY", "FUNCTION_AND_RISK", "TRANSACTION", "OUTSTANDING", "INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM", "COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP", "INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM", "INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION", "ENTERPRISE_DEBT_ALLOCATION" ] + }, + "genericDataSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "assetType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EMPTY", "GOODS", "RESIDENTIAL_PROPERTY", "HOLIDAY_PROPERTY", "OTHER_PROPERTY", "CAR", "MOTORHOMES", "MOTORCYCLES", "OTHER_VEHICLES", "BOAT", "HELICOPTER", "PLANE", "OTHER_WEALTH" ] + }, + "pricingMethod" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SELF_ASSESSED_VALUE", "VALUATION_BY_A_VALUER", "VALUATION_BY_A_THIRD_PARTY", "OTHER_VALUATION" ] + }, + "rentalValue" : { + "type" : "number", + "readOnly" : true + }, + "valueOfSaleOrWithdrawal" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperOtherCircumstancesOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/OtherCircumstancesOverview" + } + } + }, + "ParticipantReportRoECreate" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "Year", + "format" : "int32" + }, + "groupId" : { + "type" : "integer", + "description" : "Group id", + "format" : "int32" + } + } + }, + "ParticipantReport" : { + "type" : "object", + "properties" : { + "participant" : { + "$ref" : "#/components/schemas/Participant" + }, + "shareOfAssetsLiabilities" : { + "type" : "number", + "description" : "Share of assets and liabilities", + "readOnly" : true + }, + "shareOfDeficitSurplus" : { + "type" : "number", + "description" : "Share of deficit and surplus", + "readOnly" : true + }, + "totalLaborRemuneration" : { + "type" : "number", + "description" : "Total labor remuneration", + "readOnly" : true + }, + "calculatedTotalCapital" : { + "type" : "number", + "description" : "Total calculated capital", + "readOnly" : true + }, + "sharesRealizedOrAcquired" : { + "type" : "boolean", + "description" : "Shares realized or acquired", + "readOnly" : true + }, + "residentInNordTromsOrFinnmark" : { + "type" : "boolean", + "description" : "Resides in Nord Troms or Finnnmark", + "readOnly" : true + }, + "subjectToFinancialTax" : { + "type" : "boolean", + "description" : "Company is subject to financial tax", + "readOnly" : true + }, + "compensation" : { + "type" : "number", + "description" : "Compensation", + "readOnly" : true + }, + "agriculture" : { + "$ref" : "#/components/schemas/ParticipantReportAgriculture" + }, + "distribution" : { + "$ref" : "#/components/schemas/ParticipantReportDistribution" + }, + "calculationOfShieldingBasis" : { + "$ref" : "#/components/schemas/ParticipantReportShieldingBasis" + }, + "calculationOfShieldingDeduction" : { + "$ref" : "#/components/schemas/ParticipantReportShieldingDeduction" + }, + "calculationOfAdditionsToOrdinaryIncome" : { + "$ref" : "#/components/schemas/ParticipantReportAdditionsToOrdinaryIncome" + }, + "specificationOfTaxableBasis" : { + "$ref" : "#/components/schemas/ParticipantReportTaxBasisSpecification" + }, + "paidIn" : { + "$ref" : "#/components/schemas/ParticipantReportPaidIn" + }, + "retainedEarnings" : { + "$ref" : "#/components/schemas/ParticipantReportRetainedEarnings" + }, + "acquisitionAndRealization" : { + "type" : "array", + "description" : "Acquisition and Realization", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ParticipantReportAcquisitionAndRealization" + } + }, + "priceAdjustmentManagement" : { + "$ref" : "#/components/schemas/ParticipantReportPriceAdjustmentManagement" + } + } + }, + "ParticipantReportAcquisitionAndRealization" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "transferType" : { + "type" : "string", + "description" : "Acquisition and realization types", + "readOnly" : true + }, + "transactionType" : { + "type" : "string", + "description" : "Realization and acquisition transaction type codelist", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "Name", + "readOnly" : true + }, + "identification" : { + "type" : "string", + "description" : "Identification", + "readOnly" : true + }, + "time" : { + "type" : "string", + "description" : "Time", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "description" : "Amount", + "readOnly" : true + }, + "remuneration" : { + "type" : "number", + "description" : "Remuneration", + "readOnly" : true + }, + "costs" : { + "type" : "number", + "description" : "Costs", + "readOnly" : true + }, + "additionNonDeductibleLoss" : { + "type" : "number", + "description" : "Addition non deductible loss", + "readOnly" : true + }, + "unusedShieldingPreviousYears" : { + "type" : "number", + "description" : "Unused shielding previous years", + "readOnly" : true + }, + "otherCorrections" : { + "type" : "number", + "description" : "Other corrections", + "readOnly" : true + }, + "gainLossRealization" : { + "type" : "number", + "description" : "Gain loss realization", + "readOnly" : true + }, + "isCoveredExemptionMethod" : { + "type" : "boolean", + "writeOnly" : true + }, + "acquiredInitialValue" : { + "type" : "number", + "description" : "Acquired initial value", + "readOnly" : true + }, + "price" : { + "type" : "number", + "description" : "Price", + "readOnly" : true + }, + "initialValueRealizedShares" : { + "type" : "number", + "description" : "Initial value realized shares", + "readOnly" : true + }, + "temporaryGainLossRealization" : { + "type" : "number", + "description" : "Temporary gain loss realization", + "readOnly" : true + }, + "coveredExemptionMethod" : { + "type" : "boolean" + } + }, + "description" : "Acquisition and Realization", + "readOnly" : true + }, + "ParticipantReportAdditionsToOrdinaryIncome" : { + "type" : "object", + "properties" : { + "distributionAfterTax" : { + "type" : "number", + "description" : "Distribution after tax", + "readOnly" : true + }, + "otherCorrection" : { + "type" : "number", + "description" : "Other correction", + "readOnly" : true + }, + "shieldingDeductionOffsetAgainstDistribution" : { + "type" : "number", + "description" : "Shielding deduction offset against distribution", + "readOnly" : true + }, + "additionsToOrdinaryIncome" : { + "type" : "number", + "description" : "Additions to ordinary income", + "readOnly" : true + } + }, + "description" : "Calculation of additions to ordinary income", + "readOnly" : true + }, + "ParticipantReportAgriculture" : { + "type" : "object", + "properties" : { + "basisForCalculationOfAgriculturalDeduction" : { + "type" : "number", + "description" : "Basis for calculation of agricultural deduction", + "readOnly" : true + }, + "rentalIncomeFromAgriculturalOperations" : { + "type" : "number", + "description" : "Rental income from agricultural operations", + "readOnly" : true + } + }, + "description" : "Agriculture", + "readOnly" : true + }, + "ParticipantReportDistribution" : { + "type" : "object", + "properties" : { + "cashDisbursementFromCompany" : { + "type" : "number", + "description" : "Cash disbursement from company", + "readOnly" : true + }, + "valueOfAssetsOrServicesWithdrawn" : { + "type" : "number", + "description" : "Value of assets or services withdrawn", + "readOnly" : true + }, + "capitalReimbursement" : { + "type" : "number", + "description" : "Capital reimbursement", + "readOnly" : true + }, + "distributionBeforeTaxAndShielding" : { + "type" : "number", + "description" : "Distribution before tax and shielding", + "readOnly" : true + }, + "taxOnProfitShare" : { + "type" : "number", + "description" : "Tax on profit share", + "readOnly" : true + }, + "netAmount" : { + "type" : "number", + "description" : "Net amount", + "readOnly" : true + }, + "taxBenefitFromLoss" : { + "type" : "number", + "description" : "Tax benefit from loss", + "readOnly" : true + } + }, + "description" : "Distribution", + "readOnly" : true + }, + "ParticipantReportPaidIn" : { + "type" : "object", + "properties" : { + "shareOfTaxableEquityPreviousYear" : { + "type" : "number", + "description" : "Share of taxable equity previous year", + "readOnly" : true + }, + "shareOfTaxableEquityBeginningOfYear" : { + "type" : "number", + "description" : "Share of taxable equity at beginning of year", + "readOnly" : true + }, + "acquisitionOfShare" : { + "type" : "number", + "description" : "Acquisition of share", + "readOnly" : true + }, + "disposalOfShare" : { + "type" : "number", + "description" : "Disposal of share", + "readOnly" : true + }, + "deposit" : { + "type" : "number", + "description" : "Deposit", + "readOnly" : true + }, + "otherCorrection" : { + "type" : "number", + "description" : "Other correction", + "readOnly" : true + }, + "repayment" : { + "type" : "number", + "description" : "Repayment", + "readOnly" : true + }, + "improperDeposit" : { + "type" : "number", + "description" : "Inadvertent deposit", + "readOnly" : true + }, + "taxBenefitFromLoss" : { + "type" : "number", + "description" : "Tax benefit from loss", + "readOnly" : true + }, + "taxCapitalEquityAsOfEndOfYear" : { + "type" : "number", + "description" : "Tax capital equity as of end of year", + "readOnly" : true + } + }, + "description" : "Paid in capital", + "readOnly" : true + }, + "ParticipantReportPriceAdjustmentManagement" : { + "type" : "object", + "properties" : { + "pricingAdjustmentPreviousYear" : { + "type" : "number", + "description" : "Pricing adjustment previous year", + "readOnly" : true + }, + "pricingAdjustment" : { + "type" : "number", + "description" : "Pricing adjustment", + "readOnly" : true + }, + "realizedShareOfPriceAdjustment" : { + "type" : "number", + "description" : "Realized share of price adjustment", + "readOnly" : true + }, + "realizedShareCostPrice" : { + "type" : "number", + "description" : "Realized share cost price", + "readOnly" : true + }, + "realizedShareTaxEquity" : { + "type" : "number", + "description" : "Realized share tax equity", + "readOnly" : true + }, + "accumulatedAdjustments" : { + "type" : "number", + "description" : "Accumulated adjustments", + "readOnly" : true + } + }, + "description" : "Price adjustment management", + "readOnly" : true + }, + "ParticipantReportRetainedEarnings" : { + "type" : "object", + "properties" : { + "retainedEarningsPreviousYear" : { + "type" : "number", + "description" : "Retained earnings previous year", + "readOnly" : true + }, + "retainedEarningsBeginningOfYear" : { + "type" : "number", + "description" : "Retained earnings at beginning of year", + "readOnly" : true + }, + "acquisitionOfShare" : { + "type" : "number", + "readOnly" : true + }, + "disposalOfShare" : { + "type" : "number", + "readOnly" : true + }, + "taxResult" : { + "type" : "number", + "readOnly" : true + }, + "taxFreeIncome" : { + "type" : "number", + "readOnly" : true + }, + "otherCorrection" : { + "type" : "number", + "readOnly" : true + }, + "dividend" : { + "type" : "number", + "readOnly" : true + }, + "improperDeposit" : { + "type" : "number", + "readOnly" : true + }, + "taxBenefitFromLoss" : { + "type" : "number", + "readOnly" : true + }, + "nondeductibleExpenses" : { + "type" : "number", + "readOnly" : true + }, + "taxCapitalEquityAsOfEndOfYear" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Retained earnings", + "readOnly" : true + }, + "ParticipantReportShieldingBasis" : { + "type" : "object", + "properties" : { + "otherInitialValueCorrection" : { + "type" : "number", + "description" : "Other initial value correction", + "readOnly" : true + }, + "adjustedInitialValue" : { + "type" : "number", + "description" : "Adjusted initial value", + "readOnly" : true + }, + "unusedShieldingFromPreviousYear" : { + "type" : "number", + "description" : "Unused shielding from previous year", + "readOnly" : true + }, + "reductionOfUnusedShieldingDueToRealization" : { + "type" : "number", + "description" : "Reduction of unused shielding due to realization", + "readOnly" : true + }, + "shieldingBasis" : { + "type" : "number", + "description" : "Shielding basis", + "readOnly" : true + } + }, + "description" : "Calculation of shielding basis", + "readOnly" : true + }, + "ParticipantReportShieldingDeduction" : { + "type" : "object", + "properties" : { + "unusedShieldingPreviousYear" : { + "type" : "number", + "description" : "Unused shielding previous year", + "readOnly" : true + }, + "unusedShieldingBeginningOfYear" : { + "type" : "number", + "description" : "Unused shielding at beginning of year", + "readOnly" : true + }, + "correctionForInheritanceOrGiftInIncomeYear" : { + "type" : "number", + "description" : "Correction for inheritance or gift in income year", + "readOnly" : true + }, + "transferredShieldingDeductionFromPreviousYears" : { + "type" : "number", + "description" : "Transferred shielding deduction from previous years", + "readOnly" : true + }, + "correctedUnusedShieldingFromPreviousYears" : { + "type" : "number", + "description" : "Corrected unused shielding from previous years", + "readOnly" : true + }, + "currentYearShieldingDeduction" : { + "type" : "number", + "description" : "Current year shielding deduction", + "readOnly" : true + }, + "transferredShieldingDeduction" : { + "type" : "number", + "description" : "Transferred shielding deduction", + "readOnly" : true + }, + "otherCorrection" : { + "type" : "number", + "description" : "Other correction", + "readOnly" : true + }, + "totalShieldingForApplicationAndContinuation" : { + "type" : "number", + "description" : "Total shielding for application and continuation", + "readOnly" : true + }, + "offsetAgainstDistribution" : { + "type" : "number", + "description" : "Offset against distribution", + "readOnly" : true + }, + "offsetAgainstRealizationGain" : { + "type" : "number", + "description" : "Offset against realization gain", + "readOnly" : true + }, + "continuationOfUnusedShieldingDeductionToNextYear" : { + "type" : "number", + "description" : "Continuation of unused shielding deduction to next year", + "readOnly" : true + } + }, + "description" : "Calculation of shielding deduction", + "readOnly" : true + }, + "ParticipantReportTaxBasisSpecification" : { + "type" : "object", + "properties" : { + "shareOfTaxableEquityPreviousYear" : { + "type" : "number", + "description" : "Share of taxable equity previous year", + "readOnly" : true + }, + "shareOfTaxableEquityAtBeginningOfYear" : { + "type" : "number", + "description" : "Share of taxable equity at beginning of year", + "readOnly" : true + }, + "deposit" : { + "type" : "number", + "description" : "Deposit", + "readOnly" : true + }, + "otherCorrection" : { + "type" : "number", + "description" : "Other correction", + "readOnly" : true + }, + "acquisitionOfShare" : { + "type" : "number", + "description" : "Acquisition of share", + "readOnly" : true + }, + "realizationOfShare" : { + "type" : "number", + "description" : "Realization of share", + "readOnly" : true + }, + "capitalReimbursement" : { + "type" : "number", + "description" : "Capital reimbursement", + "readOnly" : true + }, + "subTotal" : { + "type" : "number", + "description" : "Sub total", + "readOnly" : true + }, + "improperDeposit" : { + "type" : "number", + "description" : "Informal deposit", + "readOnly" : true + }, + "taxBenefitFromLoss" : { + "type" : "number", + "description" : "Tax benefit from loss", + "readOnly" : true + }, + "taxEquityYearEnd" : { + "type" : "number", + "description" : "Tax equity year end", + "readOnly" : true + } + }, + "description" : "Specification of taxable basis", + "readOnly" : true + }, + "ResponseWrapperParticipantReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ParticipantReport" + } + } + }, + "ParticipantReportPost" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "Year", + "format" : "int32" + }, + "groupId" : { + "type" : "integer", + "description" : "Group id", + "format" : "int32" + }, + "dataSubType" : { + "type" : "string", + "description" : "Sub group id", + "enum" : [ "NONE", "NOT_LICENSED", "FREIGHT_TRANSPORT", "TAXI", "ACQUISITION_AND_REALIZATION", "PRODUCT_TYPE_INVENTORY", "CASH_REGISTER_SYSTEM", "PRIVATE_WITHDRAWAL_OF_GOODS", "ENTERTAINMENT", "MULTI_UNIT_BUILDING_UNIT", "RENTAL_WITHDRAWAL_SALE_COMPANY", "RENTAL_WITHDRAWAL_SALE_SHAREHOLDER", "RESOLUTION", "WORK_PACKAGE", "COLLABORATIVE_BUSINESS", "OTHER_PUBLIC_SUPPORT", "BUSINESS_ACTIVITY", "RELATED_COMPANY", "FUNCTION_AND_RISK", "TRANSACTION", "OUTSTANDING", "INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM", "COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP", "INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR", "INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM", "INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION", "ENTERPRISE_DEBT_ALLOCATION" ] + }, + "dataSubTypeGroupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Group id", + "format" : "int32" + }, + "postType" : { + "type" : "string", + "description" : "Post type", + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "postValue" : { + "type" : "string", + "description" : "Post value" + } + } + }, + "ListResponseSalaryAndPensionAccountInfo" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/SalaryAndPensionAccountInfo" + } + } + } + }, + "SalaryAndPensionAccountInfo" : { + "type" : "object", + "properties" : { + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "outgoingBalance" : { + "type" : "number", + "readOnly" : true + }, + "additions" : { + "type" : "number", + "readOnly" : true + }, + "deductions" : { + "type" : "number", + "readOnly" : true + }, + "totalNotifiableBenefits" : { + "type" : "number", + "readOnly" : true + }, + "benefitSubjectToEmployerTax" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperSalaryAndPensionManualAccount" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryAndPensionManualAccount" + } + } + }, + "SalaryAndPensionManualAccount" : { + "type" : "object", + "properties" : { + "description" : { + "type" : "string", + "readOnly" : true + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "outgoingBalance" : { + "type" : "number", + "readOnly" : true + }, + "additions" : { + "type" : "number", + "readOnly" : true + }, + "deductions" : { + "type" : "number", + "readOnly" : true + }, + "totalNotifiableBenefits" : { + "type" : "number", + "readOnly" : true + }, + "benefitSubjectToEmployerTax" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperSalaryAndPensionSums" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SalaryAndPensionSums" + } + } + }, + "SalaryAndPensionSums" : { + "type" : "object", + "properties" : { + "outgoingBalance" : { + "type" : "number", + "readOnly" : true + }, + "additions" : { + "type" : "number", + "readOnly" : true + }, + "deductions" : { + "type" : "number", + "readOnly" : true + }, + "totalNotifiableBenefits" : { + "type" : "number", + "readOnly" : true + }, + "benefitSubjectToEmployerTax" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperTimberAccountOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TimberAccountOverview" + } + } + }, + "GenericDataRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "rateType" : { + "type" : "string", + "readOnly" : true + }, + "rate" : { + "type" : "number", + "readOnly" : true + }, + "ratePreviousYear" : { + "type" : "number" + } + }, + "readOnly" : true + }, + "ListResponseGenericDataRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/GenericDataRate" + } + } + } + }, + "IncomeStatement" : { + "type" : "object", + "properties" : { + "businessIncome" : { + "type" : "number", + "readOnly" : true + }, + "taxableBusinessIncome" : { + "type" : "number", + "readOnly" : true + }, + "totalAddition" : { + "type" : "number", + "readOnly" : true + }, + "totalDeduction" : { + "type" : "number", + "readOnly" : true + }, + "changes" : { + "type" : "number", + "readOnly" : true + }, + "receivedGroupContribution" : { + "type" : "number", + "readOnly" : true + }, + "payedGroupContribution" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperIncomeStatement" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/IncomeStatement" + } + } + }, + "InventoryUnitRateCompanySpecific" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "Year", + "format" : "int32", + "readOnly" : true + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "rate" : { + "type" : "number", + "description" : "Rate" + }, + "standardRate" : { + "type" : "number", + "description" : "Standard rate from Skatteetaten's takseringsregler", + "readOnly" : true + }, + "productUnit" : { + "$ref" : "#/components/schemas/ProductUnit" + } + }, + "description" : "unit rate" + }, + "ResponseWrapperInventoryUnitRateCompanySpecific" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InventoryUnitRateCompanySpecific" + } + } + }, + "InventoryUnitRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "accountNumber" : { + "type" : "integer", + "description" : "account number", + "format" : "int32", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "description" : "year", + "format" : "int32", + "readOnly" : true + }, + "rate" : { + "type" : "number", + "description" : "rate", + "readOnly" : true + }, + "productUnit" : { + "$ref" : "#/components/schemas/ProductUnitMaster" + } + }, + "readOnly" : true + }, + "ListResponseInventoryUnitRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InventoryUnitRate" + } + } + } + }, + "Grouping" : { + "type" : "object", + "properties" : { + "grouping" : { + "type" : "string", + "description" : "grouping", + "readOnly" : true + }, + "businessActivityType" : { + "type" : "string", + "description" : "business activity type", + "readOnly" : true, + "enum" : [ "OTHER_COMMERCIAL_ACTIVITIES", "OTHER_COMMERCIAL_ACTIVITIES_2", "OTHER_COMMERCIAL_ACTIVITIES_3", "OTHER_COMMERCIAL_ACTIVITIES_4", "AGRICULTURE_HORTICULTURE_FUR_FARMING", "FISHING_AND_HUNTING_AT_SEA", "REINDEER_HUSBANDRY", "FAMILY_DAY_CARE_CENTRE_IN_OWN_HOME", "SLATE_QUARRYING", "FORESTRY", "NOT_INDUSTRY" ] + } + }, + "description" : "groupings", + "readOnly" : true + }, + "InventoryGrouping" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "year", + "format" : "int32" + }, + "path" : { + "type" : "string", + "description" : "path" + }, + "description" : { + "type" : "string", + "readOnly" : true + }, + "groupings" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Grouping" + } + }, + "taxableBalanceIn" : { + "type" : "number", + "description" : "Taxable balance in" + }, + "taxableBalanceOut" : { + "type" : "number", + "description" : "Taxable balance out" + } + } + }, + "ListResponseInventoryGrouping" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/InventoryGrouping" + } + } + } + }, + "AccountInventoryBalance" : { + "type" : "object", + "properties" : { + "year" : { + "minimum" : 0, + "type" : "integer", + "description" : "Year", + "format" : "int32" + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Group id", + "format" : "int32" + }, + "subGroupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "Sub group id", + "format" : "int32" + }, + "account" : { + "$ref" : "#/components/schemas/Account" + }, + "department" : { + "$ref" : "#/components/schemas/Department" + }, + "balanceInQuantity" : { + "type" : "number", + "description" : "incoming quantity balance" + }, + "balanceIn" : { + "type" : "number", + "description" : "incoming balance" + }, + "balanceChangeQuantity" : { + "type" : "number", + "description" : "quantity balance change", + "readOnly" : true + }, + "unitRate" : { + "$ref" : "#/components/schemas/InventoryUnitRateCompanySpecific" + }, + "balanceOutQuantity" : { + "type" : "number", + "description" : "outgoing quantity balance" + }, + "bookedBalanceOutQuantity" : { + "type" : "number", + "description" : "booked outgoing quantity balance" + }, + "balanceOut" : { + "type" : "number", + "description" : "outgoing balance" + }, + "bookedBalanceOut" : { + "type" : "number", + "description" : "booked outgoing balance" + }, + "balanceChange" : { + "type" : "number", + "description" : "balance change", + "readOnly" : true + }, + "modifiedUnitRate" : { + "type" : "number", + "description" : "modified unit rate" + }, + "modifiedBalanceOutQuantity" : { + "type" : "number", + "description" : "modified balance out quantity" + }, + "modifiedBalanceOut" : { + "type" : "number", + "description" : "modified balance out" + } + }, + "readOnly" : true + }, + "ListResponseAccountInventoryBalance" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/AccountInventoryBalance" + } + } + } + }, + "ResponseWrapperInventoryGrouping" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/InventoryGrouping" + } + } + }, + "ResponseWrapperAccountInventoryBalance" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/AccountInventoryBalance" + } + } + }, + "ListResponseMapping" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Mapping" + } + } + } + }, + "Mapping" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "post" : { + "type" : "string", + "readOnly" : true + }, + "subPost" : { + "type" : "string", + "readOnly" : true + }, + "groupNumber" : { + "type" : "string", + "readOnly" : true + }, + "negate" : { + "type" : "boolean", + "readOnly" : true + }, + "excludeFromTaxReturn" : { + "type" : "boolean", + "readOnly" : true + }, + "groupingEnk" : { + "type" : "string", + "readOnly" : true + }, + "groupingAs" : { + "type" : "string", + "readOnly" : true + }, + "groupingAns" : { + "type" : "string", + "readOnly" : true + }, + "groupingSa" : { + "type" : "string", + "readOnly" : true + }, + "groupingAgricultureEnk" : { + "type" : "string", + "readOnly" : true + }, + "groupingForestryEnk" : { + "type" : "string", + "readOnly" : true + }, + "groupingAgricultureAs" : { + "type" : "string", + "readOnly" : true + }, + "groupingForestryAs" : { + "type" : "string", + "readOnly" : true + }, + "groupingAgricultureAns" : { + "type" : "string", + "readOnly" : true + }, + "groupingForestryAns" : { + "type" : "string", + "readOnly" : true + }, + "negatePreviousYear" : { + "type" : "boolean" + }, + "excludeFromTaxReturnPreviousYear" : { + "type" : "boolean" + }, + "groupingEnkPreviousYear" : { + "type" : "string" + }, + "groupingAsPreviousYear" : { + "type" : "string" + }, + "groupingAnsPreviousYear" : { + "type" : "string" + }, + "groupingSaPreviousYear" : { + "type" : "string" + }, + "groupingAgricultureEnkPreviousYear" : { + "type" : "string", + "readOnly" : true + }, + "groupingForestryEnkPreviousYear" : { + "type" : "string", + "readOnly" : true + }, + "groupingAgricultureAsPreviousYear" : { + "type" : "string", + "readOnly" : true + }, + "groupingForestryAsPreviousYear" : { + "type" : "string", + "readOnly" : true + }, + "groupingAgricultureAnsPreviousYear" : { + "type" : "string", + "readOnly" : true + }, + "groupingForestryAnsPreviousYear" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseYearEndReportMunicipality" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/YearEndReportMunicipality" + } + } + } + }, + "YearEndReportMunicipality" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "number" : { + "type" : "string", + "readOnly" : true + }, + "displayName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "NoteEntriesOverview" : { + "type" : "object", + "properties" : { + "entries" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/NoteEntry" + } + }, + "reportNotes" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndReportNote" + } + }, + "displayOrder" : { + "type" : "array", + "items" : { + "type" : "integer", + "format" : "int64" + } + } + } + }, + "NoteEntry" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "grouping" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string" + }, + "number" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "updatedBy" : { + "maxLength" : 255, + "minLength" : 0, + "type" : "string" + }, + "updatedOn" : { + "type" : "string", + "description" : "The date time the note was last updated" + } + } + }, + "ResponseWrapperNoteEntriesOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/NoteEntriesOverview" + } + } + }, + "YearEndReportNote" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string" + }, + "isMandatory" : { + "type" : "boolean" + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "isMandatoryPreviousYear" : { + "type" : "boolean" + }, + "groupingPreviousYear" : { + "type" : "string" + } + } + }, + "ResponseWrapperNoteEntry" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/NoteEntry" + } + } + }, + "CreateTemplateNoteRequest" : { + "type" : "object", + "properties" : { + "templateKey" : { + "maxLength" : 100, + "minLength" : 0, + "type" : "string", + "description" : "The template key identifying which template to use" + }, + "locale" : { + "maxLength" : 10, + "minLength" : 0, + "type" : "string", + "description" : "Locale for the template content" + } + } + }, + "NotePost" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "noteEntryId" : { + "type" : "integer", + "description" : "Note entry ID", + "format" : "int64", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "postValue" : { + "type" : "string" + }, + "postMediumTextValue" : { + "type" : "string" + }, + "postName" : { + "type" : "string", + "description" : "Manual post name, not stored in database" + } + } + }, + "ResponseWrapperListNotePost" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/NotePost" + } + } + } + }, + "ResponseWrapperListNoteEntry" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/NoteEntry" + } + } + } + }, + "ResponseWrapperNotePost" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/NotePost" + } + } + }, + "ListResponseNotePost" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/NotePost" + } + } + } + }, + "ResponseWrapperListResponseNotePost" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ListResponseNotePost" + } + } + }, + "ResponseWrapperYearEndReportNote" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndReportNote" + } + } + }, + "ListResponseYearEndReportNote" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/YearEndReportNote" + } + } + } + }, + "ResponseWrapperListYearEndAnnualAccountsCode" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndAnnualAccountsCode" + } + } + } + }, + "ExtraordinaryIncomeAndCost" : { + "type" : "object", + "properties" : { + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "notePostType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "noteGroupType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EXTRAORDINARY_INCOME_GROUP", "EXTRAORDINARY_COST_GROUP", "GROUP_GROUP", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_GROUP" ] + }, + "noteSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "description" : { + "type" : "number", + "readOnly" : true + }, + "amount" : { + "type" : "number", + "readOnly" : true + } + } + }, + "FinacialInstrumentAsset" : { + "type" : "object", + "properties" : { + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "notePostType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "noteGroupType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EXTRAORDINARY_INCOME_GROUP", "EXTRAORDINARY_COST_GROUP", "GROUP_GROUP", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_GROUP" ] + }, + "noteSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "asset" : { + "type" : "number", + "readOnly" : true + }, + "realValue" : { + "type" : "number", + "readOnly" : true + }, + "valueAdjustment" : { + "type" : "number", + "readOnly" : true + } + } + }, + "GroupInvestment" : { + "type" : "object", + "properties" : { + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "notePostType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "noteGroupType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EXTRAORDINARY_INCOME_GROUP", "EXTRAORDINARY_COST_GROUP", "GROUP_GROUP", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_GROUP" ] + }, + "noteSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "investment" : { + "type" : "number", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "revenueRecognizedAsIncome" : { + "type" : "number", + "readOnly" : true + }, + "otherChanges" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + } + } + }, + "NoteContainer" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "noteNumber" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndReportNoteData" + } + }, + "accountingPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndReportAccountingNoteData" + } + }, + "closingSumSalary" : { + "type" : "number", + "readOnly" : true + }, + "openingSumSalary" : { + "type" : "number", + "readOnly" : true + }, + "extraordinaryIncomePosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ExtraordinaryIncomeAndCost" + } + }, + "extraordinaryCostPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ExtraordinaryIncomeAndCost" + } + }, + "sumExtraordinaryIncome" : { + "type" : "number", + "readOnly" : true + }, + "sumExtraordinaryCost" : { + "type" : "number", + "readOnly" : true + }, + "acquisitionCostTangibleFixedAssets" : { + "type" : "number", + "readOnly" : true + }, + "acquisitionCostIntangibleAssets" : { + "type" : "number", + "readOnly" : true + }, + "capitalisedValueTangibleFixedAssets" : { + "type" : "number", + "readOnly" : true + }, + "capitalisedValueIntangibleAssets" : { + "type" : "number", + "readOnly" : true + }, + "investmentsPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/GroupInvestment" + } + }, + "assetPosts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/FinacialInstrumentAsset" + } + }, + "sumRealValue" : { + "type" : "number", + "readOnly" : true + }, + "sumValueAdjustment" : { + "type" : "number", + "readOnly" : true + }, + "noteTextLibrary" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/NoteTextLibrary" + } + } + } + }, + "NoteOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "noteContainers" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/NoteContainer" + } + } + } + }, + "NoteTextLibrary" : { + "type" : "object", + "properties" : { + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "notePostType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "notePostName" : { + "type" : "string", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/YearEndReportNoteData" + } + }, + "accountingOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "accountingClosingBalance" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperNoteOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/NoteOverview" + } + } + }, + "YearEndReportAccountingNoteData" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "noteGroupType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "EXTRAORDINARY_INCOME_GROUP", "EXTRAORDINARY_COST_GROUP", "GROUP_GROUP", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_GROUP" ] + }, + "noteSubTypeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "postValue" : { + "type" : "number", + "readOnly" : true + }, + "postMediumTextValue" : { + "type" : "number", + "readOnly" : true + } + } + }, + "YearEndReportNoteData" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "note" : { + "$ref" : "#/components/schemas/YearEndReportNote" + }, + "noteGroupType" : { + "type" : "string", + "enum" : [ "EXTRAORDINARY_INCOME_GROUP", "EXTRAORDINARY_COST_GROUP", "GROUP_GROUP", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_GROUP" ] + }, + "noteSubTypeGroupId" : { + "type" : "integer", + "format" : "int32" + }, + "postType" : { + "type" : "string", + "enum" : [ "ID_FOR_NOTE", "IS_CHECKED", "UPDATED_BY", "UPDATED_DATE", "ACCOUNTS", "USE_ACCOUNTING_VALUES", "ACCOUNTING_PRINCIPLES_FREE_TEXT", "ACCOUNTING_PRINCIPLES_USE_DEFAULT_TEXT", "STILL_IN_BUSINESS", "STILL_IN_BUSINESS_INFO", "NUMBER_OF_MAN_YEARS", "OPENING_BALANCE_SALARY", "CLOSING_BALANCE_SALARY", "OPENING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "CLOSING_BALANCE_NATIONAL_INSURANCE_CONTRIBUTIONS", "OPENING_BALANCE_PENSION_COST", "CLOSING_BALANCE_PENSION_COST", "OPENING_BALANCE_OTHER_BENEFITS", "CLOSING_BALANCE_OTHER_BENEFITS", "ABOUT_MAN_YEARS_AND_SALARY", "USE_ACCOUNTING_VALUES_SPECIFICATION_OF_RESULT_ACCOUNTING", "EXTRAORDINARY_INCOME_AND_COST", "EXTRAORDINARY_INCOME_AND_COST_DESCRIPTION", "EXTRAORDINARY_INCOME_AND_COST_AMOUNT", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_INCOME", "EXTRAORDINARY_INCOME_AND_COST_ENTRY_EXPENSE", "EXTRAORDINARY_INCOME_AND_COST_ADDITIONAL_INFORMATION", "FIXED_ASSETS_OPENING_ACQUISITION_COST_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_OPENING_ACQUISITION_COST_INTANGIBLE_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_INFLOW_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DISPOSAL_IN_THE_YEAR_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_ACQUISITION_COST", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_TOTAL_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_CLOSING_CAPITALISED_VALUE", "FIXED_ASSETS_DEPRECIATIONS_TANGIBLE_FIXED_ASSETS", "FIXED_ASSETS_DEPRECIATIONS_INTANGIBLE_ASSETS", "FIXED_ASSETS_ECONOMIC_LIFE", "FIXED_ASSETS_DEPRECIATION_SCHEDULE_INTANGIBLE_ASSETS", "FIXED_ASSETS_ACQUISITION_COST", "FIXED_ASSETS_GOODWILL", "FIXED_ASSETS_DEPRECIATION_SCHEDULE", "FIXED_ASSETS_ADDITIONAL_INFORMATION", "FIXED_ASSETS_USE_ACCOUNTING_VALUES", "GROUP", "GROUP_INVESTMENTS", "GROUP_OPENING_BALANCE", "GROUP_REVENUE_RECOGNIZED_AS_INCOME", "GROUP_OTHER_CHANGES", "GROUP_CLOSING_BALANCE", "GROUP_ADDED_VALUE", "GROUP_DEPRECIATION_OF_ADDED_VALUES", "GROUP_GOODWILL", "GROUP_DEPRECIATION_OF_GOODWILL", "GROUP_TOTAL_ACQUISITION_COST", "GROUP_TOTAL_CAPITALIZED_EQUITY", "GROUP_IS_SUBSIDIARY", "GROUP_NAME_OF_PARENT_COMPANY", "GROUP_BUSINESS_OFFICE_PARENT_COMPANY", "GROUP_EXCLUDED_FROM_CONSOLIDATION", "GROUP_EXCLUDED_FROM_CONSOLIDATION_JUSTIFICATION", "GROUP_TRANSACTIONS_WITH_SUBSIDIARIES", "GROUP_INTERNAL_GAIN_TRANSACTIONS", "GROUP_RECEIVABLES_AND_LIABILITIES", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_RECEIVABLES_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_LONG_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CORPORATE", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_COMPANY", "OPENING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "CLOSING_BALANCE_SHORT_TERM_TOTAL_AMOUNT_CONTROLLED_COMPANY", "OPENING_BALANCE_MORTGAGED_ASSETS", "OPENING_BALANCE_OTHER_COLLATERAL", "OPENING_BALANCE_GUANRANTEES", "GROUP_RECEIVABLES_AND_LIABILITIES_ADDITIONAL_INFO", "RECEIVABLES_FALL_DUE_LATER_THAN_ONE_YEAR", "RECEIVABLES_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ASSET", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_REAL_VALUE", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_VALUE_ADJUSTMENT", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_ADDITIONAL_INFORMATION", "ACTUAL_VALUE_FINACIAL_INSTRUMENTS_DESCRIPTION", "HOLDING_OWN_SHARES", "HOLDING_OWN_SHARES_NUMBER_OF_SHARES", "HOLDING_OWN_SHARES_NOMINAL_VALUE_OF_SHARES", "HOLDING_OWN_SHARES_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_ACQUISITIONS_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_ACQUISITIONS_REMUNERATION", "PARENT_COMPANY_SHARES_ACQUISITIONS_REMUNERATION", "OWN_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_ACQUISITIONS_PART_OF_SHARE_CAPITAL", "OWN_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "PARENT_COMPANY_SHARES_ACQUISITIONS_BACKGROUND_ACQUISITIONS", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "OWN_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_ACQUIRED", "PARENT_COMPANY_SHARES_DISPOSAL_NUMBER_OF_SHARES_DISPOSED", "OWN_SHARES_DISPOSAL_REMUNERATION", "OWN_SHARES_DISPOSAL_REMUNERATION_", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION", "PARENT_COMPANY_SHARES_DISPOSAL_REMUNERATION_", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "OWN_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL", "PARENT_COMPANY_SHARES_DISPOSAL_PART_OF_SHARE_CAPITAL_", "HOLDING_OWN_SHARES_THIS_YEARS_PAYOUT", "HOLDING_OWN_SHARES_PROVISION_FOR_THE_YEAR", "HOLDING_OWN_SHARES_PROVISIONS", "HOLDING_OWN_SHARES_ADDITIONAL_INFORMATION", "DEBT_DUE_FOR_PAYMENT", "DEBT_SECURED_BY_MORTGAGE", "DEBT_CAPITALISED_VALUE", "DEBT_TOTAL_NON_RECOGNIZED_WARRANTY_OBLIGATIONS", "DEBT_WARRANTY_OBLIGATIONS", "DEBT_ADDITIONAL_INFORMATION", "LOAN_AND_PROVISION_OF_SECURITY_IS_GRANTED", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_TOTAL_LOAN_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_PROVISION_OF_COLLATERAL_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_INTEREST_RATE_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_MAIN_TERMS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_REIMBURSED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_DEDUCTED_AMOUNT_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_BOARD_MEMBERS", "LOAN_AND_PROVISION_OF_SECURITY_WAIVED_AMOUNTS_MEMBERS_OF_OTHER_BODIES", "LOAN_AND_PROVISION_OF_SECURITY_ADDITIONAL_INFORMATION", "FREE_NOTE_FREE_TEXT", "CUSTOM_GROUPING", "NOTE_INTERNAL" ] + }, + "postValue" : { + "type" : "string" + }, + "postMediumTextValue" : { + "type" : "string" + } + } + }, + "ResponseWrapperNoteContainer" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/NoteContainer" + } + } + }, + "ParticipantAssessmentReport" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "description" : "Group ID", + "format" : "int32" + }, + "subGroupId" : { + "type" : "integer", + "description" : "Sub group ID", + "format" : "int32" + }, + "posts" : { + "type" : "array", + "description" : "Associated posts", + "items" : { + "$ref" : "#/components/schemas/GenericData" + } + }, + "companyName" : { + "type" : "string", + "description" : "Company name" + }, + "orgNumber" : { + "type" : "string", + "description" : "Organization number" + }, + "municipalityNumber" : { + "type" : "string", + "description" : "Municipality number" + }, + "countryCode" : { + "type" : "string", + "description" : "Country code" + }, + "valueBeforeAppreciationForNetAssets" : { + "type" : "number", + "description" : "Value before appreciation for net assets" + }, + "debt" : { + "type" : "number", + "description" : "Debt" + }, + "ordinaryIncome" : { + "type" : "number", + "description" : "Ordinary income" + }, + "loss" : { + "type" : "number", + "description" : "Loss" + }, + "paymentToParticipant" : { + "type" : "number", + "description" : "Payment to participant" + }, + "gainOnRealizationOfShare" : { + "type" : "number", + "description" : "Gain on realization of share" + }, + "lossOnRealizationOfShare" : { + "type" : "number", + "description" : "Loss on realization of share" + } + } + }, + "ListResponseParticipantAssessmentReport" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ParticipantAssessmentReport" + } + } + } + }, + "ResponseWrapperParticipantAssessmentReport" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ParticipantAssessmentReport" + } + } + }, + "BalanceGroup" : { + "type" : "object", + "properties" : { + "name" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "readOnly" : true + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "manuallyCorrectedOpeningBalance" : { + "type" : "number", + "readOnly" : true + }, + "manuallyCorrectedClosingBalance" : { + "type" : "number", + "readOnly" : true + }, + "manualCorrections" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ManualCorrection" + } + }, + "negate" : { + "type" : "boolean", + "description" : "The amount from the balance are not prefixed. This property indicates if the value should be negated or not.", + "readOnly" : true + } + } + }, + "ManualCorrection" : { + "type" : "object", + "properties" : { + "postId" : { + "type" : "integer", + "description" : "postTypeId", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "description" : "name", + "readOnly" : true + }, + "incomeGroupId" : { + "type" : "integer", + "description" : "incomeGroupId", + "format" : "int32", + "readOnly" : true + }, + "grouping" : { + "type" : "string", + "description" : "grouping", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "description" : "Post type", + "enum" : [ "INTEREST_ON_ENTERPRISE_DEBT", "CAPITAL_INCOME", "CAPITAL_EXPENSES", "REDUCTION_AMOUNT_FOR_RENTED_PROPERTY", "GAINS_FROM_REALISATION_AGRICULTURE_OR_FORESTRY", "NUMBER_OF_MONTHS_WITH_OPERATIONS", "RISK_FREE_INTEREST_RATE", "ENTERPRISE_DEBT_OB", "ENTERPRISE_DEBT_CB", "PROFIT_SHARE_SPOUSE", "NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR", "COORDINATION_ENK", "COORDINATION_ANS_DA", "COORDINATION_LOTT", "NEGATIVE_PERSONAL_INCOME_CARRIED_FORWARD_NEXT_YEAR", "BUSINESS_TYPE_DESCRIPTION", "INDUSTRY_TYPE", "INCOME_AMOUNT_FROM_PROFIT_AND_LOSS_ACCOUNT", "DEDUCTED_AMOUNT_FROM_PROFIT_AND_LOSS_ACCOUNT", "MILK_QUOTA", "MANUALLY_CORRECT_RISK_FREE_AMOUNT", "BALANCE_GROUP_A_OPENING_BALANCE", "BALANCE_GROUP_A_CLOSING_BALANCE", "BALANCE_GROUP_B_OPENING_BALANCE", "BALANCE_GROUP_B_CLOSING_BALANCE", "BALANCE_GROUP_C_OPENING_BALANCE", "BALANCE_GROUP_C_CLOSING_BALANCE", "BALANCE_GROUP_D_OPENING_BALANCE", "BALANCE_GROUP_D_CLOSING_BALANCE", "BALANCE_GROUP_E_OPENING_BALANCE", "BALANCE_GROUP_E_CLOSING_BALANCE", "BALANCE_GROUP_F_OPENING_BALANCE", "BALANCE_GROUP_F_CLOSING_BALANCE", "BALANCE_GROUP_G_OPENING_BALANCE", "BALANCE_GROUP_G_CLOSING_BALANCE", "BALANCE_GROUP_H_OPENING_BALANCE", "BALANCE_GROUP_H_CLOSING_BALANCE", "BALANCE_GROUP_I_OPENING_BALANCE", "BALANCE_GROUP_I_CLOSING_BALANCE", "BALANCE_GROUP_J_OPENING_BALANCE", "BALANCE_GROUP_J_CLOSING_BALANCE", "STRAIGHT_LINE_DEPRECIATION_FIXED_ASSETS_OPENING_BALANCE", "STRAIGHT_LINE_DEPRECIATION_FIXED_ASSETS_CLOSING_BALANCE", "NON_DEPRECIABLE_FIXED_ASSETS_OPENING_BALANCE", "NON_DEPRECIABLE_FIXED_ASSETS_CLOSING_BALANCE", "ACQUIRED_INTELLECTUAL_PROPERTY_OPENING_BALANCE", "ACQUIRED_INTELLECTUAL_PROPERTY_CLOSING_BALANCE", "ACTIVATED_RESEARCH_AND_DEVELOPMENT_COST_OPENING_BALANCE", "ACTIVATED_RESEARCH_AND_DEVELOPMENT_COST_CLOSING_BALANCE", "INVENTORIES_OPENING_BALANCE", "INVENTORIES_CLOSING_BALANCE", "CUSTOMER_REVEIVABLES_OPENING_BALANCE", "CUSTOMER_REVEIVABLES_CLOSING_BALANCE", "DEBTS_TO_SUPPLIERS_OPENING_BALANCE", "DEBTS_TO_SUPPLIERS_CLOSING_BALANCE", "ENTERPRISE_DEBT_OPENING_BALANCE", "ENTERPRISE_DEBT_CLOSING_BALANCE", "DISTRIBUTE_INCOME", "NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "COORDINATION_ENK_SPOUSE", "COORDINATION_ANS_DA_SPOUSE", "COORDINATION_LOTT_SPOUSE", "NEGATIVE_PERSONAL_INCOME_CARRIED_FORWARD_NEXT_YEAR_SPOUSE", "DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST" ] + }, + "postValue" : { + "type" : "string", + "description" : "Post value" + } + }, + "description" : "List of manual corrections", + "readOnly" : true + }, + "PersonalIncome" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "incomeGroupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "0 indicates an unsaved næring before the eager-allocation pass writes its INDUSTRY_TYPE post; real allocated ids are always positive (TRIP-61550).", + "format" : "int32" + }, + "businessActivityType" : { + "type" : "string", + "enum" : [ "OTHER_COMMERCIAL_ACTIVITIES", "OTHER_COMMERCIAL_ACTIVITIES_2", "OTHER_COMMERCIAL_ACTIVITIES_3", "OTHER_COMMERCIAL_ACTIVITIES_4", "AGRICULTURE_HORTICULTURE_FUR_FARMING", "FISHING_AND_HUNTING_AT_SEA", "REINDEER_HUSBANDRY", "FAMILY_DAY_CARE_CENTRE_IN_OWN_HOME", "SLATE_QUARRYING", "FORESTRY", "NOT_INDUSTRY" ] + }, + "postType" : { + "type" : "string", + "enum" : [ "INTEREST_ON_ENTERPRISE_DEBT", "CAPITAL_INCOME", "CAPITAL_EXPENSES", "REDUCTION_AMOUNT_FOR_RENTED_PROPERTY", "GAINS_FROM_REALISATION_AGRICULTURE_OR_FORESTRY", "NUMBER_OF_MONTHS_WITH_OPERATIONS", "RISK_FREE_INTEREST_RATE", "ENTERPRISE_DEBT_OB", "ENTERPRISE_DEBT_CB", "PROFIT_SHARE_SPOUSE", "NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR", "COORDINATION_ENK", "COORDINATION_ANS_DA", "COORDINATION_LOTT", "NEGATIVE_PERSONAL_INCOME_CARRIED_FORWARD_NEXT_YEAR", "BUSINESS_TYPE_DESCRIPTION", "INDUSTRY_TYPE", "INCOME_AMOUNT_FROM_PROFIT_AND_LOSS_ACCOUNT", "DEDUCTED_AMOUNT_FROM_PROFIT_AND_LOSS_ACCOUNT", "MILK_QUOTA", "MANUALLY_CORRECT_RISK_FREE_AMOUNT", "BALANCE_GROUP_A_OPENING_BALANCE", "BALANCE_GROUP_A_CLOSING_BALANCE", "BALANCE_GROUP_B_OPENING_BALANCE", "BALANCE_GROUP_B_CLOSING_BALANCE", "BALANCE_GROUP_C_OPENING_BALANCE", "BALANCE_GROUP_C_CLOSING_BALANCE", "BALANCE_GROUP_D_OPENING_BALANCE", "BALANCE_GROUP_D_CLOSING_BALANCE", "BALANCE_GROUP_E_OPENING_BALANCE", "BALANCE_GROUP_E_CLOSING_BALANCE", "BALANCE_GROUP_F_OPENING_BALANCE", "BALANCE_GROUP_F_CLOSING_BALANCE", "BALANCE_GROUP_G_OPENING_BALANCE", "BALANCE_GROUP_G_CLOSING_BALANCE", "BALANCE_GROUP_H_OPENING_BALANCE", "BALANCE_GROUP_H_CLOSING_BALANCE", "BALANCE_GROUP_I_OPENING_BALANCE", "BALANCE_GROUP_I_CLOSING_BALANCE", "BALANCE_GROUP_J_OPENING_BALANCE", "BALANCE_GROUP_J_CLOSING_BALANCE", "STRAIGHT_LINE_DEPRECIATION_FIXED_ASSETS_OPENING_BALANCE", "STRAIGHT_LINE_DEPRECIATION_FIXED_ASSETS_CLOSING_BALANCE", "NON_DEPRECIABLE_FIXED_ASSETS_OPENING_BALANCE", "NON_DEPRECIABLE_FIXED_ASSETS_CLOSING_BALANCE", "ACQUIRED_INTELLECTUAL_PROPERTY_OPENING_BALANCE", "ACQUIRED_INTELLECTUAL_PROPERTY_CLOSING_BALANCE", "ACTIVATED_RESEARCH_AND_DEVELOPMENT_COST_OPENING_BALANCE", "ACTIVATED_RESEARCH_AND_DEVELOPMENT_COST_CLOSING_BALANCE", "INVENTORIES_OPENING_BALANCE", "INVENTORIES_CLOSING_BALANCE", "CUSTOMER_REVEIVABLES_OPENING_BALANCE", "CUSTOMER_REVEIVABLES_CLOSING_BALANCE", "DEBTS_TO_SUPPLIERS_OPENING_BALANCE", "DEBTS_TO_SUPPLIERS_CLOSING_BALANCE", "ENTERPRISE_DEBT_OPENING_BALANCE", "ENTERPRISE_DEBT_CLOSING_BALANCE", "DISTRIBUTE_INCOME", "NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "COORDINATION_ENK_SPOUSE", "COORDINATION_ANS_DA_SPOUSE", "COORDINATION_LOTT_SPOUSE", "NEGATIVE_PERSONAL_INCOME_CARRIED_FORWARD_NEXT_YEAR_SPOUSE", "DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST" ] + }, + "postValue" : { + "type" : "string" + } + } + }, + "PersonalIncomeOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "incomeGroupId" : { + "minimum" : 0, + "type" : "integer", + "description" : "0 indicates an unsaved næring before the eager-allocation pass writes its INDUSTRY_TYPE post; real allocated ids are always positive (TRIP-61550).", + "format" : "int32" + }, + "businessActivityType" : { + "type" : "string", + "enum" : [ "OTHER_COMMERCIAL_ACTIVITIES", "OTHER_COMMERCIAL_ACTIVITIES_2", "OTHER_COMMERCIAL_ACTIVITIES_3", "OTHER_COMMERCIAL_ACTIVITIES_4", "AGRICULTURE_HORTICULTURE_FUR_FARMING", "FISHING_AND_HUNTING_AT_SEA", "REINDEER_HUSBANDRY", "FAMILY_DAY_CARE_CENTRE_IN_OWN_HOME", "SLATE_QUARRYING", "FORESTRY", "NOT_INDUSTRY" ] + }, + "industryId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "businessActivityTitle" : { + "type" : "string", + "readOnly" : true + }, + "businessActivityDescription" : { + "type" : "string", + "readOnly" : true + }, + "businessIncome" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeForestry" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeAgriculture" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeForestryAndAgriculture" : { + "type" : "number", + "readOnly" : true + }, + "biomassCorrectionForestry" : { + "type" : "number", + "readOnly" : true + }, + "biomassCorrectionAgriculture" : { + "type" : "number", + "readOnly" : true + }, + "correctionReindeerHusbandry" : { + "type" : "number", + "readOnly" : true + }, + "hideFromPersonalIncome" : { + "type" : "boolean", + "readOnly" : true + }, + "showForestryAndAgricultureCombo" : { + "type" : "boolean", + "readOnly" : true + }, + "spouseSharingPercentage" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeAfterSharedWithSpouse" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeAfterSharedWithSpouseForestry" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeAfterSharedWithSpouseAgriculture" : { + "type" : "number", + "readOnly" : true + }, + "businessIncomeAfterCorrections" : { + "type" : "number", + "readOnly" : true + }, + "correctedBusinessIncome" : { + "type" : "number", + "readOnly" : true + }, + "deductionsForRiskFreeReturn" : { + "type" : "number", + "readOnly" : true + }, + "riskFreeReturn" : { + "type" : "number", + "readOnly" : true + }, + "validBasisForRiskFreeReturn" : { + "type" : "boolean", + "readOnly" : true + }, + "personalIncomeForTheYear" : { + "type" : "number", + "readOnly" : true + }, + "afterSharedWithSpouse" : { + "type" : "number", + "readOnly" : true + }, + "calculatedPersonalIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "calculatedBusinessIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "calculatedBusinessIncomeSpouseForestry" : { + "type" : "number", + "readOnly" : true + }, + "calculatedBusinessIncomeSpouseAgriculture" : { + "type" : "number", + "readOnly" : true + }, + "afterCoordination" : { + "type" : "number", + "readOnly" : true + }, + "sumOpeningBalanceBeforeEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "sumClosingBalanceBeforeEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "sumOpeningBalanceAfterEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "sumClosingBalanceAfterEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "basisForRiskFreeReturnExEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "basisEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "basisForRiskFreeReturnIncEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "sumManualCorrectionsOpeningBalanceBeforeEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "sumManualCorrectionsClosingBalanceBeforeEnterpriseDebt" : { + "type" : "number", + "readOnly" : true + }, + "balanceGroups" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/BalanceGroup" + } + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PersonalIncome" + } + } + } + }, + "ResponseWrapperListPersonalIncomeOverview" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/PersonalIncomeOverview" + } + } + } + }, + "ResponseWrapperPersonalIncomeOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/PersonalIncomeOverview" + } + } + }, + "PostPrefill" : { + "type" : "object", + "properties" : { + "year" : { + "type" : "integer", + "description" : "Year where subject should be prefilled", + "format" : "int32" + }, + "subject" : { + "type" : "string", + "description" : "Subject to prefill", + "enum" : [ "REAL_ESTATE", "SHARES_AND_SECURITIES", "RESEARCH_AND_DEVELOPMENT", "TAX_ASSESSMENT" ] + }, + "nationalIdentityNumber" : { + "type" : "string", + "description" : "National identity number" + }, + "nationalIdentityNumberSpouse" : { + "type" : "string", + "description" : "National identity number spouse" + }, + "spouse" : { + "type" : "boolean" + }, + "isSpouse" : { + "type" : "boolean", + "description" : "Whether the prefill is for the spouse" + } + } + }, + "ResponseWrapperTaxAdminCalculatedMarketValue" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxAdminCalculatedMarketValue" + } + } + }, + "TaxAdminCalculatedMarketValue" : { + "type" : "object", + "properties" : { + "marketValue" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperTaxAdminCalculatedRentalValue" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxAdminCalculatedRentalValue" + } + } + }, + "TaxAdminCalculatedRentalValue" : { + "type" : "object", + "properties" : { + "rentalValue" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperTaxAdminSearchResponse" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxAdminSearchResponse" + } + } + }, + "TaxAdminPhysicalAddress" : { + "type" : "object", + "properties" : { + "sergPropertyIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "uniquePropertyIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "addressName" : { + "type" : "string", + "readOnly" : true + }, + "houseNo" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "zipCode" : { + "type" : "string", + "readOnly" : true + }, + "postalPlaceName" : { + "type" : "string", + "readOnly" : true + }, + "highlight" : { + "type" : "string", + "readOnly" : true + }, + "properties" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxAdminProperty" + } + } + }, + "readOnly" : true + }, + "TaxAdminProperty" : { + "type" : "object", + "properties" : { + "sergPropertyIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "uniquePropertyIdentifier" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "propertyCreatedDate" : { + "type" : "string", + "readOnly" : true + }, + "municipalityNo" : { + "type" : "string", + "readOnly" : true + }, + "municipalityName" : { + "type" : "string", + "readOnly" : true + }, + "cadastralUnitNo" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "propertyUnitNo" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "leaseholdNo" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "sectionNo" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "historical" : { + "type" : "boolean", + "readOnly" : true + }, + "highlight" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "TaxAdminSearchResponse" : { + "type" : "object", + "properties" : { + "resultSize" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "properties" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxAdminProperty" + } + }, + "physicalAddresses" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxAdminPhysicalAddress" + } + }, + "searchStart" : { + "type" : "string", + "readOnly" : true + }, + "searchEnd" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ReindeerHusbandry" : { + "type" : "object", + "properties" : { + "businessIncomeThisIndustry" : { + "type" : "number", + "description" : "Business income this industry", + "readOnly" : true + }, + "capitalCostsMinusCapitalRevenues" : { + "type" : "number", + "description" : "Capital costs minus capital revenues", + "readOnly" : true + }, + "amountFromProfitAndLoss" : { + "type" : "number", + "description" : "Business income this industry", + "readOnly" : true + }, + "correctedBusinessIncomeThisIndustry" : { + "type" : "number", + "description" : "Corrected business income this industry", + "readOnly" : true + }, + "correctedBusinessIncomeTwoYearsAgo" : { + "type" : "number", + "description" : "Corrected business income two years ago", + "readOnly" : true + }, + "correctedBusinessIncomeOneYearAgo" : { + "type" : "number", + "description" : "Corrected business income one year ago", + "readOnly" : true + }, + "averageCorrectedBusinessIncome" : { + "type" : "number", + "description" : "Average business income", + "readOnly" : true + }, + "difference" : { + "type" : "number", + "description" : "Difference", + "readOnly" : true + }, + "withdrawal" : { + "type" : "number", + "description" : "Withdrawal", + "readOnly" : true + }, + "deposit" : { + "type" : "number", + "description" : "Deposit", + "readOnly" : true + }, + "change" : { + "type" : "number", + "description" : "Change", + "readOnly" : true + }, + "correctedBusinessIncome" : { + "type" : "number", + "description" : "Corrected business income", + "readOnly" : true + }, + "businessIncome" : { + "type" : "number", + "description" : "Business income", + "readOnly" : true + } + } + }, + "ResponseWrapperReindeerHusbandry" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ReindeerHusbandry" + } + } + }, + "ListResponseRiskFreeInterestRate" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/RiskFreeInterestRate" + } + } + } + }, + "RiskFreeInterestRate" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyType" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "rate" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperListTangibleFixedAssetOverview" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TangibleFixedAssetOverview" + } + } + } + }, + "TangibleFixedAssetOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "incomeGroupId" : { + "minimum" : 0, + "type" : "integer", + "format" : "int32" + }, + "businessActivityType" : { + "type" : "string", + "enum" : [ "OTHER_COMMERCIAL_ACTIVITIES", "OTHER_COMMERCIAL_ACTIVITIES_2", "OTHER_COMMERCIAL_ACTIVITIES_3", "OTHER_COMMERCIAL_ACTIVITIES_4", "AGRICULTURE_HORTICULTURE_FUR_FARMING", "FISHING_AND_HUNTING_AT_SEA", "REINDEER_HUSBANDRY", "FAMILY_DAY_CARE_CENTRE_IN_OWN_HOME", "SLATE_QUARRYING", "FORESTRY", "NOT_INDUSTRY" ] + }, + "industryId" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "businessActivityDescription" : { + "type" : "string", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/TangibleFixedAsset" + } + } + } + }, + "ResponseWrapperTaxAssessment" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/TaxAssessment" + } + } + }, + "TaxAssessment" : { + "type" : "object", + "properties" : { + "assessmentPersonalIncomes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxAssessmentPersonalIncome" + } + }, + "keyFigures" : { + "$ref" : "#/components/schemas/TaxAssessmentKeyFigures" + }, + "nonPostedDetails" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxAssessmentNonPostedDetail" + } + }, + "agriculture" : { + "$ref" : "#/components/schemas/TaxAssessmentAgriculture" + }, + "taxCalculation" : { + "$ref" : "#/components/schemas/TaxAssessmentTaxCalculation" + } + } + }, + "TaxAssessmentAgriculture" : { + "type" : "object", + "properties" : { + "businessIncome" : { + "type" : "number", + "readOnly" : true + }, + "shareFromSdf" : { + "type" : "number", + "readOnly" : true + }, + "calculationBasis" : { + "type" : "number", + "readOnly" : true + }, + "calculatedAmount" : { + "type" : "number", + "readOnly" : true + }, + "maxSpecialAllowance" : { + "type" : "number", + "readOnly" : true + }, + "specialAllowanceValueBasis" : { + "type" : "number", + "readOnly" : true + }, + "unusedSpecialAllowance" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Key figures", + "readOnly" : true + }, + "TaxAssessmentBracketTax" : { + "type" : "object", + "properties" : { + "step" : { + "type" : "number", + "readOnly" : true + }, + "rate" : { + "type" : "number", + "readOnly" : true + }, + "maxAmount" : { + "type" : "number", + "readOnly" : true + }, + "basisAmountOwner" : { + "type" : "number", + "readOnly" : true + }, + "calculatedTaxOwner" : { + "type" : "number", + "readOnly" : true + }, + "residualAmountOwner" : { + "type" : "number", + "readOnly" : true + }, + "amountBeforeNextTaxStepOwner" : { + "type" : "number", + "readOnly" : true + }, + "basisAmountSpouse" : { + "type" : "number", + "readOnly" : true + }, + "calculatedTaxSpouse" : { + "type" : "number", + "readOnly" : true + }, + "residualAmountSpouse" : { + "type" : "number", + "readOnly" : true + }, + "amountBeforeNextTaxStepSpouse" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Bracket tax", + "readOnly" : true + }, + "TaxAssessmentKeyFigures" : { + "type" : "object", + "properties" : { + "personalIncome" : { + "type" : "number", + "readOnly" : true + }, + "personalIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "salaryIncome" : { + "type" : "number", + "readOnly" : true + }, + "salaryIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "pensionableIncome" : { + "type" : "number", + "readOnly" : true + }, + "pensionableIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sickPayFishingHuntingEtc" : { + "type" : "number", + "readOnly" : true + }, + "sickPayFishingHuntingEtcSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sickPayAgriculture" : { + "type" : "number", + "readOnly" : true + }, + "sickPayAgricultureSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sickPayOther" : { + "type" : "number", + "readOnly" : true + }, + "sickPayOtherSpouse" : { + "type" : "number", + "readOnly" : true + }, + "workRemuneration" : { + "type" : "number", + "readOnly" : true + }, + "workRemunerationSpouse" : { + "type" : "number", + "readOnly" : true + }, + "salaryIncomeAltinn" : { + "type" : "number", + "readOnly" : true + }, + "salaryIncomeAltinnSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sickPayFishingHuntingEtcAltinn" : { + "type" : "number", + "readOnly" : true + }, + "sickPayFishingHuntingEtcAltinnSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sickPayAgricultureAltinn" : { + "type" : "number", + "readOnly" : true + }, + "sickPayAgricultureAltinnSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sickPayOtherAltinn" : { + "type" : "number", + "readOnly" : true + }, + "sickPayOtherAltinnSpouse" : { + "type" : "number", + "readOnly" : true + }, + "workRemunerationAltinn" : { + "type" : "number", + "readOnly" : true + }, + "workRemunerationAltinnSpouse" : { + "type" : "number", + "readOnly" : true + }, + "pensionableIncomeAltinn" : { + "type" : "number", + "readOnly" : true + }, + "pensionableIncomeAltinnSpouse" : { + "type" : "number", + "readOnly" : true + }, + "basisSickPayAndBracketTax" : { + "type" : "number", + "readOnly" : true + }, + "basisSickPayAndBracketTaxSpouse" : { + "type" : "number", + "readOnly" : true + }, + "averageBasicAmount" : { + "type" : "number", + "readOnly" : true + }, + "calculatedBasicAmount" : { + "type" : "number", + "readOnly" : true + }, + "calculatedBasicAmountSpouse" : { + "type" : "number", + "readOnly" : true + }, + "nationalIdentityNumberSpouse" : { + "type" : "string", + "readOnly" : true + } + }, + "description" : "Key figures", + "readOnly" : true + }, + "TaxAssessmentNonPostedDetail" : { + "type" : "object", + "properties" : { + "step" : { + "type" : "string" + }, + "industry" : { + "type" : "string" + }, + "postedAmount" : { + "type" : "number", + "readOnly" : true + }, + "calculatedAmount" : { + "type" : "number", + "readOnly" : true + }, + "notPostedAmount" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Non posted details", + "readOnly" : true + }, + "TaxAssessmentPersonalIncome" : { + "type" : "object", + "properties" : { + "businessActivityTypeDescription" : { + "type" : "string" + }, + "correctedBusinessIncome" : { + "type" : "number", + "readOnly" : true + }, + "riskFreeReturn" : { + "type" : "number", + "readOnly" : true + }, + "deductionsForRiskFreeReturn" : { + "type" : "number", + "readOnly" : true + }, + "spouseSharingPercentage" : { + "type" : "number", + "readOnly" : true + }, + "personalIncomeForTheYear" : { + "type" : "number", + "readOnly" : true + }, + "afterSharedWithSpouse" : { + "type" : "number", + "readOnly" : true + }, + "calculatedPersonalIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "personalIncomeGroupId" : { + "type" : "number", + "readOnly" : true + }, + "negativePersonalIncomePreviousYearOwner" : { + "type" : "number", + "readOnly" : true + }, + "negativePersonalIncomePreviousYearSpouse" : { + "type" : "number", + "readOnly" : true + }, + "coordinationOtherPersonalIncomeOwner" : { + "type" : "number", + "readOnly" : true + }, + "coordinationOtherPersonalIncomeSpouse" : { + "type" : "number", + "readOnly" : true + }, + "coordinationCoordinationGeneralPartnershipOwner" : { + "type" : "number", + "readOnly" : true + }, + "coordinationCoordinationGeneralPartnershipSpouse" : { + "type" : "number", + "readOnly" : true + }, + "annualPersonalIncomeOwner" : { + "type" : "number", + "readOnly" : true + }, + "annualPersonalIncomeSpouse" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Personal income", + "readOnly" : true + }, + "TaxAssessmentTaxCalculation" : { + "type" : "object", + "properties" : { + "bracketTax" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/TaxAssessmentBracketTax" + } + }, + "sumBasisOwner" : { + "type" : "number", + "readOnly" : true + }, + "sumCalculatedTaxOwner" : { + "type" : "number", + "readOnly" : true + }, + "amountBeforeNextTaxStepOwner" : { + "type" : "number", + "readOnly" : true + }, + "sumBasisSpouse" : { + "type" : "number", + "readOnly" : true + }, + "sumCalculatedTaxSpouse" : { + "type" : "number", + "readOnly" : true + }, + "amountBeforeNextTaxStepSpouse" : { + "type" : "number", + "readOnly" : true + } + }, + "description" : "Tax calculation", + "readOnly" : true + }, + "ResponseWrapperYearEndShareholderRegister" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/YearEndShareholderRegister" + } + } + }, + "ShareholderRegisterSubmissionResult" : { + "type" : "object", + "properties" : { + "failureStep" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "64", "255" ] + }, + "failureCategory" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "4" ] + }, + "failureMainMessage" : { + "type" : "string" + }, + "receptionReceipt" : { + "$ref" : "#/components/schemas/Altinn2ReceptionReceipt" + } + } + }, + "YearEndShareholderRegister" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "year" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "sentDate" : { + "type" : "string" + }, + "status" : { + "type" : "string", + "enum" : [ "0", "1", "2", "4", "20", "21", "22", "70", "71" ] + }, + "submissionInProgress" : { + "type" : "boolean" + }, + "submissionAttemptDate" : { + "type" : "string" + }, + "submissionResult" : { + "$ref" : "#/components/schemas/ShareholderRegisterSubmissionResult" + } + } + }, + "ResponseWrapperShareholderRegisterPrefillResult" : { + "type" : "object", + "properties" : { + "value" : { + "type" : "string", + "enum" : [ "SUCCESS", "NO_DATA", "UNSUPPORTED_YEAR", "ERROR" ] + } + } + }, + "ResponseWrapperShareholder" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Shareholder" + } + } + }, + "Shareholder" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "shareholderNumber" : { + "type" : "string" + }, + "shareholderName" : { + "type" : "string" + }, + "email" : { + "type" : "string" + }, + "phoneNumber" : { + "type" : "string" + }, + "address1" : { + "type" : "string" + }, + "address2" : { + "type" : "string" + }, + "postalCode" : { + "type" : "string" + }, + "city" : { + "type" : "string" + }, + "country" : { + "$ref" : "#/components/schemas/Country" + }, + "municipality" : { + "$ref" : "#/components/schemas/Municipality" + }, + "bankAccountNumber" : { + "type" : "string" + }, + "startingYear" : { + "type" : "integer", + "format" : "int32" + }, + "pictureId" : { + "type" : "integer", + "format" : "int32" + }, + "note" : { + "type" : "string" + }, + "isActive" : { + "type" : "boolean", + "description" : "The shareholder is active.", + "readOnly" : true + }, + "numberOfSharesLastYear" : { + "type" : "number", + "readOnly" : true + }, + "numberOfSharesThisYear" : { + "type" : "number", + "readOnly" : true + }, + "ownershipLastYear" : { + "type" : "number", + "readOnly" : true + }, + "ownershipThisYear" : { + "type" : "number", + "readOnly" : true + }, + "isDeletable" : { + "type" : "boolean", + "description" : "The shareholder is active.", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperShareholderOverviewDTO" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ShareholderOverviewDTO" + } + } + }, + "ShareholderOverviewDTO" : { + "type" : "object", + "properties" : { + "shareholders" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Shareholder" + } + }, + "sumNumberOfSharesThisYear" : { + "type" : "number", + "readOnly" : true + }, + "sumNumberOfSharesLastYear" : { + "type" : "number", + "readOnly" : true + }, + "sumOwnershipThisYear" : { + "type" : "number", + "readOnly" : true + }, + "sumOwnershipLastYear" : { + "type" : "number", + "readOnly" : true + } + } + }, + "ResponseWrapperShareholderRegisterData" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + } + } + }, + "ShareholderRegisterData" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32" + }, + "shareholderRegisterDataType" : { + "type" : "string", + "enum" : [ "COMPANY_INFO", "CONTACT_INFO", "SHAREHOLDER_INFO", "EVENT_AND_TRANSACTION" ] + }, + "shareholderRegisterDataSubType" : { + "type" : "string", + "enum" : [ "NONE", "COMPANY_KEY_INFO", "COMPANY_EVENT", "SHAREHOLDER_INFO" ] + }, + "shareholderRegisterDataSubSubType" : { + "type" : "string", + "enum" : [ "NONE", "EVENT_SHAREHOLDER" ] + }, + "subTypeGroupId" : { + "type" : "integer", + "format" : "int32" + }, + "subSubTypeGroupId" : { + "type" : "integer", + "format" : "int32" + }, + "postType" : { + "type" : "string", + "enum" : [ "SHARE_CLASS", "OPENING_BALANCE_SHARE_CAPITAL", "OPENING_BALANCE_NOMINAL_VALUE_PER_SHARE", "OPENING_BALANCE_NUMBER_OF_SHARES", "OPENING_BALANCE_PAID_SHARE_CAPITAL", "CLOSING_BALANCE_PREMIUM_PAID", "EVENT_TYPE", "EVENT_DATE", "EVENT_DISTRIBUTED_TOTAL", "EVENT_SHAREHOLDER_ID", "SHAREHOLDER_NO_OF_SHARES", "DISTRIBUTE_MANUALLY", "EVENT_TIME", "FOUNDATION_PAID_UP_SHARE_CAPITAL", "FOUNDATION_PAID_UP_PREMIUM", "FOUNDATION_NO_OF_SHARES", "SHAREHOLDER_DISTRIBUTED_DIVIDEND", "EVENT_SHARE_CLASS", "ADD_SHARES_PAID_UP_SHARE_CAPITAL", "ADD_SHARES_PAID_UP_PREMIUM", "ADD_SHARES_NO_OF_SHARES", "SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_PAID_UP_PREMIUM", "NEW_ISSUE_NO_OF_SHARES", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_PAID_UP_PREMIUM", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_NO_OF_SHARES", "NEW_ISSUE_INTRAGROUP_TRANSFER_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_INTRAGROUP_TRANSFER_PAID_UP_PREMIUM", "NEW_ISSUE_INTRAGROUP_TRANSFER_NO_OF_SHARES", "NEW_ISSUE_EMPLOYEE_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_EMPLOYEE_PAID_UP_PREMIUM", "NEW_ISSUE_EMPLOYEE_NO_OF_SHARES", "FOUNDATION_INCOME_DEDUCTION_PAID_UP_SHARE_CAPITAL", "FOUNDATION_INCOME_DEDUCTION_PAID_UP_PREMIUM", "FOUNDATION_INCOME_DEDUCTION_NO_OF_SHARES", "TAX_FREE_LIMITED_LIABILITY_COMPANY_PAID_UP_SHARE_CAPITAL", "TAX_FREE_LIMITED_LIABILITY_COMPANY_PAID_UP_PREMIUM", "TAX_FREE_LIMITED_LIABILITY_COMPANY_NO_OF_SHARES", "MOVING_COMPANIES_PAID_UP_SHARE_CAPITAL", "MOVING_COMPANIES_PAID_UP_PREMIUM", "MOVING_COMPANIES_NO_OF_SHARES", "FUSION_TAXABLE_PAID_UP_SHARE_CAPITAL", "FUSION_TAXABLE_PAID_UP_PREMIUM", "FUSION_TAXABLE_NO_OF_SHARES", "FISSION_TAXABLE_PAID_UP_SHARE_CAPITAL", "FISSION_TAXABLE_PAID_UP_PREMIUM", "FISSION_TAXABLE_NO_OF_SHARES", "FUSION_TAX_FREE_PAID_UP_SHARE_CAPITAL", "FUSION_TAX_FREE_PAID_UP_PREMIUM", "FUSION_TAX_FREE_NO_OF_SHARES", "FISSION_TAX_FREE_PAID_UP_SHARE_CAPITAL", "FISSION_TAX_FREE_PAID_UP_PREMIUM", "FISSION_TAX_FREE_NO_OF_SHARES", "TAX_FREE_FOREIGN_COMPANY_PAID_UP_SHARE_CAPITAL", "TAX_FREE_FOREIGN_COMPANY_PAID_UP_PREMIUM", "TAX_FREE_FOREIGN_COMPANY_NO_OF_SHARES", "MERGED_SHARE_CLASSES_PAID_UP_SHARE_CAPITAL", "MERGED_SHARE_CLASSES_PAID_UP_PREMIUM", "MERGED_SHARE_CLASSES_NO_OF_SHARES", "FOUND_ISSUE_PAID_UP_SHARE_CAPITAL", "FOUND_ISSUE_PAID_UP_PREMIUM", "FOUND_ISSUE_NO_OF_SHARES", "ADD_SHARES_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_INTRAGROUP_TRANSFER_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_EMPLOYEE_SHAREHOLDER_NO_OF_SHARES", "FOUNDATION_INCOME_DEDUCTION_SHAREHOLDER_NO_OF_SHARES", "TAX_FREE_LIMITED_LIABILITY_COMPANY_SHAREHOLDER_NO_OF_SHARES", "MOVING_COMPANIES_SHAREHOLDER_NO_OF_SHARES", "FUSION_TAXABLE_SHAREHOLDER_NO_OF_SHARES", "FISSION_TAXABLE_SHAREHOLDER_NO_OF_SHARES", "FUSION_TAX_FREE_SHAREHOLDER_NO_OF_SHARES", "FISSION_TAX_FREE_SHAREHOLDER_NO_OF_SHARES", "TAX_FREE_FOREIGN_COMPANY_SHAREHOLDER_NO_OF_SHARES", "MERGED_SHARE_CLASSES_SHAREHOLDER_NO_OF_SHARES", "FOUND_ISSUE_SHAREHOLDER_NO_OF_SHARES", "ADD_SHARES_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_INTRAGROUP_TRANSFER_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_EMPLOYEE_SHAREHOLDER_ACQUISITION_VALUE", "FOUNDATION_INCOME_DEDUCTION_SHAREHOLDER_ACQUISITION_VALUE", "TAX_FREE_LIMITED_LIABILITY_COMPANY_SHAREHOLDER_ACQUISITION_VALUE", "MOVING_COMPANIES_SHAREHOLDER_ACQUISITION_VALUE", "FUSION_TAXABLE_SHAREHOLDER_ACQUISITION_VALUE", "FISSION_TAXABLE_SHAREHOLDER_ACQUISITION_VALUE", "FUSION_TAX_FREE_SHAREHOLDER_ACQUISITION_VALUE", "FISSION_TAX_FREE_SHAREHOLDER_ACQUISITION_VALUE", "TAX_FREE_FOREIGN_COMPANY_SHAREHOLDER_ACQUISITION_VALUE", "MERGED_SHARE_CLASSES_SHAREHOLDER_ACQUISITION_VALUE", "FOUND_ISSUE_SHAREHOLDER_ACQUISITION_VALUE", "FUSION_TAX_FREE_TRANSFERRING_COMPANY_ORG_NO", "FUSION_TAX_FREE_TRANSFERRING_COMPANY_ISIN", "FUSION_TAX_FREE_TRANSFERRING_COMPANY_SHARE_CLASS", "FUSION_TAX_FREE_NUMBER_OF_SHARES_REDEEMED", "FUSION_TAX_FREE_NOMINAL_VALUE_PER_REDEEMED_SHARE", "FUSION_TAX_FREE_ACQUIRING_COMPANY_ORG_NO", "FISSION_TAXABLE_TRANSFERRING_COMPANY_ORG_NO", "FISSION_TAXABLE_TRANSFERRING_COMPANY_ISIN", "FISSION_TAXABLE_TRANSFERRING_COMPANY_SHARE_CLASS", "FISSION_TAXABLE_NUMBER_OF_SHARES_REDEEMED", "FISSION_TAXABLE_NOMINAL_VALUE_PER_REDEEMED_SHARE", "FISSION_TAXABLE_ACQUIRING_COMPANY_ORG_NO", "TAX_FREE_FOREIGN_COMPANY_TRANSFERRING_COMPANY_ORG_NO", "TAX_FREE_FOREIGN_COMPANY_TRANSFERRING_COMPANY_ISIN", "TAX_FREE_FOREIGN_COMPANY_TRANSFERRING_COMPANY_SHARE_CLASS", "TAX_FREE_FOREIGN_COMPANY_NUMBER_OF_SHARES_REDEEMED", "TAX_FREE_FOREIGN_COMPANY_NOMINAL_VALUE_PER_REDEEMED_SHARE", "TAX_FREE_FOREIGN_COMPANY_ACQUIRING_COMPANY_ORG_NO", "REDUCE_SHARES_TRANSACTION_CODE", "REDUCE_SHARES_NO_OF_REDUCED_SHARES", "REDUCE_SHARES_NO_OF_SHARES_AFTER", "REDUCE_SHARES_NOMINAL_VALUE_PER_SHARE", "REDUCE_SHARES_TOTAL_CONSIDERATION", "REDUCE_SHARES_AVG_PAID_UP_PREMIUM_PER_REDUCED_SHARE", "REDUCE_SHARES_NOMINAL_VALUE_AFTER_MERGER", "REDUCE_SHARES_ACQUIRING_COMPANY_ORG_NO", "REDUCE_SHARES_ACQUIRING_COMPANY_ISIN", "REDUCE_SHARES_CONSIDERATION_SHARES_COUNT", "REDUCE_SHARES_NOMINAL_VALUE_PER_CONSIDERATION_SHARE", "REDUCE_SHARES_PARENT_COMPANY_ORG_NO", "REDUCE_SHARES_PARENT_COMPANY_ISIN", "REDUCE_SHARES_PARENT_COMPANY_SHARE_CLASS", "REDUCE_SHARES_PARENT_COMPANY_CONSIDERATION_SHARES", "REDUCE_SHARES_PARENT_COMPANY_NOMINAL_VALUE", "REDUCE_SHARES_REDUCTION_OF_SHARE_CAPITAL", "REDUCE_SHARES_REDUCTION_OF_PAID_UP_PREMIUM", "REDUCE_SHARES_SHAREHOLDER_NO_OF_SHARES_IN_EXIT", "REDUCE_SHARES_SHAREHOLDER_TOTAL_CONSIDERATION", "REDUCE_SHARES_SHAREHOLDER_RECIPIENT_PERSONAL_NO", "REDUCE_SHARES_SHAREHOLDER_RECIPIENT_ORG_NO", "REDUCE_SHARES_SHAREHOLDER_NO_OF_SHARES_IN_EXIT_RECLASSIFICATION", "REDUCE_SHARES_SHAREHOLDER_ACQUIRING_COMPANY_ORG_NO", "REDUCE_SHARES_SHAREHOLDER_ACQUIRING_COMPANY_ISIN", "REDUCE_SHARES_SHAREHOLDER_ACQUIRING_NOMINAL_VALUE", "CONTACT_NAME", "CONTACT_ROLE", "CONTACT_EMAIL", "CONTACT_PHONE", "SHAREHOLDER_ID", "NO_OF_SHARES_LAST_YEAR", "UPDATED_BY", "UPDATED_DATE", "SHAREHOLDER_SHARE_CLASS", "TRANSACTION_TYPE", "TRANSACTION_DATE", "TRANSACTION_TIME", "SELLER_ID", "BUYER_ID", "TRANSACTION_NUMBER_OF_SHARES", "REMUNERATION", "TRANSACTION_SHARE_CLASS" ] + }, + "postValue" : { + "type" : "string" + }, + "altinnValue" : { + "type" : "string" + } + }, + "readOnly" : true + }, + "CompanyInfo" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "shareClass" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "ORDINARY", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "PREFERENCE", "EXTRAORDINARY", "DUMMY" ] + }, + "shareClassDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "keyInfo" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/KeyInfo" + } + }, + "timestamp" : { + "type" : "string", + "readOnly" : true + }, + "sumDividend" : { + "type" : "number", + "readOnly" : true + }, + "numberOfShares" : { + "type" : "number", + "readOnly" : true + }, + "hasRegisteredFoundationInfo" : { + "type" : "boolean", + "readOnly" : true + }, + "isDeletable" : { + "type" : "boolean", + "readOnly" : true + }, + "dividendType" : { + "type" : "string", + "enum" : [ "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "15", "16", "17", "18" ] + } + } + }, + "CompanyInfoOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "sumOpeningBalanceShareCapital" : { + "type" : "number", + "readOnly" : true + }, + "sumClosingBalanceShareCapital" : { + "type" : "number", + "readOnly" : true + }, + "companyInfo" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CompanyInfo" + } + } + } + }, + "KeyInfo" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "id" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "postType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "SHARE_CLASS", "OPENING_BALANCE_SHARE_CAPITAL", "OPENING_BALANCE_NOMINAL_VALUE_PER_SHARE", "OPENING_BALANCE_NUMBER_OF_SHARES", "OPENING_BALANCE_PAID_SHARE_CAPITAL", "CLOSING_BALANCE_PREMIUM_PAID", "EVENT_TYPE", "EVENT_DATE", "EVENT_DISTRIBUTED_TOTAL", "EVENT_SHAREHOLDER_ID", "SHAREHOLDER_NO_OF_SHARES", "DISTRIBUTE_MANUALLY", "EVENT_TIME", "FOUNDATION_PAID_UP_SHARE_CAPITAL", "FOUNDATION_PAID_UP_PREMIUM", "FOUNDATION_NO_OF_SHARES", "SHAREHOLDER_DISTRIBUTED_DIVIDEND", "EVENT_SHARE_CLASS", "ADD_SHARES_PAID_UP_SHARE_CAPITAL", "ADD_SHARES_PAID_UP_PREMIUM", "ADD_SHARES_NO_OF_SHARES", "SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_PAID_UP_PREMIUM", "NEW_ISSUE_NO_OF_SHARES", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_PAID_UP_PREMIUM", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_NO_OF_SHARES", "NEW_ISSUE_INTRAGROUP_TRANSFER_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_INTRAGROUP_TRANSFER_PAID_UP_PREMIUM", "NEW_ISSUE_INTRAGROUP_TRANSFER_NO_OF_SHARES", "NEW_ISSUE_EMPLOYEE_PAID_UP_SHARE_CAPITAL", "NEW_ISSUE_EMPLOYEE_PAID_UP_PREMIUM", "NEW_ISSUE_EMPLOYEE_NO_OF_SHARES", "FOUNDATION_INCOME_DEDUCTION_PAID_UP_SHARE_CAPITAL", "FOUNDATION_INCOME_DEDUCTION_PAID_UP_PREMIUM", "FOUNDATION_INCOME_DEDUCTION_NO_OF_SHARES", "TAX_FREE_LIMITED_LIABILITY_COMPANY_PAID_UP_SHARE_CAPITAL", "TAX_FREE_LIMITED_LIABILITY_COMPANY_PAID_UP_PREMIUM", "TAX_FREE_LIMITED_LIABILITY_COMPANY_NO_OF_SHARES", "MOVING_COMPANIES_PAID_UP_SHARE_CAPITAL", "MOVING_COMPANIES_PAID_UP_PREMIUM", "MOVING_COMPANIES_NO_OF_SHARES", "FUSION_TAXABLE_PAID_UP_SHARE_CAPITAL", "FUSION_TAXABLE_PAID_UP_PREMIUM", "FUSION_TAXABLE_NO_OF_SHARES", "FISSION_TAXABLE_PAID_UP_SHARE_CAPITAL", "FISSION_TAXABLE_PAID_UP_PREMIUM", "FISSION_TAXABLE_NO_OF_SHARES", "FUSION_TAX_FREE_PAID_UP_SHARE_CAPITAL", "FUSION_TAX_FREE_PAID_UP_PREMIUM", "FUSION_TAX_FREE_NO_OF_SHARES", "FISSION_TAX_FREE_PAID_UP_SHARE_CAPITAL", "FISSION_TAX_FREE_PAID_UP_PREMIUM", "FISSION_TAX_FREE_NO_OF_SHARES", "TAX_FREE_FOREIGN_COMPANY_PAID_UP_SHARE_CAPITAL", "TAX_FREE_FOREIGN_COMPANY_PAID_UP_PREMIUM", "TAX_FREE_FOREIGN_COMPANY_NO_OF_SHARES", "MERGED_SHARE_CLASSES_PAID_UP_SHARE_CAPITAL", "MERGED_SHARE_CLASSES_PAID_UP_PREMIUM", "MERGED_SHARE_CLASSES_NO_OF_SHARES", "FOUND_ISSUE_PAID_UP_SHARE_CAPITAL", "FOUND_ISSUE_PAID_UP_PREMIUM", "FOUND_ISSUE_NO_OF_SHARES", "ADD_SHARES_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_INTRAGROUP_TRANSFER_SHAREHOLDER_NO_OF_SHARES", "NEW_ISSUE_EMPLOYEE_SHAREHOLDER_NO_OF_SHARES", "FOUNDATION_INCOME_DEDUCTION_SHAREHOLDER_NO_OF_SHARES", "TAX_FREE_LIMITED_LIABILITY_COMPANY_SHAREHOLDER_NO_OF_SHARES", "MOVING_COMPANIES_SHAREHOLDER_NO_OF_SHARES", "FUSION_TAXABLE_SHAREHOLDER_NO_OF_SHARES", "FISSION_TAXABLE_SHAREHOLDER_NO_OF_SHARES", "FUSION_TAX_FREE_SHAREHOLDER_NO_OF_SHARES", "FISSION_TAX_FREE_SHAREHOLDER_NO_OF_SHARES", "TAX_FREE_FOREIGN_COMPANY_SHAREHOLDER_NO_OF_SHARES", "MERGED_SHARE_CLASSES_SHAREHOLDER_NO_OF_SHARES", "FOUND_ISSUE_SHAREHOLDER_NO_OF_SHARES", "ADD_SHARES_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_CONVERSION_OF_RECEIVABLES_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_INTRAGROUP_TRANSFER_SHAREHOLDER_ACQUISITION_VALUE", "NEW_ISSUE_EMPLOYEE_SHAREHOLDER_ACQUISITION_VALUE", "FOUNDATION_INCOME_DEDUCTION_SHAREHOLDER_ACQUISITION_VALUE", "TAX_FREE_LIMITED_LIABILITY_COMPANY_SHAREHOLDER_ACQUISITION_VALUE", "MOVING_COMPANIES_SHAREHOLDER_ACQUISITION_VALUE", "FUSION_TAXABLE_SHAREHOLDER_ACQUISITION_VALUE", "FISSION_TAXABLE_SHAREHOLDER_ACQUISITION_VALUE", "FUSION_TAX_FREE_SHAREHOLDER_ACQUISITION_VALUE", "FISSION_TAX_FREE_SHAREHOLDER_ACQUISITION_VALUE", "TAX_FREE_FOREIGN_COMPANY_SHAREHOLDER_ACQUISITION_VALUE", "MERGED_SHARE_CLASSES_SHAREHOLDER_ACQUISITION_VALUE", "FOUND_ISSUE_SHAREHOLDER_ACQUISITION_VALUE", "FUSION_TAX_FREE_TRANSFERRING_COMPANY_ORG_NO", "FUSION_TAX_FREE_TRANSFERRING_COMPANY_ISIN", "FUSION_TAX_FREE_TRANSFERRING_COMPANY_SHARE_CLASS", "FUSION_TAX_FREE_NUMBER_OF_SHARES_REDEEMED", "FUSION_TAX_FREE_NOMINAL_VALUE_PER_REDEEMED_SHARE", "FUSION_TAX_FREE_ACQUIRING_COMPANY_ORG_NO", "FISSION_TAXABLE_TRANSFERRING_COMPANY_ORG_NO", "FISSION_TAXABLE_TRANSFERRING_COMPANY_ISIN", "FISSION_TAXABLE_TRANSFERRING_COMPANY_SHARE_CLASS", "FISSION_TAXABLE_NUMBER_OF_SHARES_REDEEMED", "FISSION_TAXABLE_NOMINAL_VALUE_PER_REDEEMED_SHARE", "FISSION_TAXABLE_ACQUIRING_COMPANY_ORG_NO", "TAX_FREE_FOREIGN_COMPANY_TRANSFERRING_COMPANY_ORG_NO", "TAX_FREE_FOREIGN_COMPANY_TRANSFERRING_COMPANY_ISIN", "TAX_FREE_FOREIGN_COMPANY_TRANSFERRING_COMPANY_SHARE_CLASS", "TAX_FREE_FOREIGN_COMPANY_NUMBER_OF_SHARES_REDEEMED", "TAX_FREE_FOREIGN_COMPANY_NOMINAL_VALUE_PER_REDEEMED_SHARE", "TAX_FREE_FOREIGN_COMPANY_ACQUIRING_COMPANY_ORG_NO", "REDUCE_SHARES_TRANSACTION_CODE", "REDUCE_SHARES_NO_OF_REDUCED_SHARES", "REDUCE_SHARES_NO_OF_SHARES_AFTER", "REDUCE_SHARES_NOMINAL_VALUE_PER_SHARE", "REDUCE_SHARES_TOTAL_CONSIDERATION", "REDUCE_SHARES_AVG_PAID_UP_PREMIUM_PER_REDUCED_SHARE", "REDUCE_SHARES_NOMINAL_VALUE_AFTER_MERGER", "REDUCE_SHARES_ACQUIRING_COMPANY_ORG_NO", "REDUCE_SHARES_ACQUIRING_COMPANY_ISIN", "REDUCE_SHARES_CONSIDERATION_SHARES_COUNT", "REDUCE_SHARES_NOMINAL_VALUE_PER_CONSIDERATION_SHARE", "REDUCE_SHARES_PARENT_COMPANY_ORG_NO", "REDUCE_SHARES_PARENT_COMPANY_ISIN", "REDUCE_SHARES_PARENT_COMPANY_SHARE_CLASS", "REDUCE_SHARES_PARENT_COMPANY_CONSIDERATION_SHARES", "REDUCE_SHARES_PARENT_COMPANY_NOMINAL_VALUE", "REDUCE_SHARES_REDUCTION_OF_SHARE_CAPITAL", "REDUCE_SHARES_REDUCTION_OF_PAID_UP_PREMIUM", "REDUCE_SHARES_SHAREHOLDER_NO_OF_SHARES_IN_EXIT", "REDUCE_SHARES_SHAREHOLDER_TOTAL_CONSIDERATION", "REDUCE_SHARES_SHAREHOLDER_RECIPIENT_PERSONAL_NO", "REDUCE_SHARES_SHAREHOLDER_RECIPIENT_ORG_NO", "REDUCE_SHARES_SHAREHOLDER_NO_OF_SHARES_IN_EXIT_RECLASSIFICATION", "REDUCE_SHARES_SHAREHOLDER_ACQUIRING_COMPANY_ORG_NO", "REDUCE_SHARES_SHAREHOLDER_ACQUIRING_COMPANY_ISIN", "REDUCE_SHARES_SHAREHOLDER_ACQUIRING_NOMINAL_VALUE", "CONTACT_NAME", "CONTACT_ROLE", "CONTACT_EMAIL", "CONTACT_PHONE", "SHAREHOLDER_ID", "NO_OF_SHARES_LAST_YEAR", "UPDATED_BY", "UPDATED_DATE", "SHAREHOLDER_SHARE_CLASS", "TRANSACTION_TYPE", "TRANSACTION_DATE", "TRANSACTION_TIME", "SELLER_ID", "BUYER_ID", "TRANSACTION_NUMBER_OF_SHARES", "REMUNERATION", "TRANSACTION_SHARE_CLASS" ] + }, + "openingBalance" : { + "type" : "number", + "readOnly" : true + }, + "closingBalance" : { + "type" : "number", + "readOnly" : true + }, + "altinnValue" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperCompanyInfoOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyInfoOverview" + } + } + }, + "ContactInfo" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "name" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "email" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "role" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "phone" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + } + } + }, + "ResponseWrapperContactInfo" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ContactInfo" + } + } + }, + "CompanyEvent" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "shareClassGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "eventGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "eventType" : { + "type" : "string", + "readOnly" : true + }, + "date" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "time" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "shareClass" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "ORDINARY", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "PREFERENCE", "EXTRAORDINARY", "DUMMY" ] + }, + "shareClassDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "distributeManually" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "distributedTotal" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "numberOfShares" : { + "type" : "number", + "readOnly" : true + }, + "distributedPerShare" : { + "type" : "number", + "readOnly" : true + }, + "shareholderInfo" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/EventShareholderInfo" + } + }, + "paidUpPremium" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "paidUpShareCapital" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "foundationNumberOfShares" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "transferringCompanyOrgNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "transferringCompanyIsin" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "transferringCompanyShareClass" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "numberOfSharesRedeemed" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "nominalValuePerRedeemedShare" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "acquiringCompanyOrgNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesTransactionCode" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesReductionOfShareCapital" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesReductionOfPaidUpPremium" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesNoOfReducedShares" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesNoOfSharesAfter" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesNominalValuePerShare" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesTotalConsideration" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesAvgPaidUpPremium" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesNominalValueAfterMerger" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesAcquiringCompanyOrgNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesAcquiringCompanyIsin" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesConsiderationSharesCount" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesNominalValuePerConsiderationShare" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesParentCompanyOrgNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesParentCompanyIsin" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesParentCompanyShareClass" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesParentCompanyConsiderationShares" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesParentCompanyNominalValue" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + } + } + }, + "EventShareholderInfo" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "eventShareholderGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "shareholder" : { + "$ref" : "#/components/schemas/Shareholder" + }, + "numberOfShares" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "calculatedNumberOfShares" : { + "type" : "number", + "readOnly" : true + }, + "distributedDividend" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "calculatedDistributedDividend" : { + "type" : "number", + "readOnly" : true + }, + "acquisitionValue" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesRecipientPersonalNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesRecipientOrgNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesAcquiringCompanyOrgNo" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesAcquiringCompanyIsin" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "reduceSharesAcquiringNominalValue" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + } + }, + "readOnly" : true + }, + "ListResponseCompanyEvent" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/CompanyEvent" + } + } + } + }, + "ListResponseShareClass" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ShareClass" + } + } + } + }, + "ShareClass" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "technicalName" : { + "type" : "string", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseShareholderInfo" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ShareholderInfo" + } + } + } + }, + "ShareholderInfo" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "id" : { + "type" : "integer", + "description" : "Id of shareholder register data to update", + "format" : "int32", + "readOnly" : true + }, + "shareholder" : { + "$ref" : "#/components/schemas/Shareholder" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "shareClass" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "ORDINARY", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "PREFERENCE", "EXTRAORDINARY", "DUMMY" ] + }, + "shareClassDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "numberOfSharesLastYear" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "numberOfSharesThisYear" : { + "type" : "number", + "readOnly" : true + }, + "ownershipLastYear" : { + "type" : "number", + "readOnly" : true + }, + "ownershipThisYear" : { + "type" : "number", + "readOnly" : true + }, + "readOnly" : { + "type" : "boolean", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ResponseWrapperSubmissionValidation" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/SubmissionValidation" + } + } + }, + "SubmissionValidation" : { + "type" : "object", + "properties" : { + "missingPreviouslySubmittedShareClasses" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string" + } + }, + "hasRemovedShareClasses" : { + "type" : "boolean", + "readOnly" : true + } + } + }, + "ResponseWrapperTransaction" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/Transaction" + } + } + }, + "Transaction" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "transactionGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "date" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "time" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "shareClass" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "ORDINARY", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "PREFERENCE", "EXTRAORDINARY", "DUMMY" ] + }, + "type" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "seller" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "buyer" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "numberOfShares" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + }, + "remuneration" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + } + } + }, + "ListResponseShareholderTransaction" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ShareholderTransaction" + } + } + } + }, + "ShareholderTransaction" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "transactionGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "foundationGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "date" : { + "type" : "string", + "readOnly" : true + }, + "time" : { + "type" : "string", + "readOnly" : true + }, + "shareClass" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "ORDINARY", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "PREFERENCE", "EXTRAORDINARY", "DUMMY" ] + }, + "shareClassDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "type" : { + "type" : "string", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "counterpart" : { + "type" : "string", + "readOnly" : true + }, + "role" : { + "type" : "string", + "readOnly" : true + }, + "numberOfShares" : { + "type" : "number", + "readOnly" : true + }, + "remuneration" : { + "type" : "number", + "readOnly" : true + }, + "numberOfSharesBefore" : { + "type" : "number", + "readOnly" : true + }, + "numberOfSharesAfter" : { + "type" : "number", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseValidationMessages" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ValidationMessages" + } + } + } + }, + "ValidationMessages" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "shareClassDisplayName" : { + "type" : "string", + "readOnly" : true + }, + "isValidOpeningBalanceShareCapital" : { + "type" : "boolean", + "readOnly" : true + }, + "isValidClosingBalanceShareCapital" : { + "type" : "boolean", + "readOnly" : true + }, + "isValidDisbributedOpeningBalanceShareCapital" : { + "type" : "boolean", + "readOnly" : true + }, + "isValidDisbributedClosingBalanceShareCapital" : { + "type" : "boolean", + "readOnly" : true + }, + "isDuplicatedTimestamp" : { + "type" : "boolean", + "readOnly" : true + }, + "isEventBeforeFoundation" : { + "type" : "boolean", + "readOnly" : true + }, + "invalidShareholderNumbers" : { + "type" : "array", + "readOnly" : true, + "items" : { + "type" : "string" + } + } + }, + "readOnly" : true + }, + "ResponseWrapperShareholderRegisterDataOverview" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ShareholderRegisterDataOverview" + } + } + }, + "ShareholderRegisterDataOverview" : { + "type" : "object", + "properties" : { + "yearEndReport" : { + "$ref" : "#/components/schemas/YearEndReport" + }, + "groupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "shareholderRegisterDataType" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "COMPANY_INFO", "CONTACT_INFO", "SHAREHOLDER_INFO", "EVENT_AND_TRANSACTION" ] + }, + "shareholderRegisterDataTypeGroupId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "posts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ShareholderRegisterData" + } + }, + "events" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/CompanyEvent" + } + }, + "transactions" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/Transaction" + } + }, + "shareClass" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "ALL", "ORDINARY", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "PREFERENCE", "EXTRAORDINARY", "DUMMY" ] + }, + "objectIdentifier" : { + "type" : "string", + "readOnly" : true + } + } + }, + "ResponseWrapperCompanyEvent" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/CompanyEvent" + } + } + }, + "ListResponseYearEndReportStepItem" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/YearEndReportStepItem" + } + } + } + }, + "YearEndReportStepItem" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "description" : "Step item id", + "format" : "int32", + "readOnly" : true + }, + "title" : { + "type" : "string", + "description" : "Title of step item", + "readOnly" : true + } + }, + "readOnly" : true + }, + "ListResponseWhatToReportToggle" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/WhatToReportToggle" + } + } + } + }, + "WhatToReportToggle" : { + "type" : "object", + "properties" : { + "postType" : { + "type" : "string", + "description" : "The generic data post type responsible for manual check", + "readOnly" : true, + "enum" : [ "REGISTRATION_NUMBER", "DESCRIPTION", "VEHICLE_TYPE", "YEAR_OF_INITIAL_REGISTRATION", "LIST_PRICE", "DATE_FROM", "DATE_TO", "LICENCE", "LICENCE_NUMBER", "IS_ELECTRONIC_VEHICLE_LOGBOOK_LOGGED", "NO_OF_KILOMETRES_TOTAL", "OPERATING_EXPENSES", "LEASING_RENT", "IS_COMPANY_VEHICLE_USED_PRIVATE", "NO_OF_KILOMETRES_PRIVATE", "DEPRECIATION_PRIVATE_USE", "REVERSED_VEHICLE_EXPENSES", "FUEL_COST", "MAINTENANCE_COST", "COST_OF_INSURANCE_AND_TAX", "CAR_DEPARTMENT", "NO_OF_LITER_FUEL", "TAXIMETER_TYPE", "INCOME_PERSONAL_TRANSPORT", "INCOME_GOODS_TRANSPORT", "DRIVING_INCOME_PAYED_IN_CASH", "DRIVING_INCOME_INVOICED_PUBLIC_AGENCIES", "TIP_PAYED_WITH_CARD_OR_INVOICE", "TIP_PAYED_IN_CASH", "NO_OF_KILOMETRES_SCHOOL_CHILDREN", "NO_OF_KILOMETRES_WITH_PASSENGER", "FLOP_TRIP_AMOUNT", "IS_CONNECTED_TO_CENTRAL", "ID_FOR_PROFIT_AND_LOSS_ACCOUNT", "DESCRIPTION_PROFIT_AND_LOSS_ACCOUNT", "MUNICIPALITY_NUMBER", "OPENING_BALANCE", "PROFIT_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "LOSS_SALES_WITHDRAWAL_OTHER_REALIZATIONS", "PROFIT_REALIZATIONS_LIVESTOCK", "VALUE_ACQUIRED_PROFIT_AND_LOSS_ACCOUNT", "VALUE_REALIZED_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION_OR_DEDUCTION_BASIS", "PERCENTAGE_PROFIT_AND_LOSS_ACCOUNT", "ANNUAL_INCOME_RECOGNITION", "ANNUAL_DEDUCTION", "CLOSING_BALANCE", "IS_REGARDING_REALIZATION_SEPARATED_PLOT_AGRICULTURE_OR_FORESTRY", "IS_REGARDING_REALIZATION_WHOLE_AGRICULTURE_OR_FORESTRY_BUSINESS", "PROFIT_AND_LOSS_DEPARTMENT", "ID_FOR_ACCOMMODATION_AND_RESTAURANT", "COVER_CHARGE_SUBJECT_TO_VAT", "COVER_CHARGE_NOT_SUBJECT_TO_VAT", "COVER_CHARGE", "DESCRIPTION_ACCOMMODATION_AND_RESTAURANT", "MUST_BE_CONFIRMED_BY_AUDITOR", "PRODUCT_TYPE", "OPENING_STOCK", "CLOSING_STOCK", "PURCHASE_OF_GOODS", "COST_OF_GOODS_SOLD", "SALES_REVENUE_AND_WITHDRAWALS", "SALES_REVENUE_IN_CASH", "CASH_REGISTER_SYSTEM_YEAR_OF_INITIAL_REGISTRATION", "CASH_REGISTER_SYSTEM_TYPE", "WITHDRAWAL_OF_PRODUCTS_VALUED_AT_TURNOVER", "PRIVATE_WITHDRAWAL_ENTERED_ON_PRIVATE_ACCOUNT", "TOTAL_WITHDRAWAL_PRODUCTS_ENTERED_AS_SALES_REVENUE", "WITHDRAWAL_COST_FOR_ENTERTAINMENT", "WITHDRAWAL_VALUE_VALUED_AT_MARKET_VALUE", "MARKUP_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "TOTAL_WITHDRAWAL_COST_FOR_ENTERTAINMENT", "OPENING_BALANCE_CREDIT_SALES", "CLOSING_BALANCE_CREDIT_SALES", "OPENING_BALANCE_WRITE_DOWN_NEW_COMPANY", "CLOSING_BALANCE_WRITE_DOWN_NEW_COMPANY", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ID", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_ADDITION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_DEDUCTION", "SALARY_AND_PENSION_EXPENSES_ACCOUNT_REPORTED_BENEFIT", "SALARY_AND_PENSION_EXPENSES_MANUAL_FILLING", "EMPLOYERS_PAYMENT_OF_SUBSIDY", "TOTAL_AMOUNT_CREDITED_TO_NATURAL_BENEFITS", "BASIS_FOR_INCREASED_EMPLOYERS_TAX", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_DESCRIPTION", "SALARY_AND_PENSION_EXPENSES_MANUAL_ACCOUNT_EXPENSED_BENEFIT", "OPENING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "CLOSING_BALANCE_RAW_MATERIAL_AND_SEMI_FINISHED_PRODUCTS", "OPENING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "CLOSING_BALANCE_PRODUCT_UNDER_MANUFACTURING", "OPENING_BALANCE_INVENTORIES_FINISHED_ITEM", "CLOSING_BALANCE_INVENTORIES_FINISHED_ITEM", "OPENING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "CLOSING_BALANCE_PURCHASED_ITEM_FOR_RESALE", "OPENING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "CLOSING_BALANCE_SELF_PRODUCED_PRODUCT_OWN_PRODUCTUION", "OPENING_BALANCE_LIVESTOCK", "CLOSING_BALANCE_LIVESTOCK", "ACCOUNT_INVENTORY_BALANCE_ACCOUNT_ID", "ACCOUNT_INVENTORY_BALANCE_DEPARTMENT_ID", "ACCOUNT_INVENTORY_BALANCE_UNIT_RATE", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT_QUANTITY", "ACCOUNT_INVENTORY_BALANCE_BALANCE_OUT", "TANGIBLE_FIXED_ASSETS_TYPE", "OPENING_BALANCE_TANGIBLE_FIXED_ASSETS", "TAX_DEPRECIATION_PERCENTAGE", "STRAIGHT_LINE_DEPRECIATION", "PROFIT_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "LOSS_TRANSFERRED_TO_PROFIT_AND_LOSS_ACCOUNT", "ACQUISITION_COST", "LIFETIME", "ACQUISITION_DATE", "REALISATION_DATE", "IS_COMMERCIAL_BUILDING_ACQUIRED_BEFORE_1984", "HISTORICAL_COST_PRICE", "WRITTEN_DOWN_VALUE_PR_01011984", "LOWER_LIMIT_DEPRECIATION", "IS_PHYSICAL_OPERATING_ASSETS_IN_BALANCE_SHEET", "FACILITY_TYPE", "DEPRECIATION_PERCENTAGE", "CASH_DEPOSITS", "CONTRIBUTIONS_IN_KIND", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_CASH", "CAPITAL_REDUCTION_DISTRIBUTED_SHARED_CAPITAL_OTHER_ASSETS", "DEBT_WAVING", "BUYING_OWN_SHARES", "SELLING_OWN_SHARES", "DEBT_CONVERSION_TO_EQUITY", "POSITIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "NEGATIVE_DIFF_BETWEEN_ALLOCATED_AND_DISTRIBUTED_DIVIDEND", "OTHER_NEGATIVE_CHANGE_IN_EQUITY", "LATE_PAYMENT", "OTHER_INTEREST_INCOME", "OTHER_INTEREST_EXPENSE", "INCOME_FROM_OTHER_INVESTMENTS_AND_DIVIDENDS", "PROFIT_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "PRIVATE_ACCOUNT", "DEDUCTIBLE_COST_OF_USING_A_PRIVATE_CAR", "OTHER_TAX_FREE_INCOME", "OTHERNON_DEDUCTIBLECOST", "TAX_FREE_PROFIT_FROM_THE_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "NON_DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAX_FREE_PART_OF_DIVIDENDS_AND_DISTRIBUTIONS", "RETURN_OF_PROFITS_TO_ISDF", "RETURN_OF_DEFICIT_TO_ISDF", "CASH_PAYMENT", "WITHDRAWAL_OF_ASSETS_AND_SERVICES", "OTHER_WITHDRAWALS_AND_DISTRIBUTIONS", "OTHER_POSTIVE_CHANGE_IN_EQUITY", "OTHER_POSITIVE_CHANGE_IN_EQUITY", "NONE_DEDUCTIBLE_COST", "POSITIVE_TAX_COST", "INTEREST_EXPENSE_FIXED_TAX", "SHARE_OF_LOSS_FROM_INVESTMENT", "REVERSAL_OF_IMPAIRMENT", "ACCOUNTING_IMPAIRMENT", "ACCOUNTING_LOSS", "ACCOUNTING_DEFICIT_NORWEGIAN_SDF", "ACCOUNTING_DEFICIT_FOREIGN_SDF", "ACCOUNTING_LOSS_NORWEGIAN_SDF", "ACCOUNTING_LOSS_FOREIGN_SDF", "RETURNED_DEBT_INTEREST", "TAXABLE_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "TAXABLE_DIVIDEND_ON_SHARES", "TAXABLE_PART_OF_DIVIDEND_AND_DISTRIBUTION", "SHARE_OF_TAXABLE_PROFIT_NORWEGIAN_SDF", "SHARE_OF_TAXABLE_PROFIT_FOREIGN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_NORWEGIAN_SDF", "TAXABLE_PROFIT_REALIZATION_OF_FOREIGN_SDF", "ADDITION_INTEREST_COST", "CORRECTION_PURPOSED_DIVIDEND", "TAXABLE_PROFIT_WITHDRAWAL_NORWEGIAN_TAX_AREA", "INCOME_SUPPLEMENT_FOR_CONVERSION_DIFFERENCE", "OTHER_INCOME_SUPPLEMENT", "RETURN_OF_INCOME_RELATED_DIVIDENDS", "PROFIT_AND_LOSS_GROUP_CONTRIBUTION", "ACCOUNTING_PROFIT_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "ACCOUNTING_PROFIT_SHARE_NORWEGIAN_SDF", "ACCOUNTING_PROFIT_SHARE_FOREIGN_SDF", "ACCOUNTING_GAIN_NORWEGIAN_SDF", "ACCOUNTING_GAIN_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_OF_FINANCIAL_INSTRUMENTS", "SHARE_OF_DEDUCTIBLE_DEFICIT_NORWEGIAN_SDF", "SHARE_OF_DEDUCTIBLE_DEFICIT_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_NORWEGIAN_SDF", "DEDUCTIBLE_LOSS_ON_REALIZATION_FOREIGN_SDF", "DEDUCTIBLE_LOSS_ON_WITHDRAWAL_NORWEGIAN_TAX_AREA", "ISSUE_AND_ESTABLISHMENT_COST", "INCOME_DEDUCTION_FROM_ACCOUNTING_CURRENCY_TO_NOK", "OTHER_INCOME_DEDUCTION", "INCOME_ACCOUNT_DEFERRED_INCOME", "RETURN_VALUE_REDUCTION_COMPANY_PORTFOLIO", "INCOME_RECOGNITION_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_ADDITION", "INTEREST_EXPENSE_IN_INCOME_STATEMENT", "INCOME_SUPPLEMENT_PRIVATE_USE_COMMERCIAL_VEHICLE", "INTEREST_INCOME_IN_INCOME_STATEMENT", "RETURN_VALUE_ADDITIONS_COMPANY_PORTFOLIO", "NOT_DEDUCTIBLE_COSTS_AND_LOSS_PETROLEUM_ABROAD", "TEMPLATE_DEDUCTION_TAXABLE_INCOME", "COST_ACCOUNTING_PARAGRAPH_10_TRANSACTIONS", "STANDARD_PRICE_DEDUCTION", "TAX_RETURN_DEDUCTIONS_FOU", "EXEMPT_INCOME_ACCORDINT_TO_PETROLEUM_TAX_LAW", "TAX_FREE_INCOME_RELATED_TO_EXTRACTION_PETROLEUM_ABROAD", "OWN_SICKNESS_BENEFITS_AS_INCOME_IN_ANNUAL_ACCOUNTS", "RETURN_ON_LIFE_INSURANCE_IN_ANNUAL_ACCOUNTS", "REVERSAL_OF_DEDUCTIONS_SCIENTIFIC_RESEARCH_AND_VOCATIONAL_TRAINING", "REVERSAL_INCREASE_VALUE_LINKED_TO_COMPANY_PORTFOLIO", "TEMPORARY_DIFFERENCES_TYPE", "OPENING_BALANCE_ACCOUNTABLE_VALUE", "CLOSING_BALANCE_ACCOUNTABLE_VALUE", "OPENING_BALANCE_TAX_VALUE", "CLOSING_BALANCE_TAX_VALUE", "OPENING_BALANCE_DIFFERENCES", "CLOSING_BALANCE_DIFFERENCES", "SHOW_PROFIT_AND_LOSS", "SHOW_ACCOMMODATION_AND_RESTAURANT", "IS_ACCOUNTABLE", "USE_ACCOUNTING_VALUES_IN_INVENTORIES", "USE_ACCOUNTING_VALUES_IN_CUSTOMER_RECEIVABLES", "SHOW_TANGIBLE_FIXED_ASSET", "SHOW_CAR", "SHOW_INVENTORIES", "SHOW_CUSTOMER_RECEIVABLES", "SHOW_CONCERN_RELATION", "OWN_BUSINESS_PROPERTIES", "OWN_ASSET_PAPER", "SHOW_SALARY_AND_PENSION_EXPENSES", "TRANSFERRED_BY", "TRANSFERRED_DATE", "IS_TAXABLE", "AUDITING_OBLIGATION", "VALIDATION_ONLY_ON_SUBMIT", "DATE_OF_DETERMINATION", "CONFIRMING_COMPANY_REPRESENTATIVE", "CONTACT_PERSON", "PARENT_COMPANY", "SMALL_ENTERPRISES", "PREPARED_BY_AUTHORIZED_ACCOUNTANT", "SERVICE_ASSISTANCE_USED", "ELECTRONIC_CASE_PROCESSING", "SUBMIT_WITHOUT_BUSINESS_SPECIFICATION", "SHOW_RESULT_AND_BALANCE_PREVIOUS_YEAR", "DATE_START", "DATE_END", "INCLUDE_PREVIOUS_YEAR_IN_RESULT", "DISTRIBUTE_INCOME_MODULE_INDUSTRY", "HIDE_TRANSFERRED_FROM_LAST_YEAR_NOTIFICATION", "RESEARCH_AND_DEVELOPMENT", "COMPANY_PARTICIPANT_ANS_DA", "CONTROLLED_TRANSACTION_AND_INBETWEEN", "LIMITATION_OF_DEDUCTION", "EXCEPTION_FOR_INTEREST_LIMITATION", "NUF_COMPANY_ID", "NUF_COMPANY_NAME", "NUF_COUNTRY_CODE", "TIMBER_ACCOUNT", "KLAGE_PAA_SKJOENNSFASTSETTING", "DEV_PILOT_TEST_ORG_NO", "HIDE_MOVE_AGRO_ACCOUNT_NUMBER_NOTIFICATION", "FOREST_FUND", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_DATE", "SUBMISSION_TO_LANDBRUKETS_DATAFLYT_BY", "SUBMISSION_TO_NIBIO_DATE", "SUBMISSION_TO_NIBIO_BY", "SHOW_ALL_POSTS_RESULT_AND_BALANCE", "REPORT_SIGNATURE_DATE", "REPORT_SIGNATURE_LOCATION", "REPORT_TOGGLE_DATE_LOCATION", "AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_USE_MULTIPLE_ACCOUNTS", "PAYS_FINANCIAL_TAX", "REPORT_SELECTED_STEP_FRONT_PAGE", "REPORT_SELECTED_STEP_CONTENT_TABLE", "REPORT_SELECTED_STEP_RESULT_AND_BALANCE", "REPORT_SELECTED_STEP_NOTES_FOR_SUBMISSION", "REPORT_SELECTED_STEP_NOTES_FOR_INTERNAL_USE", "REPORT_SELECTED_STEP_SIGNING", "YEAR_END_BRREG_DOC_ID", "YEAR_END_BRREG_DOC_FETCHER_NAME", "YEAR_END_DOCUMENTATION_ACCOMMODATION_AND_RESTAURANT", "YEAR_END_DOCUMENTATION_PROFIT_AND_LOSS_ACCOUNT", "YEAR_END_DOCUMENTATION_COMMERCIAL_VEHICLE", "YEAR_END_DOCUMENTATION_TANGIBLE_FIXED_ASSETS", "YEAR_END_DOCUMENTATION_INVENTORIES", "YEAR_END_DOCUMENTATION_ACCOUNTS_RECEIVABLE_FROM_CUSTOMERS", "YEAR_END_DOCUMENTATION_PROFIT_LOSS", "YEAR_END_DOCUMENTATION_BALANCE", "YEAR_END_DOCUMENTATION_PERSONAL_INCOME", "YEAR_END_DOCUMENTATION_PERMANENT_DIFFERENCES", "YEAR_END_DOCUMENTATION_TEMPORARY_DIFFERENCES", "YEAR_END_DOCUMENTATION_TAX_RELATED_RESULT", "YEAR_END_DOCUMENTATION_GROUP_CONTRIBUTIONS", "YEAR_END_DOCUMENTATION_EQUITY_RECONCILIATION", "YEAR_END_DOCUMENTATION_TAX_RETURN", "YEAR_END_DOCUMENTATION_DIVIDEND", "YEAR_END_DOCUMENTATION_DISPOSITIONS", "YEAR_END_DOCUMENTATION_PROPERTIES", "YEAR_END_DOCUMENTATION_SECURITIES", "YEAR_END_DOCUMENTATION_TAX_CALCULATION", "YEAR_END_DOCUMENTATION_AUDIT_REPORT", "YEAR_END_DOCUMENTATION_ANNUAL_REPORT", "YEAR_END_DOCUMENTATION_CASH_FLOW_STATEMENT", "YEAR_END_DOCUMENTATION_ANNEXES_TO_THE_ANNUAL_ACCOUNTS", "YEAR_END_DOCUMENTATION_SALARY_AND_PENSION_EXPENSES", "YEAR_END_DOCUMENTATION_COOPERATIVE_ENTERPRISE", "YEAR_END_DOCUMENTATION_OTHER_CIRCUMSTANCES", "YEAR_END_DOCUMENTATION_TIMBER_ACCOUNT", "YEAR_END_DOCUMENTATION_PARTICIPANT_ASSESSMENT", "YEAR_END_DOCUMENTATION_RESEARCH_AND_DEVELOPMENT", "YEAR_END_DOCUMENTATION_COMPANY_TAX_RETURN", "YEAR_END_DOCUMENTATION_PARTICIPANTS_TASK", "YEAR_END_DOCUMENTATION_CONTROLLED_TRANSACTIONS", "YEAR_END_DOCUMENTATION_LIMITATION_OF_DEDUCTION", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING", "YEAR_END_DOCUMENTATION_SKJOENNSFASTSETTING_ALTINN_ID", "YEAR_END_DOCUMENTATION_FOREST_FUND", "YEAR_END_DOCUMENTATION_ATTACHMENT_CATEGORY", "YEAR_END_DOCUMENTATION_DISTRIBUTE_CAPITAL_DEBT_WITH_SPOUSE", "YEAR_END_DOCUMENTATION_REINDEER_HUSBANDRY", "YEAR_END_DOCUMENT_SELECTED", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_REPORT_GENERATED", "YEAR_END_DOCUMENTATION_AGRICULTURAL_ACCOUNT", "YEAR_END_DOCUMENTATION_ANNUALACCOUNTS_SIGNED_PDF", "RECEIVER_ORG_NR", "RECEIVER_NAME", "CONCERN_CONNECTION", "VOTING_LIMIT", "DATE_OF_ACQUISITION", "RECEIVED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_WITHOUT_TAX_AFFECTION", "RECEIVED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "SUBMITTED_GROUP_CONTRIBUTIONS_FOREIGN_COMPANY_WITH_TAX_AFFECTION", "COMPANY_IS_SUBJECT_TO_FINANCIAL_TAX", "APPLICATION_OF_LOSS_CARRY_FORWARDS", "ACCUMULATED_LOSS_FROM_PREVIOUS_YEARS", "CORRECTIONS_AND_OTHER_CAPITAL", "CORRECTIONS_AND_OTHER_DEBT", "NUMBER_OF_SHARES", "TOTAL_SHARE_CAPITAL", "IS_PART_OF_GROUP_COMPANY", "IS_LISTED_ON_THE_STOCK_EXCHANGE", "IS_REORGANIZED_ACROSS_BORDERS", "HAS_RECEIVED_OR_TRANSFERRED_ASSETS", "HEAD_OF_GROUP_NAME", "HEAD_OF_GROUP_COUNTRY_CODE", "HEAD_OF_GROUP_LAST_YEAR_NAME", "HEAD_OF_GROUP_LAST_YEAR_COUNTRY_CODE", "FOREIGN_OWNERSHIP_COMPANY_NAME", "FOREIGN_OWNERSHIP_COMPANY_COUNTRY_CODE", "OWNS_MIN_50_PERCENT_OF_FOREIGN_COMPANY", "HAS_PERMANENT_ESTABLISHMENT_ABROAD", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_NAME", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_COUNTRY_CODE", "HAS_PERFORMANCE_BETWEEN_SHAREHOLDERS_AND_OTHER", "HAS_OUTSTANDING_PAYMENT_CLAIMS_RELATED_TO_ILLEGAL_STATE_AID", "IS_SMALL_OR_MEDIUM_SIZED_BUSINESS", "HAD_FINANCIAL_DIFFICULTIES_LAST_YEAR", "IS_GROUP_COMPANY", "HAS_RECEIVED_OTHER_PUBLIC_SUPPORT", "TAXABLE_VALUE_ON_OTHER_ASSETS", "ADDITIONS_NON_DEDUCTIBLE_LATE_PAYMENT", "SALES_WITH_MEMBERS_IN_OWN_COOPERATIVE", "RETROACTIVE_PAYMENT_MEMBERS_IN_OWN_COOPERATIVE", "CARRIED_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT_PREV_YEAR", "CARRY_FORWARD_DEDUCTION_LIMIT_LATE_PAYMENT", "TAXABLE_VALUE_ON_FORESTRY", "REINSTATED_LOSS_FROM_PRELIMINARY_ASSESSMENT_IN_LATER_YEARS", "HEAD_OF_GROUP_IDENTIFIER", "HEAD_OF_GROUP_LAST_YEAR_IDENTIFIER", "COUNTRY_FOR_COUNTRY_REPORTABLE_ENTERPRISE_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_NAME", "NORWEGIAN_HEAD_OF_GROUP_IDENTIFIER", "NORWEGIAN_HEAD_OF_GROUP_COUNTRY_CODE", "SHARE_OF_LOSS_OFFSET_AGAINST_PROFIT_TWO_PRECEDING_YEARS", "AID_SCHEME_TONNAGE_TAX_REGIME", "AID_SCHEME_RULES_FOR_ELECTRIC_DELIVERY_TRUCKS", "AID_SCHEME_FOR_LONG_TERM_INVESTMENTS", "AID_SCHEME_EMPLOYMENT_RELATED_OPTIONS_START_UP", "AID_SCHEME_TAX_FUN", "AID_SCHEME_FAVOURABLE_DEPRECIATION_RULES", "AID_SCHEME_REGIONALLY_DIFFERENTIATED_INSURANCE_CONTRIBUTIONS", "AID_SCHEME_FAVOURABLE_DETERMINED_LIST_PRICES_ELECTRIC_VEHICLES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_LEASING_ELECTRIC_CARS", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_BATTERIES", "AID_SCHEME_VAT_EXEMPTION_TURNOVER_ELECTRIC_NEWS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_INDUSTRIAL_SECTOR", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DISTRICT_HEATING", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_TARGET_ZONE", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_DATA_CENTRES", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_COMMERCIAL_VESSELS", "AID_SCHEME_REDUCED_ELECTRICITY_TAX_ENERGY_PRODUCTS", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_WOOD_INDUSTRY", "AID_SCHEME_REDUCED_BASIC_TAX_MINERAL_OIL_PIGMENT_INDUSTRY", "AID_SCHEME_EXEMPTION_CO2_TAX_MINERAL_OIL", "AID_SCHEME_EXEMPTION_CO2_TAX_GAS", "AID_SCHEME_EXEMPTION_NOX_DUTY", "AID_SCHEME_EXEMPTION_TRANSFER_FEE", "AID_SCHEME_REDUCED_ROAD_TRAFFIC_INSURANCE_TAX", "OTHER_CORRECTIONS", "DEFERRED_TAX_ASSETS_IN_BALANCE", "SHARES_AND_SECURITIES_NAME", "SHARES_AND_SECURITIES_STOCK_TYPE", "SHARES_AND_SECURITIES_VAT_NUMBER", "SHARES_AND_SECURITIES_ISIN", "SHARES_AND_SECURITIES_COUNTRY_CODE", "SHARES_AND_SECURITIES_SHARE_CLASS", "SHARES_AND_SECURITIES_SHARES_BY_THE_START_OF_THE_YEAR", "SHARES_AND_SECURITIES_SHARES_BY_THE_END_OF_THE_YEAR", "SHARES_AND_SECURITIES_VALUE", "SHARES_AND_SECURITIES_TOTAL_VALUE", "SHARES_AND_SECURITIES_DIVIDEND", "SHARES_AND_SECURITIES_INTEREST_INCOME", "SHARES_AND_SECURITIES_PROFIT_REALISATION", "SHARES_AND_SECURITIES_LOSS_REALISATION", "SHARES_AND_SECURITIES_PROFIT_INTEREST", "SHARES_AND_SECURITIES_LOSS_INTEREST", "SHARES_AND_SECURITIES_EXEMPTION_METHOD", "SHARES_AND_SECURITIES_FINANCIAL_PRODUCT", "SHARES_AND_SECURITIES_RELATED_TO_COMPANY_IN_GROUP", "REAL_ESTATE_TYPE", "REAL_ESTATE_DESCRIPTION", "COMMERCIAL_PROPERTY_TYPE", "SHARE_OF_ASSET_VALUE", "INTERNAL_PROPERTY_IDENTIFIER", "ASSET_VALUE_FOR_ASSET_SHARE", "VALUE_BEFORE_VALUATION_DISCOUNT_ASSET_SHARE", "TOTAL_AREA", "CALCULATED_RENTAL_VALUE", "CALCULATED_VALUE_IS_OUTDATED", "REAL_ESTATE_SERG_NO", "REAL_ESTATE_ADDRESS", "REAL_ESTATE_ZIP_CODE", "REAL_ESTATE_POSTAL_PLACE_NAME", "REAL_ESTATE_COUNTRY_CODE", "REAL_ESTATE_MUNICIPALITY_NO", "REAL_ESTATE_MUNICIPALITY_NAME", "REAL_ESTATE_CADASTRAL_UNIT_NO", "REAL_ESTATE_PROPERTY_UNIT_NO", "REAL_ESTATE_LEASEHOLD_NO", "REAL_ESTATE_SECTION_NO", "REAL_ESTATE_OWNERSHIP_SHARE_PERCENTAGE", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE", "REAL_ESTATE_EXPENSES_YEARLY", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY", "REAL_ESTATE_DATE_DOCUMENTED", "REAL_ESTATE_MARKET_VALUE_MANUAL", "REAL_ESTATE_MARKET_VALUE_CALCULATED", "REAL_ESTATE_USE_VALUE_MARKET", "REAL_ESTATE_DWELLING_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_TYPE", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_NAME", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_ORG_NO", "REAL_ESTATE_ASSOCIATION_OR_COOPERATIVE_DWELLING_OWNERSHIP_SHARE_NO", "REAL_ESTATE_PRIMARY_SECONDARY_DWELLING_TYPE", "REAL_ESTATE_CONSTRUCTION_YEAR", "REAL_ESTATE_SELF_OWNED_OR_COOPERATIVE_DWELLING_CALCULATED_MARKET_VALUE", "REAL_ESTATE_RENTAL_AREA_TOTAL", "REAL_ESTATE_RENTAL_PERIOD_MONTHS", "REAL_ESTATE_RENTAL_INCOME_TOTAL_CALCULATED", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PREV_YEAR", "REAL_ESTATE_RENTAL_GROSS_ANNUAL_PRIOR_YEAR_TWO", "REAL_ESTATE_RENTAL_ASSET_VALUE_BASE", "REAL_ESTATE_RENTAL_GROSS_INCOME", "REAL_ESTATE_PREV_YEAR_ASSET_VALUE_MANUAL", "REAL_ESTATE_EXPENSES_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_FARM_HOUSE_YEARLY_MANUAL", "REAL_ESTATE_EXPENSES_OTHER_PROPERTY_YEARLY_MANUAL", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_ROW_ID", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_NO", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_AREA", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_CONSTRUCTION_YEAR", "REAL_ESTATE_MULTI_UNIT_BUILDING_UNIT_VALUE", "REAL_ESTATE_USE_INCREASED_CALCULATION_FACTOR", "YEARLY_DIVIDEND", "DIVIDEND_CREDIT", "DIVIDEND_SECURITY_OFFERED", "DIVIDEND_DISPOSITIONS", "PARTICIPANT_NAME", "PARTICIPANT_NUMBER", "PARTICIPANT_OWNERSHIP", "PARTICIPANT_REPORT_DISTRIBUTION_CASH_DISBURSEMENT_FROM_COMPANY", "PARTICIPANT_REPORT_DISTRIBUTION_VALUE_OF_ASSETS_OR_SERVICE_WITHDRAWN", "PARTICIPANT_REPORT_DISTRIBUTION_CAPITAL_REIMBURSEMENT", "PARTICIPANT_REPORT_SHIELDING_BASIS_OTHER_INITIAL_VALUE_CORRECTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_UNUSED_SHIELDING_FROM_PREVIOUS_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_CORRECTION_FOR_INHERITANCE_OR_GIFT_IN_INCOME_YEAR", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION_FROM_PREVIOUS_YEARS", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_TRANSFERRED_SHIELDING_DEDUCTION", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OTHER_CORRECTION", "PARTICIPANT_REPORT_ADDITIONS_TO_ORDINARY_INCOME_OTHER_CORRECTION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_SHARE_OF_TAXABLE_EQUITY_AT_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_DEPOSIT", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_OTHER_CORRECTION", "PARTICIPANT_REPORT_SHARES_REALIZED_OR_ACQUIRED", "PARTICIPANT_REPORT_PAID_IN_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_PAID_IN_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_PAID_IN_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_SHARE_OF_TAXABLE_EQUITY_AS_OF_BEGINNING_OF_YEAR", "PARTICIPANT_REPORT_RETAINED_EARNINGS_ACQUISITION_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_DISPOSAL_OF_SHARE", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_RESULT", "PARTICIPANT_REPORT_RETAINED_EARNINGS_TAX_FREE_INCOME", "PARTICIPANT_REPORT_RETAINED_EARNINGS_OTHER_CORRECTION", "PARTICIPANT_REPORT_RETAINED_EARNINGS_NON_DEDUCTIBLE_EXPENSES", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_OTHER_INDUSTRIES_INCLUDING_AGRICULTURE", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FISHING_AND_HUNTING", "PARTICIPANT_REPORT_COMPENSATION_FOR_WORK_IN_FAMILY_KINDERGARTEN_AT_PARTICIPANTS_HOME", "PARTICIPANT_REPORT_AGRICULTURAL_DEDUCTION", "PARTICIPANT_REPORT_RENTAL_INCOME_FROM_AGRICULTURAL_OPERATIONS", "PARTICIPANT_REPORT_RESIDES_IN_NORDTROMS_OR_FINNMARK", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_RESULT", "PARTICIPANT_DISPROPORTIONATE_DISTRIBUTION_SHARE_OF_WEALTH", "PARTICIPANT_REPORT_SUBJECT_TO_FINANCIAL_TAX", "PARTICIPANT_PRICE_MANAGEMENT_PRICING", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_TAX_EQUITY", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_COST_PRICE", "PARTICIPANT_PRICE_MANAGEMENT_REALIZED_SHARE_OF_PRICE_ADJUSTMENT", "PARTICIPANT_PRICE_MANAGEMENT_ACCUMULATED_ADJUSTMENTS", "PARTICIPANT_ASSESSMENT_REPORT_COMPANY_NAME", "PARTICIPANT_ASSESSMENT_REPORT_ORG_NUMBER", "PARTICIPANT_ASSESSMENT_REPORT_MUNICIPALITY_ID", "PARTICIPANT_ASSESSMENT_REPORT_COUNTRY_CODE", "PARTICIPANT_ASSESSMENT_REPORT_VALUE_BEFORE_APPRECIATION_FOR_NET_ASSETS", "PARTICIPANT_ASSESSMENT_REPORT_DEBT", "PARTICIPANT_ASSESSMENT_REPORT_ORDINARY_INCOME", "PARTICIPANT_ASSESSMENT_REPORT_LOSS", "PARTICIPANT_ASSESSMENT_REPORT_PAYMENT_TO_PARTICIPANT", "PARTICIPANT_ASSESSMENT_REPORT_GAIN_ON_REALIZATION_OF_SHARE", "PARTICIPANT_ASSESSMENT_REPORT_LOSS_ON_REALIZATION_OF_SHARE", "PARTICIPANT_REPORT_ROE_TRANSFER_TYPE", "PARTICIPANT_REPORT_ROE_NAME", "PARTICIPANT_REPORT_ROE_IDENTIFICATION", "PARTICIPANT_REPORT_ROE_TRANSACTION_TYPE", "PARTICIPANT_REPORT_ROE_TIME", "PARTICIPANT_REPORT_ROE_AMOUNT", "PARTICIPANT_REPORT_ROE_REMUNERATION", "PARTICIPANT_REPORT_ROE_COSTS", "PARTICIPANT_REPORT_ROE_ADDITION_NON_DEDUCTIBLE_LOSS", "PARTICIPANT_REPORT_ROE_UNUSED_SHIELDING_PREVIOUS_YEARS", "PARTICIPANT_REPORT_ROE_OTHER_CORRECTIONS", "PARTICIPANT_REPORT_ROE_GAIN_LOSS_REALIZATION", "PARTICIPANT_REPORT_ROE_IS_COVERED_EXEMPTION_METHOD", "PARTICIPANT_REPORT_ROE_ACQUIRED_INITIAL_VALUE", "PARTICIPANT_REPORT_ROE_PRICE", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_REALIZATION_OF_SHARE_VALUE", "PARTICIPANT_REPORT_SHIELDING_DEDUCTION_OFFSET_AGAINST_REALIZATION_GAIN", "PARTICIPANT_REPORT_SHIELDING_BASIS_REDUCTION_OF_USED_SHIELDING_DUE_TO_REALIZATION", "PARTICIPANT_REPORT_TAX_BASIS_SPECIFICATION_ACQUISITION_OF_SHARE_VALUE", "YEAR_END_ATTACHMENT_TOGGLE_ENABLED", "YEAR_END_AUTO_ATTACH_REPORTS_PDF", "YEAR_END_AUTO_ATTACH_SIGNED_PDF", "COOPERATIVE_ENTERPRISE_TAXABLE_BUSINESS_INCOME", "COOPERATIVE_ENTERPRISE_FROM_SALES_INVOLVING_MEMBER", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_SALES_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_SALES", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_SEPARATE", "COOPERATIVE_ENTERPRISE_RETROACTIVE_PAYMENT_ETC_OTHER", "COOPERATIVE_ENTERPRISE_CONDITIONS_FOR_DEDUCTION_RETROACTIVE_PAYMENT_ARE_MET", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_SEPARATE", "COOPERATIVE_ENTERPRISE_PURCHASE_INVOLVING_MEMBER_ANOTHER", "COOPERATIVE_ENTERPRISE_OTHER_PURCHASES", "COOPERATIVE_ENTERPRISE_DECIDED_PAID_BACK_PAYMENT", "COOPERATIVE_ENTERPRISE_CARRY_FORWARD_DEDUCTION_THIS_YEAR", "COOPERATIVE_ENTERPRISE_DECIDED_ALLOCATED_PROFIT", "COOPERATIVE_ENTERPRISE_COOPERATIVE_TYPE", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_INCOME_YEAR", "COOPERATIVE_ENTERPRISE_DEDUCTION_LIMIT_PREVIOUS_YEAR", "OTHER_CIRCUMSTANCES_TOTAL_DISTRIBUTED_DIVIDEND", "OTHER_CIRCUMSTANCES_INTEREST_ON_EQUITY_CERTIFICATE", "OTHER_CIRCUMSTANCES_COMPANY_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_SHAREHOLDER_HAS_GRANTED_LOAN", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_LOAN_AMOUNT_TO_COMPANY", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_INCOME", "OTHER_CIRCUMSTANCES_INTEREST_RECOGNISED_AS_EXPENSES", "OTHER_CIRCUMSTANCES_LOAN_BALANCE", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_COMPANY", "OTHER_CIRCUMSTANCES_COLLATERAL_AMOUNT_INCOME_YEAR_TO_SHAREHOLDER", "OTHER_CIRCUMSTANCES_RENTAL_WITHDRAWAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_RENTAL_SALE_GRANTED", "OTHER_CIRCUMSTANCES_ASSET_TYPE", "OTHER_CIRCUMSTANCES_PRICING_METHOD", "OTHER_CIRCUMSTANCES_RENTAL_VALUE", "OTHER_CIRCUMSTANCES_VALUE_OF_SALE_OR_WITHDRAWAL", "RESEARCH_AND_DEVELOPMENT_PROJECT_NUMBER", "RESEARCH_AND_DEVELOPMENT_PROJECT_TITLE", "RESEARCH_AND_DEVELOPMENT_PROJECT_CATEGORY", "RESEARCH_AND_DEVELOPMENT_APPLICATION_APPROVED_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_START_DATE", "RESEARCH_AND_DEVELOPMENT_PROJECT_END_DATE", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_START_YEAR", "RESEARCH_AND_DEVELOPMENT_APPROVED_RND_INCENTIVE_END_YEAR", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS", "RESEARCH_AND_DEVELOPMENT_PROJECT_STATUS_DATE", "RESEARCH_AND_DEVELOPMENT_BUSINESS_CATEGORY", "RESEARCH_AND_DEVELOPMENT_IS_COLLABORATIVE_PROJECT_WITH_OTHER_ENTERPRISES", "RESEARCH_AND_DEVELOPMENT_HAS_EXTENSIVE_DISSEMINATION_THROUGH_CONFERENCES_PUBLICATIONS_ETC", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_PREVIOUS_YEARS", "RESEARCH_AND_DEVELOPMENT_TOTAL_GROSS_TAX_DEDUCTION_FROM_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_INCLUDED_PERSONNEL_COSTS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_NUMBER_OF_OWN_HOURS_IN_INCOME_YEAR", "RESEARCH_AND_DEVELOPMENT_PUBLIC_SUPPORT_AS_REDUCED_WORKER_FEE", "RESEARCH_AND_DEVELOPMENT_WAS_IN_ECONOMIC_DIFFICULTIES_AT_APPLICATION_TIME", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTS_USED_FOR_ASSESSMENT", "RESEARCH_AND_DEVELOPMENT_UNDERLYING_DOCUMENTATION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DATE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_TYPE", "RESEARCH_AND_DEVELOPMENT_RESOLUTION_DELIMITATION", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_PAYER_NAME", "RESEARCH_AND_DEVELOPMENT_OTHER_PUBLIC_SUPPORT_AMOUNT", "RESEARCH_AND_DEVELOPMENT_TOTAL_COSTS_EXCLUDED_FROM_TAX_DEDUCTION", "RESEARCH_AND_DEVELOPMENT_PROJECT_TO_BE_SIGNED_BY_AUDITOR", "RESEARCH_AND_DEVELOPMENT_STAKE_IN_COLLABORATIVE_PROJECT", "RESEARCH_AND_DEVELOPMENT_APPLIED_FOR_OTHER_PUBLIC_SUPPORT_IN_NORWAY", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_ID", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TITLE", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_TOTAL_COST_FROM_PREVIOUS_YEAR", "RESEARCH_AND_DEVELOPMENT_WORK_PACKAGE_RECEIVED_PUBLIC_SUPPORT", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_ORG_NO", "RESEARCH_AND_DEVELOPMENT_COLLABORATIVE_BUSINESS_DESCRIPTION", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_MANUAL", "TIMBER_ACCOUNT_STANDARD_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION_TRANSFERRED_AGRIGULTURE", "TIMBER_ACCOUNT_SHARE_OF_PROFIT_TO_REGISTER", "TIMBER_ACCOUNT_INCOMING_VALUE_FROM_AQUIRED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_VALUE_OF_SHARE_OF_REALIZED_TIMBER_ACCOUNT", "TIMBER_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "TIMBER_ACCOUNT_REMAINDER_NOT_TAXED_FELLING", "TIMBER_ACCOUNT_REMAINDER_INCLUDED_THIS_YEAR", "TIMBER_ACCOUNT_MUNICIPALITY_NO", "TIMBER_ACCOUNT_PAID_PUBLIC_CONTRIBUTION_FOREST_FUND", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC", "TIMBER_ACCOUNT_SHARE_OF_OPERATING_REVENUES_HUNTING_FISHING_ETC_PERCENTAGE", "CONTROLLED_TRANSACTIONS_EXEMPT_TRANSACTION_SHARING", "CONTROLLED_TRANSACTIONS_EXEMPT_PRICE_SHARING", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_YEAR", "CONTROLLED_TRANSACTIONS_CONSOLIDATED_MARGIN_PERCENTAGE", "CONTROLLED_TRANSACTIONS_REPORTS_ONLY_PROVISION_INCOME", "CONTROLLED_TRANSACTIONS_COST_OF_IMMATERIAL_ASSETS", "CONTROLLED_TRANSACTIONS_NUMBER_OF_REGISTERED_PATENTS", "CONTROLLED_TRANSACTIONS_GROUP_HAS_BEEN_RESTRUCTURED", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_SERVICED_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_COMPANY_IS_GUARANTOR_FOR_AGREEMENTS_BY_OTHER_COMPANIES_IN_SAME_GROUP", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_RELATED_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_FUNCTION_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_RISK_TYPE", "CONTROLLED_TRANSACTIONS_FUNCTION_AND_RISK_DESCRIPTION", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_IDENTIFIER", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_NAME", "CONTROLLED_TRANSACTIONS_COMPANY_SPECIFICATION_COMPANY_COUNTRY", "CONTROLLED_TRANSACTIONS_TRANSACTION_TYPE", "CONTROLLED_TRANSACTIONS_TRANSACTION_DESCRIPTION", "CONTROLLED_TRANSACTIONS_TRANSACTION_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_ACCOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_AMOUNT", "CONTROLLED_TRANSACTIONS_OUTSTANDING_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_TRANSACTION_COUNTRY_CODE", "CONTROLLED_TRANSACTIONS_RESULT_AS_PERCENTAGE_OF_GROSS_REVENUE", "CONTROLLED_TRANSACTIONS_MAIN_BUSINESS_ACTIVITY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_IN_NORWAY", "CONTROLLED_TRANSACTIONS_NUMBER_OF_ENTITIES_WITH_CONTROLLED_TRANSACTIONS_OUTSIDE_NORWAY", "CONTROLLED_TRANSACTIONS_COMPANY_HAS_BEEN_SERVICED_BY_OTHER_COMPANY_IN_GROUP_FOR_FREE", "CONTROLLED_TRANSACTIONS_HAS_CONTROLLED_TRANSACTIONS_EXCEEDING_LIMIT", "CONTROLLED_TRANSACTIONS_IS_OBLIGED_TO_DOCUMENT", "INTEREST_LIMITATION_COMPANY_COMPLIANCE_WITH_INTEREST_LIMITATION", "INTEREST_LIMITATION_NET_INTEREST_COSTS_NORWEGIAN_GROUP_EXCEEDS_25MNOK", "INTEREST_LIMITATION_COMPANY_USES_EXCEPTION_RULE", "INTEREST_LIMITATION_GROUP_APEX_COMPANY_NAME", "INTEREST_LIMITATION_GROUP_APEX_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_GROUP_APEX_COUNTRY_CODE", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_REPORTED_ANOTHER_COMPANY", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_NORWEGIAN_PART_OF_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_EXPENSES", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_CORRECTION_OF_INTEREST_INCOME", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GUARANTEE_COMMISSIONS_ON_DEBT", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BONDS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_LOSS_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANIES_IN_SAME_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANY_IN_SAME_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_COMPANIES_IN_SAME_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_GROUP_GUARANTOR_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_OTHER_WITH_OUTSTANDING_CLAIM_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COSTS_FOR_GUARANTEE_COMMISSION", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_UPON_REALIZATION_OF_PREMIUM_DISCOUNT_BOND", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_LOSS_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_INTEREST_INCOME_FROM_RELATED_PARTY_OUTSIDE_GROUP_GAIN_FOR_HOLDER_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_COMPANY_NAME", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_INTEREST_COST", "INTEREST_LIMITATION_COMPANIES_INCLUDED_IN_NORWEGIAN_PART_OF_GROUP_NET_DEDUCTIBLE_INTEREST_COST", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_ORGANIZATION_NUMBER", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_COUNTRY_CODE", "INTEREST_LIMITATION_INTEREST_EXPENSES_TO_RELATED_PARTY_OUTSIDE_GROUP_INTEREST_TRANSACTIONS", "INTEREST_LIMITATION_CALCULATION_OF_TOTAL_COSTS_GAIN_ON_REALIZATION_OF_COMPOSITE_VOLUME_DEBT_INSTRUMENTS", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_AMORTIZED_LEASE_COST", "INTEREST_LIMITATION_CALCULATION_OF_INTEREST_DEDUCTION_LIMIT_DEDUCTION_FOR_GROUP_CONTRIBUTIONS_NOT_INCLUDED_IN_CALCULATION_BASIS", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_INCOME_YEAR", "FORWARDING_DISALLOWED_INTEREST_DEDUCTION_CARRIED_FORWARD_FROM_PREVIOUS_YEAR", "INTEREST_LIMITATION_COMPANY_CARRIED_FORWARD_INTEREST_DEDUCTIONS_FROM_PREVIOUS_YEARS", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_EXPENSES_FROM_ACCOUNT", "INTEREST_LIMITATION_OVERRIDDEN_TOTAL_INTEREST_INCOME_FROM_ACCOUNT", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_OWNER", "TAX_ASSESSMENT_NEGATIVE_PERSONAL_INCOME_PREVIOUS_YEAR_SPOUSE", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_OWNER", "TAX_ASSESSMENT_COORDINATION_OTHER_PERSONAL_INCOME_SPOUSE", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_OWNER", "TAX_ASSESSMENT_COORDINATION_COORDINATION_GENERAL_PARTNERSHIP_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_SPOUSE", "TAX_ASSESSMENT_CONDITIONS_ARE_SPECIAL_ALLOWANCE_AGRICULTURE_MET", "TAX_ASSESSMENT_SHARE_FROM_SDF", "TAX_ASSESSMENT_NATIONAL_IDENTITY_NUMBER_SPOUSE", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_SALARY_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_OWNER", "TAX_ASSESSMENT_OTHER_PENSIONABLE_INCOME_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_FISHING_ETC_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_AGRICULTURE_ALTINN_SPOUSE", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_OWNER", "TAX_ASSESSMENT_SICK_PAYABLE_OTHER_ALTINN_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_SPOUSE", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_OWNER", "TAX_ASSESSMENT_WORK_REMUNERATION_ALTINN_SPOUSE", "REINDEER_HUSBANDRY", "REINDEER_HUSBANDRY_CAPITAL_COSTS_MINUS_CAPITAL_REVENUES", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_TWO_YEARS_AGO", "REINDEER_HUSBANDRY_CORRECTED_BUSINESS_INCOME_ONE_YEAR_AGO", "REINDEER_HUSBANDRY_WITHDRAWAL", "REINDEER_HUSBANDRY_DEPOSIT", "AGRICULTURAL_ACCOUNT_DEPARTMENTS", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS", "AGRICULTURAL_ACCOUNT_INCOME_FROM_BIOMASS_OR_WOOD_PRODUCTION", "AGRICULTURAL_ACCOUNT_OPERATIONAL_ENTITY", "AGRICULTURAL_ACCOUNT_MUNICIPALITY", "AGRICULTURAL_ACCOUNT_TRANSFER_TO_AGRICULTURAL_ACCOUNT", "AGRICULTURAL_ACCOUNT_INHERITED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_REALIZED_UPON_INHERITANCE_GENERATIONAL_CHANGE", "AGRICULTURAL_ACCOUNT_SHARE_OF_BASIS_NEXT_YEAR", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_MANUAL", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_MANUAL", "AGRICULTURAL_ACCOUNT_SHARE_OF_OPERATING_COSTS_PERCENTAGE", "AGRICULTURAL_ACCOUNT_OWN_CORRECTIONS_INCOME_PERCENTAGE", "CONDITIONAL_DEFERRED_GAIN_IDENTIFIER", "CONDITIONAL_DEFERRED_GAIN_DESCRIPTION", "CONDITIONAL_DEFERRED_GAIN_COMPENSATION_AMOUNT", "CONDITIONAL_DEFERRED_GAIN_TAX_FREE_AMOUNT", "ENTERPRISE_DEBT_DIST_ACCOUNT_ID", "ENTERPRISE_DEBT_DIST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_ACCOUNT_NUMBER", "ENTERPRISE_DEBT_DIST_INTEREST_TOTAL", "ENTERPRISE_DEBT_DIST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_DEBT_DIST_ALLOC_DEBT", "ENTERPRISE_DEBT_DIST_ALLOC_INTEREST", "MANUALLY_ENTER_ENTERPRISE_DEBT_AND_INTEREST", "ENTERPRISE_OTHER_INTEREST_ALLOC_INCOME_GROUP_ID", "ENTERPRISE_OTHER_INTEREST_ALLOC_AMOUNT" ] + }, + "label" : { + "type" : "string", + "description" : "The label of the toggle", + "readOnly" : true + }, + "info" : { + "type" : "string", + "description" : "Additional information about the toggle", + "readOnly" : true + }, + "guardMessage" : { + "type" : "string", + "description" : "The message to display when toggle is attempted to be turned off while data exists", + "readOnly" : true + }, + "checked" : { + "type" : "boolean", + "description" : "The checked state of the toggle", + "readOnly" : true + }, + "disabled" : { + "type" : "boolean", + "description" : "The disabled state of the toggle", + "readOnly" : true + }, + "guarded" : { + "type" : "boolean", + "description" : "The guard state of the toggle, if this is on then it prevents the user from unchecking the toggle and displays the guard message", + "readOnly" : true + } + } + }, + "ResponseWrapperWhatToReportToggle" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/WhatToReportToggle" + } + } + }, + "ResponseWrapperZtlAccount" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZtlAccount" + } + } + }, + "ResponseWrapperZtlConsent" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZtlConsent" + } + } + }, + "ZtlConsent" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "consentUrl" : { + "type" : "string", + "readOnly" : true + }, + "valid" : { + "type" : "boolean", + "readOnly" : true + }, + "status" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "UNKNOWN", "REJECTED", "REVOKED_BY_USER", "REVOKED_BY_REMOVING_ACCESS", "REVOKED_BY_CREATING_NEW_CONSENT", "EXPIRED", "REVOKED_BY_NO_ACCOUNT_MATCH", "AWAITING_AUTHORIZATION", "VALID", "REVOKED" ] + }, + "expirationDate" : { + "type" : "string", + "readOnly" : true + }, + "bank" : { + "$ref" : "#/components/schemas/Bank" + }, + "ztlAccounts" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/ZtlAccount" + } + }, + "userIdOrSsn" : { + "type" : "string", + "description" : "userId for DNB, socialSecurityNumber for other banks" + }, + "creationSource" : { + "type" : "string", + "description" : "Specify where the consent was created from", + "enum" : [ "SETTINGS", "SWITCH_INTEGRATION" ] + } + }, + "readOnly" : true + }, + "ResponseWrapperZtlConsentWarning" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZtlConsentWarning" + } + } + }, + "ZtlConsentWarning" : { + "type" : "object", + "properties" : { + "type" : { + "type" : "string", + "readOnly" : true, + "enum" : [ "VALID_CONSENT_CREATED_BEFORE_MERGE", "EXPIRED", "EXPIRING", "NO_CONSENTS" ] + }, + "message" : { + "type" : "string", + "readOnly" : true + }, + "mustRenewConsentBankId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + } + } + }, + "ListResponseZtlConsent" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlConsent" + } + } + } + }, + "EnableInternationalPayments" : { + "type" : "object", + "properties" : { + "url" : { + "type" : "string", + "description" : "ZTL KYC form URL the user should be redirected to in order to enable international payments.", + "readOnly" : true + } + } + }, + "ResponseWrapperEnableInternationalPayments" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/EnableInternationalPayments" + } + } + }, + "ResponseWrapperZtlOnboarding" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZtlOnboarding" + } + } + }, + "ZtlOnboarding" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int64" + }, + "version" : { + "type" : "integer", + "format" : "int32" + }, + "changes" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/Change" + } + }, + "url" : { + "type" : "string", + "readOnly" : true + }, + "onboardingUrl" : { + "type" : "string" + }, + "completedOnboarding" : { + "type" : "boolean" + }, + "pending" : { + "type" : "boolean" + }, + "status" : { + "type" : "string", + "enum" : [ "UNKNOWN", "PROCESSING", "PENDING", "COMPLETED", "FAILED", "CANCELLED", "ARCHIVED", "ALREADY_ONBOARDED", "COMPANY_NOT_FOUND", "INVALID_COMPANY_TYPE", "DECLINED_ENK_NO_VAT", "DECLINED_RISK_EVALUATION", "DOCUMENT_SIGNED_AWAITING_PACKAGING", "DOCUMENT_SIGNED_PACKAGING_COMPLETE", "MANUAL_HANDLING", "SIGNORDER_EXPIRED", "DECLINED_MISSING_COMPANY_TIME", "VOLUNTARY_CREDIT_BLOCK_BISNODE", "MARKED_FOR_CANCELLING_SUBSCRIPTION_AT_ZTL", "DEACTIVATED_IN_ZTL", "CREATED", "AWAITING_CUSTOMER_ACTION", "MANUAL_HANDLING_V2", "ACCEPTED", "REJECTED" ] + } + } + }, + "ListResponseZtlOnboarding" : { + "type" : "object", + "properties" : { + "fullResultSize" : { + "type" : "integer", + "description" : "Indicates whether there are more values available. Note: The value is not exact", + "format" : "int64", + "readOnly" : true + }, + "from" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "count" : { + "type" : "integer", + "format" : "int64", + "readOnly" : true + }, + "versionDigest" : { + "type" : "string", + "description" : "Used to know if the paginated list has changed.", + "readOnly" : true + }, + "values" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlOnboarding" + } + } + } + }, + "ResponseWrapperZtlSettings" : { + "type" : "object", + "properties" : { + "value" : { + "$ref" : "#/components/schemas/ZtlSettings" + } + } + }, + "ZtlEmployee" : { + "type" : "object", + "properties" : { + "id" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "name" : { + "type" : "string", + "readOnly" : true + }, + "pictureId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "companyId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "consent" : { + "$ref" : "#/components/schemas/ZtlConsent" + } + }, + "readOnly" : true + }, + "ZtlSettings" : { + "type" : "object", + "properties" : { + "data" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlSettingsData" + } + } + } + }, + "ZtlSettingsData" : { + "type" : "object", + "properties" : { + "bankName" : { + "type" : "string", + "readOnly" : true + }, + "bankId" : { + "type" : "integer", + "format" : "int32", + "readOnly" : true + }, + "accounts" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlAccount" + } + }, + "employees" : { + "type" : "array", + "readOnly" : true, + "items" : { + "$ref" : "#/components/schemas/ZtlEmployee" + } + } + }, + "readOnly" : true + } + }, + "securitySchemes" : { + "tokenAuthScheme" : { + "type" : "http", + "description" : "Basic AUTH where username is company/customer id for proxy use (or 0 for default), password should be set to the session token", + "scheme" : "basic" + } + } + } +} \ No newline at end of file From 71c8a12555a5c78858e762a1ab1377d6c801925d Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 07:30:54 +0200 Subject: [PATCH 03/42] Fix OOM by streaming generated examples and specs Avoid materializing huge generated examples, model JSON, rendered templates, and OpenAPI spec supporting files as single in-memory strings. Large specs such as the issue #23849 reproduction can exceed Jackson/SnakeYAML String/TextBuffer limits or exhaust heap when examples and generated source are buffered before writing. Introduce writer-backed Mustache lambdas for JSON/OpenAPI output, add a streaming template render path, and update templates to invoke lambdas instead of direct example/spec string values. --- .../codegen/api/TemplatingEngineAdapter.java | 15 ++++ .../openapitools/codegen/CodegenModel.java | 32 ++++++- .../codegen/CodegenOperation.java | 4 +- .../codegen/CodegenParameter.java | 26 +++++- .../openapitools/codegen/DefaultCodegen.java | 78 ++++++++++------- .../openapitools/codegen/TemplateManager.java | 82 +++++++++++++++++- .../codegen/examples/ExampleGenerator.java | 68 ++++++++------- .../languages/AbstractApexCodegen.java | 7 +- .../languages/AbstractCSharpCodegen.java | 9 +- .../languages/AbstractFSharpCodegen.java | 11 ++- .../AbstractPythonConnexionServerCodegen.java | 10 ++- .../languages/ElixirClientCodegen.java | 2 +- .../languages/ErlangProperCodegen.java | 2 +- .../languages/NodeJSExpressServerCodegen.java | 8 +- .../languages/OpenAPIYamlGenerator.java | 7 +- .../codegen/languages/RustServerCodegen.java | 2 +- .../RustServerCodegenDeprecated.java | 2 +- .../languages/TypeScriptClientCodegen.java | 2 +- .../TypeScriptFetchClientCodegen.java | 2 +- .../TypeScriptNestjsServerCodegen.java | 8 +- .../codegen/serializer/SerializerUtils.java | 83 ++++++++++++++----- .../templating/MustacheEngineAdapter.java | 12 ++- .../templating/mustache/JsonOutputLambda.java | 63 ++++++++++++++ .../mustache/OpenApiSpecOutputLambda.java | 59 +++++++++++++ .../src/main/resources/Ada/openapi.mustache | 2 +- .../src/main/resources/Groovy/README.mustache | 2 +- .../src/main/resources/Java/README.mustache | 2 +- .../src/main/resources/Java/api_doc.mustache | 2 +- .../apache-httpclient/README.mustache | 2 +- .../Java/libraries/jersey2/api_doc.mustache | 2 +- .../Java/libraries/jersey3/api_doc.mustache | 2 +- .../Java/libraries/native/README.mustache | 2 +- .../Java/libraries/native/api_doc.mustache | 4 +- .../libraries/okhttp-gson/README.mustache | 2 +- .../libraries/okhttp-gson/api_doc.mustache | 2 +- .../Java/libraries/restclient/README.mustache | 2 +- .../Java/libraries/vertx/README.mustache | 2 +- .../src/main/resources/Java/openapi.mustache | 2 +- .../resources/JavaInflector/openapi.mustache | 2 +- .../resources/JavaJaxRS/spec/openapi.mustache | 2 +- .../JavaPlayFramework/openapi.mustache | 2 +- .../JavaSpring/exampleString.mustache | 2 +- .../resources/JavaSpring/openapi.mustache | 2 +- .../JavaVertXServer/openapi.mustache | 2 +- .../supportFiles/openapi.mustache | 2 +- .../Javascript-Apollo/README.mustache | 4 +- .../Javascript-Apollo/api_doc.mustache | 4 +- .../main/resources/Javascript/README.mustache | 4 +- .../resources/Javascript/api_doc.mustache | 4 +- .../main/resources/android/README.mustache | 2 +- .../main/resources/android/api_doc.mustache | 2 +- .../main/resources/apex/README_ant.mustache | 2 +- .../main/resources/apex/README_sfdx.mustache | 2 +- .../src/main/resources/apex/api_doc.mustache | 2 +- .../src/main/resources/apex/api_test.mustache | 2 +- .../aspnetcore/2.0/controller.mustache | 2 +- .../2.0/wwwroot/openapi-original.mustache | 2 +- .../aspnetcore/2.1/controller.mustache | 2 +- .../2.1/wwwroot/openapi-original.mustache | 2 +- .../aspnetcore/3.0/controller.mustache | 2 +- .../3.0/wwwroot/openapi-original.mustache | 2 +- .../confluenceWikiDocs/index.mustache | 4 +- .../csharp-functions/api_doc.mustache | 2 +- .../csharp-functions/controller.mustache | 2 +- .../src/main/resources/csharp/README.mustache | 2 +- .../main/resources/csharp/api_doc.mustache | 2 +- .../libraries/unityWebRequest/README.mustache | 2 +- .../main/resources/csharp/openapi.mustache | 2 +- .../dart/libraries/dio/README.mustache | 2 +- .../dart/libraries/dio/api_doc.mustache | 2 +- .../src/main/resources/dart2/README.mustache | 2 +- .../src/main/resources/dart2/api_doc.mustache | 2 +- .../erlang-server-deprecated/openapi.mustache | 2 +- .../resources/erlang-server/openapi.mustache | 2 +- .../HandlerTestsHelper.mustache | 4 +- .../resources/go-echo-server/openapi.mustache | 2 +- .../resources/go-gin-server/openapi.mustache | 2 +- .../main/resources/go-server/openapi.mustache | 2 +- .../src/main/resources/go/openapi.mustache | 2 +- .../resolvers.mustache | 4 +- .../haskell-http-client/openapi.mustache | 2 +- .../main/resources/htmlDocs/index.mustache | 4 +- .../main/resources/htmlDocs2/index.mustache | 6 +- .../htmlDocs2/sample_android.mustache | 2 +- .../htmlDocs2/sample_csharp.mustache | 2 +- .../resources/htmlDocs2/sample_curl.mustache | 2 +- .../resources/htmlDocs2/sample_java.mustache | 2 +- .../resources/htmlDocs2/sample_js.mustache | 4 +- .../resources/htmlDocs2/sample_objc.mustache | 2 +- .../resources/htmlDocs2/sample_perl.mustache | 2 +- .../resources/htmlDocs2/sample_php.mustache | 2 +- .../htmlDocs2/sample_python.mustache | 2 +- .../resources/htmlDocs2/sample_rust.mustache | 2 +- .../java-camel-server/exampleString.mustache | 2 +- .../exampleStringArray.mustache | 2 +- .../client/libraries/mp/openapi.mustache | 2 +- .../client/libraries/se/api_doc.mustache | 2 +- .../client/libraries/se/openapi.mustache | 2 +- .../server/libraries/mp/api_doc.mustache | 2 +- .../server/libraries/mp/openapi.mustache | 2 +- .../java-helidon/server/openapi.mustache | 2 +- .../client/test/api_test.mustache | 2 +- .../server/controllerOperationBody.mustache | 2 +- .../server/test/controller_test.mustache | 18 ++-- .../java-pkmst/apiController.mustache | 2 +- .../java-undertow-server/openapi.mustache | 2 +- .../java-wiremock/exampleString.mustache | 2 +- .../resources/kotlin-client/api_doc.mustache | 2 +- .../resources/kotlin-client/api_test.mustache | 2 +- .../libraries/jvm-retrofit2/api_doc.mustache | 2 +- .../libraries/jvm-volley/api_doc.mustache | 2 +- .../resources/kotlin-misk/api_doc.mustache | 2 +- .../resources/kotlin-server/api_doc.mustache | 2 +- .../libraries/ktor/_response.mustache | 4 +- .../libraries/ktor2/_response.mustache | 4 +- .../kotlin-spring/methodBody.mustache | 4 +- .../resources/kotlin-spring/openapi.mustache | 2 +- .../nodejs-express-server/openapi.mustache | 2 +- .../src/main/resources/objc/README.mustache | 2 +- .../src/main/resources/objc/api_doc.mustache | 2 +- .../resources/openapi-yaml/openapi.mustache | 2 +- .../src/main/resources/perl/README.mustache | 2 +- .../src/main/resources/perl/api_doc.mustache | 2 +- .../resources/php-nextgen/README.mustache | 2 +- .../resources/php-nextgen/api_doc.mustache | 4 +- .../resources/php-slim4-server/model.mustache | 4 +- .../src/main/resources/php/README.mustache | 2 +- .../src/main/resources/php/api_doc.mustache | 4 +- .../php/libraries/psr-18/README.mustache | 2 +- .../php/libraries/psr-18/api_doc.mustache | 4 +- .../python-aiohttp/controller_test.mustache | 12 +-- .../resources/python-aiohttp/openapi.mustache | 2 +- .../test/controller_test.mustache | 10 +-- .../python-fastapi/api_test.mustache | 10 +-- .../resources/python-fastapi/openapi.mustache | 2 +- .../python-flask/controller_test.mustache | 10 +-- .../resources/python-flask/openapi.mustache | 2 +- .../api_doc_example.mustache | 2 +- .../python-pydantic-v1/common_README.mustache | 2 +- .../resources/python/api_doc_example.mustache | 2 +- .../resources/python/common_README.mustache | 2 +- .../ruby-sinatra-server/openapi.mustache | 2 +- .../rust-server-deprecated/openapi.mustache | 2 +- .../resources/rust-server/openapi.mustache | 2 +- .../scala-akka-client/README.mustache | 2 +- .../scala-akka-client/api_doc.mustache | 2 +- .../scala-pekko-client/README.mustache | 2 +- .../scala-pekko-client/api_doc.mustache | 2 +- .../public/openapi.json.mustache | 2 +- .../typescript-fetch/api_example.mustache | 2 +- .../resources/typescript/api_doc.mustache | 2 +- .../resources/xojo-client/api_mock.mustache | 2 +- .../src/main/resources/zapier/sample.mustache | 2 +- .../codegen/DefaultCodegenTest.java | 22 +++-- .../codegen/ExampleGeneratorTest.java | 67 +++++++++------ .../codegen/TemplateManagerTest.java | 44 ++++++++++ .../mustache/JsonOutputLambdaTest.java | 51 ++++++++++++ 157 files changed, 797 insertions(+), 327 deletions(-) create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OpenApiSpecOutputLambda.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java diff --git a/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/api/TemplatingEngineAdapter.java b/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/api/TemplatingEngineAdapter.java index 4be4575f5bc8..2b1589c54917 100644 --- a/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/api/TemplatingEngineAdapter.java +++ b/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/api/TemplatingEngineAdapter.java @@ -19,6 +19,7 @@ import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; +import java.io.Writer; import java.nio.file.Path; import java.util.Arrays; import java.util.Locale; @@ -67,6 +68,20 @@ default boolean handlesFile(String filename) { String compileTemplate(TemplatingExecutor executor, Map bundle, String templateFile) throws IOException; + /** + * Writes a compiled template directly to a writer. + * + * @param executor From where we can fetch the templates content (e.g. an instance of DefaultGenerator) + * @param bundle The map of values to pass to the template + * @param templateFile The name of the template (e.g. model.mustache ) + * @param writer Destination writer for the processed template result + * @throws IOException an error occurred in the template processing + */ + default void writeTemplate(TemplatingExecutor executor, Map bundle, + String templateFile, Writer writer) throws IOException { + writer.write(compileTemplate(executor, bundle, templateFile)); + } + /** * Determines whether the template file with supported extensions exists. This may be on the filesystem, * external filesystem, or classpath (implementation is up to TemplatingGenerator). diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java index f188b31ab8e4..624f49e04be3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java @@ -18,10 +18,12 @@ package org.openapitools.codegen; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.samskivert.mustache.Mustache; import io.swagger.v3.oas.models.ExternalDocumentation; import lombok.Getter; import lombok.Setter; import org.apache.commons.lang3.StringUtils; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import java.util.*; @@ -77,7 +79,10 @@ public class CodegenModel implements IJsonSchemaValidationProperties { @Getter @Setter public String title; @Getter @Setter - public String description, classVarName, modelJson, dataType, xmlPrefix, xmlNamespace, xmlName; + public String description, classVarName, dataType, xmlPrefix, xmlNamespace, xmlName; + @Getter + public String modelJson; + private Object modelJsonValue; @Getter @Setter public String classFilename; // store the class file name, mainly used for import @Getter @Setter @@ -274,6 +279,31 @@ public Map getExts() { return vendorExtensions; } + public Mustache.Lambda getLambdaModelJson() { + if (modelJsonValue != null) { + return new JsonOutputLambda(modelJsonValue); + } + if (modelJson != null) { + return new JsonOutputLambda(modelJson); + } + return null; + } + + public void setModelJson(String modelJson) { + this.modelJson = modelJson; + this.modelJsonValue = null; + } + + public void setModelJsonValue(Object modelJsonValue) { + this.modelJsonValue = modelJsonValue; + this.modelJson = null; + } + + public void setModelJson(CodegenModel model) { + this.modelJsonValue = model.modelJsonValue; + this.modelJson = model.modelJson; + } + @Override public CodegenProperty getContains() { return contains; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java index 47e09ea292d4..fb88a796cf2c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenOperation.java @@ -56,8 +56,8 @@ public class CodegenOperation { public List responses = new ArrayList(); public List callbacks = new ArrayList<>(); public Set imports = new HashSet(); - public List> examples; - public List> requestBodyExamples; + public List> examples; + public List> requestBodyExamples; public ExternalDocumentation externalDocs; public Map vendorExtensions = new HashMap(); public String nickname; // legacy support diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java index 90c4c66558c0..eacbe0d107d3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java @@ -17,9 +17,12 @@ package org.openapitools.codegen; +import com.fasterxml.jackson.databind.JsonNode; +import com.samskivert.mustache.Mustache; import io.swagger.v3.oas.models.examples.Example; import lombok.Getter; import lombok.Setter; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import java.util.*; @@ -41,6 +44,7 @@ public class CodegenParameter implements IJsonSchemaValidationProperties { public String nameInPascalCase; // property name in pascal case (e.g. ModifiedDate) public String nameInSnakeCase; // property name in upper snake case public String example; // example value (x-example) + private JsonNode exampleJsonNode; public Map examples; public String jsonSchema; public boolean isString, isNumeric, isInteger, isLong, isNumber, isFloat, isDouble, isDecimal, isByteArray, isBinary, @@ -184,6 +188,7 @@ public CodegenParameter copy() { output.defaultValue = this.defaultValue; output.enumDefaultValue = this.enumDefaultValue; output.example = this.example; + output.exampleJsonNode = this.exampleJsonNode; output.examples = this.examples; output.isEnum = this.isEnum; output.isEnumRef = this.isEnumRef; @@ -543,6 +548,26 @@ public Map getExts() { return vendorExtensions; } + public Mustache.Lambda getLambdaExample() { + if (exampleJsonNode != null) { + return new JsonOutputLambda(exampleJsonNode); + } + if (example != null) { + return new JsonOutputLambda(example); + } + return null; + } + + public void setExample(String example) { + this.example = example; + this.exampleJsonNode = null; + } + + public void setExample(JsonNode exampleJsonNode) { + this.exampleJsonNode = exampleJsonNode; + this.example = exampleJsonNode != null && exampleJsonNode.isValueNode() ? exampleJsonNode.asText() : null; + } + // use schema.getContains or content.mediaType.schema.getContains instead of this @Override public CodegenProperty getContains() { @@ -1151,4 +1176,3 @@ public void setIsEnum(boolean isEnum) { this.isEnum = isEnum; } } - diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 006bdc827c08..bb4e9311e06c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -17,6 +17,9 @@ package org.openapitools.codegen; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.json.JsonMapper; import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import com.github.benmanes.caffeine.cache.Ticker; @@ -63,7 +66,6 @@ import org.openapitools.codegen.model.ModelsMap; import org.openapitools.codegen.model.OperationsMap; import org.openapitools.codegen.model.WebhooksMap; -import org.openapitools.codegen.serializer.SerializerUtils; import org.openapitools.codegen.templating.MustacheEngineAdapter; import org.openapitools.codegen.templating.mustache.*; import org.openapitools.codegen.utils.DiscriminatorUtils; @@ -99,6 +101,7 @@ public class DefaultCodegen implements CodegenConfig { private final Logger LOGGER = LoggerFactory.getLogger(DefaultCodegen.class); + private static final ObjectMapper JSON_VALUE_MAPPER = JsonMapper.builder().build(); public static final Pattern SPLIT_ON_SEMICOLON_OR_NEWLINE_REGEX = Pattern.compile("\\s*(;|\\r?\\n)\\s*"); // Splits on semicolon or new line, ignoring surrounding whitespace @@ -2063,41 +2066,59 @@ public void setParameterExampleValue(CodegenParameter codegenParameter) { // if not specified in x-example, generate a default value // TODO need to revise how to obtain the example value if (codegenParameter.vendorExtensions != null && codegenParameter.vendorExtensions.containsKey("x-example")) { - codegenParameter.example = Json.pretty(codegenParameter.vendorExtensions.get("x-example")); + setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (codegenParameter.isBoolean) { - codegenParameter.example = "true"; + codegenParameter.setExample("true"); } else if (codegenParameter.isLong) { - codegenParameter.example = "789"; + codegenParameter.setExample("789"); } else if (codegenParameter.isInteger) { - codegenParameter.example = "56"; + codegenParameter.setExample("56"); } else if (codegenParameter.isFloat) { - codegenParameter.example = "3.4"; + codegenParameter.setExample("3.4"); } else if (codegenParameter.isDouble) { - codegenParameter.example = "1.2"; + codegenParameter.setExample("1.2"); } else if (codegenParameter.isNumber) { - codegenParameter.example = "8.14"; + codegenParameter.setExample("8.14"); } else if (codegenParameter.isBinary) { - codegenParameter.example = "BINARY_DATA_HERE"; + codegenParameter.setExample("BINARY_DATA_HERE"); } else if (codegenParameter.isByteArray) { - codegenParameter.example = "BYTE_ARRAY_DATA_HERE"; + codegenParameter.setExample("BYTE_ARRAY_DATA_HERE"); } else if (codegenParameter.isFile) { - codegenParameter.example = "/path/to/file.txt"; + codegenParameter.setExample("/path/to/file.txt"); } else if (codegenParameter.isDate) { - codegenParameter.example = "2013-10-20"; + codegenParameter.setExample("2013-10-20"); } else if (codegenParameter.isDateTime) { - codegenParameter.example = "2013-10-20T19:20:30+01:00"; + codegenParameter.setExample("2013-10-20T19:20:30+01:00"); } else if (codegenParameter.isUuid) { - codegenParameter.example = "38400000-8cf0-11bd-b23e-10b96e4ef00d"; + codegenParameter.setExample("38400000-8cf0-11bd-b23e-10b96e4ef00d"); } else if (codegenParameter.isUri) { - codegenParameter.example = "https://openapi-generator.tech"; + codegenParameter.setExample("https://openapi-generator.tech"); } else if (codegenParameter.isString) { - codegenParameter.example = codegenParameter.paramName + "_example"; + codegenParameter.setExample(codegenParameter.paramName + "_example"); } else if (codegenParameter.isFreeFormObject) { - codegenParameter.example = "Object"; + codegenParameter.setExample("Object"); } } + protected void setParameterExampleValue(CodegenParameter codegenParameter, Object example) { + if (example instanceof JsonNode) { + codegenParameter.setExample((JsonNode) example); + } else if (example instanceof String || example instanceof Number || example instanceof Boolean) { + codegenParameter.setExample(example.toString()); + } else { + codegenParameter.setExample(example == null ? null : JSON_VALUE_MAPPER.valueToTree(example)); + } + } + + protected void setParameterJsonExampleValue(CodegenParameter codegenParameter, Object example) { + if (example instanceof JsonNode) { + codegenParameter.setExample((JsonNode) example); + } else { + codegenParameter.setExample(example == null ? null : JSON_VALUE_MAPPER.valueToTree(example)); + } + } + /** * Return the example value of the parameter. * @@ -2106,21 +2127,21 @@ public void setParameterExampleValue(CodegenParameter codegenParameter) { */ public void setParameterExampleValue(CodegenParameter codegenParameter, Parameter parameter) { if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + setParameterExampleValue(codegenParameter, parameter.getExample()); return; } if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + setParameterExampleValue(codegenParameter, example.getValue()); return; } } Schema schema = parameter.getSchema(); if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + setParameterExampleValue(codegenParameter, schema.getExample()); return; } @@ -2155,14 +2176,14 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, RequestB MediaType mediaType = content.values().iterator().next(); if (mediaType.getExample() != null) { - codegenParameter.example = mediaType.getExample().toString(); + setParameterExampleValue(codegenParameter, mediaType.getExample()); return; } if (mediaType.getExamples() != null && !mediaType.getExamples().isEmpty()) { Example example = mediaType.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + setParameterExampleValue(codegenParameter, example.getValue()); return; } } @@ -3127,7 +3148,7 @@ public CodegenModel fromModel(String name, Schema schema) { m.classname = toModelName(name); m.classVarName = toVarName(name); m.classFilename = toModelFilename(name); - m.modelJson = Json.pretty(schema); + m.setModelJsonValue(schema); m.externalDocumentation = schema.getExternalDocs(); if (schema.getExtensions() != null && !schema.getExtensions().isEmpty()) { m.getVendorExtensions().putAll(schema.getExtensions()); @@ -4753,7 +4774,7 @@ public CodegenOperation fromOperation(String path, if (!isSkipOperationExample() && operation.getResponses() != null) { // generate examples ExampleGenerator generator = new ExampleGenerator(schemas, this.openAPI); - List> examples = new ArrayList<>(); + List> examples = new ArrayList<>(); for (String statusCode : operation.getResponses().keySet()) { ApiResponse apiResponse = ModelUtils.getReferencedApiResponse(openAPI, operation.getResponses().get(statusCode)); @@ -4770,7 +4791,7 @@ public CodegenOperation fromOperation(String path, if (exampleStatusCode.equals("default")) { exampleStatusCode = "200"; } - List> examplesForResponse = generator.generateFromResponseSchema(exampleStatusCode, schema, producesInfo); + List> examplesForResponse = generator.generateFromResponseSchema(exampleStatusCode, schema, producesInfo); if (examplesForResponse != null) { examples.addAll(examplesForResponse); } @@ -8327,7 +8348,7 @@ protected void addSwitch(String key, String description, Boolean defaultValue) { protected void generateJSONSpecFile(Map objs) { OpenAPI openAPI = (OpenAPI) objs.get("openAPI"); if (openAPI != null) { - objs.put("openapi-json", SerializerUtils.toJsonString(openAPI)); + objs.put("lambdaOpenapiJson", new OpenApiSpecOutputLambda(openAPI, OpenApiSpecOutputLambda.Format.JSON)); } } @@ -8338,9 +8359,8 @@ protected void generateJSONSpecFile(Map objs) { */ public void generateYAMLSpecFile(Map objs) { OpenAPI openAPI = (OpenAPI) objs.get("openAPI"); - String yaml = SerializerUtils.toYamlString(openAPI); - if (yaml != null) { - objs.put("openapi-yaml", yaml); + if (openAPI != null) { + objs.put("lambdaOpenapiYaml", new OpenApiSpecOutputLambda(openAPI, OpenApiSpecOutputLambda.Format.YAML)); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java index 41f14f3d9420..87f27581aede 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java @@ -184,8 +184,7 @@ private InputStream getInputStream(String name) throws IOException { public File write(Map data, String template, File target) throws IOException { if (this.engineAdapter.handlesFile(template)) { // Only pass files with valid endings through template engine - String templateContent = this.engineAdapter.compileTemplate(this, data, template); - return writeToFile(target.getPath(), templateContent); + return writeTemplateToFile(target.getPath(), data, template); } else { // Do a straight copy of the file if not listed as supported by the template engine. String fullTemplatePath = null; @@ -229,6 +228,47 @@ public File writeToFile(String filename, String contents) throws IOException { return writeToFile(filename, contents.getBytes(StandardCharsets.UTF_8)); } + /** + * Writes rendered template output to a file without materializing the full rendered content as a string. + * + * @param filename The name of file to write + * @param data Input data for the template + * @param template The template location + * @return File representing the written file. + * @throws IOException If file cannot be written. + */ + public File writeTemplateToFile(String filename, Map data, String template) throws IOException { + File outputFile = Paths.get(filename).toFile(); + + if (this.options.isMinimalUpdate()) { + String tempFilename = filename + ".tmp"; + File tempFile = null; + try { + tempFile = writeTemplateToFileRaw(tempFilename, data, template); + if (!filesEqual(tempFile, outputFile)) { + LOGGER.info("writing file {}", filename); + Files.move(tempFile.toPath(), outputFile.toPath(), StandardCopyOption.REPLACE_EXISTING); + tempFile = null; + } else { + LOGGER.info("skipping unchanged file {}", filename); + } + } finally { + if (tempFile != null && tempFile.exists()) { + try { + Files.delete(tempFile.toPath()); + } catch (Exception ex) { + LOGGER.error("Error removing temporary file {}", tempFile, ex); + } + } + } + } else { + LOGGER.info("writing file {}", filename); + outputFile = writeTemplateToFileRaw(filename, data, template); + } + + return outputFile; + } + /** * Write bytes to a file * @@ -288,9 +328,45 @@ private File writeToFileRaw(String filename, byte[] contents) throws IOException return output; } + private File writeTemplateToFileRaw(String filename, Map data, String template) throws IOException { + File output = Paths.get(filename).toFile(); + if (this.options.isSkipOverwrite() && output.exists()) { + LOGGER.info("skip overwrite of file {}", filename); + return output; + } + + if (output.getParent() != null && !new File(output.getParent()).exists()) { + File parent = Paths.get(output.getParent()).toFile(); + parent.mkdirs(); + } + + try (Writer writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(output), StandardCharsets.UTF_8))) { + this.engineAdapter.writeTemplate(this, data, template, writer); + } + + return output; + } + private boolean filesEqual(File file1, File file2) throws IOException { if (!file1.exists() || !file2.exists()) return false; if (file1.length() != file2.length()) return false; - return Arrays.equals(Files.readAllBytes(file1.toPath()), Files.readAllBytes(file2.toPath())); + try (InputStream is1 = Files.newInputStream(file1.toPath()); + InputStream is2 = Files.newInputStream(file2.toPath())) { + byte[] buffer1 = new byte[8192]; + byte[] buffer2 = new byte[8192]; + int read1; + while ((read1 = is1.read(buffer1)) != -1) { + int read2 = is2.read(buffer2); + if (read1 != read2) { + return false; + } + for (int i = 0; i < read1; i++) { + if (buffer1[i] != buffer2[i]) { + return false; + } + } + } + return is2.read() == -1; + } } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java index 010a0f93aaef..0b2b40675f56 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java @@ -17,10 +17,10 @@ package org.openapitools.codegen.examples; -import io.swagger.v3.core.util.Json; import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.media.Schema; import org.apache.commons.lang3.StringUtils; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import org.openapitools.codegen.utils.ModelUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,6 +41,7 @@ public class ExampleGenerator { private static final String EXAMPLE = "example"; private static final String CONTENT_TYPE = "contentType"; private static final String GENERATED_CONTENT_TYPE = "generatedContentType"; + private static final String LAMBDA_EXAMPLE = "lambdaExample"; private static final String OUTPUT = "output"; private static final String NONE = "none"; private static final String URL = "url"; @@ -59,20 +60,20 @@ public ExampleGenerator(Map examples, OpenAPI openAPI) { dateFormat.setTimeZone(TimeZone.getTimeZone("UTC")); } - public List> generateFromResponseSchema(String statusCode, Schema responseSchema, Set producesInfo) { - List> examples = generateFromResponseSchema(responseSchema, producesInfo); + public List> generateFromResponseSchema(String statusCode, Schema responseSchema, Set producesInfo) { + List> examples = generateFromResponseSchema(responseSchema, producesInfo); if (examples == null) { return null; } - for (Map example : examples) { + for (Map example : examples) { example.put(STATUS_CODE, statusCode); } return examples; } - private List> generateFromResponseSchema(Schema responseSchema, Set producesInfo) { + private List> generateFromResponseSchema(Schema responseSchema, Set producesInfo) { if (responseSchema.getExample() == null && StringUtils.isEmpty(responseSchema.get$ref()) && !ModelUtils.isArraySchema(responseSchema)) { // no example provided return null; @@ -99,9 +100,9 @@ private List> generateFromResponseSchema(Schema responseSche } } - public List> generate(Map examples, List mediaTypes, Schema property) { + public List> generate(Map examples, List mediaTypes, Schema property) { LOGGER.debug("debugging generate in ExampleGenerator"); - List> output = new ArrayList<>(); + List> output = new ArrayList<>(); Set processedModels = new HashSet<>(); if (examples == null) { if (mediaTypes == null) { @@ -109,19 +110,19 @@ public List> generate(Map examples, List kv = new HashMap<>(); + Map kv = new HashMap<>(); kv.put(CONTENT_TYPE, mediaType); if (property != null && (mediaType.startsWith(MIME_TYPE_JSON) || mediaType.contains("*/*"))) { - String example = Json.pretty(resolvePropertyToExample("", mediaType, property, processedModels)); + Object example = resolvePropertyToExample("", mediaType, property, processedModels); if (example != null) { - kv.put(EXAMPLE, example); + putJsonExample(kv, example); kv.put(GENERATED_CONTENT_TYPE, MIME_TYPE_JSON); output.add(kv); } } else if (property != null && mediaType.startsWith(MIME_TYPE_XML)) { String example = new XmlExampleGenerator(this.examples).toXml(property); if (example != null) { - kv.put(EXAMPLE, example); + putStringExample(kv, example); kv.put(GENERATED_CONTENT_TYPE, MIME_TYPE_XML); output.add(kv); } @@ -129,23 +130,23 @@ public List> generate(Map examples, List entry : examples.entrySet()) { - final Map kv = new HashMap<>(); + final Map kv = new HashMap<>(); kv.put(CONTENT_TYPE, entry.getKey()); - kv.put(EXAMPLE, Json.pretty(entry.getValue())); + putJsonExample(kv, entry.getValue()); output.add(kv); } } if (output.size() == 0) { - Map kv = new HashMap<>(); + Map kv = new HashMap<>(); kv.put(OUTPUT, NONE); output.add(kv); } return output; } - public List> generate(Map examples, List mediaTypes, String modelName) { - List> output = new ArrayList<>(); + public List> generate(Map examples, List mediaTypes, String modelName) { + List> output = new ArrayList<>(); Set processedModels = new HashSet<>(); if (examples == null) { if (mediaTypes == null) { @@ -153,15 +154,15 @@ public List> generate(Map examples, List kv = new HashMap<>(); + Map kv = new HashMap<>(); kv.put(CONTENT_TYPE, mediaType); if (modelName != null && (mediaType.startsWith(MIME_TYPE_JSON) || mediaType.contains("*/*"))) { final Schema schema = this.examples.get(modelName); if (schema != null) { - String example = Json.pretty(resolveModelToExample(modelName, mediaType, schema, processedModels)); + Object example = resolveModelToExample(modelName, mediaType, schema, processedModels); if (example != null) { - kv.put(EXAMPLE, example); + putJsonExample(kv, example); kv.put(GENERATED_CONTENT_TYPE, MIME_TYPE_JSON); output.add(kv); } @@ -170,44 +171,44 @@ public List> generate(Map examples, List entry : examples.entrySet()) { - final Map kv = new HashMap<>(); + final Map kv = new HashMap<>(); kv.put(CONTENT_TYPE, entry.getKey()); - kv.put(EXAMPLE, Json.pretty(entry.getValue())); + putJsonExample(kv, entry.getValue()); output.add(kv); } } if (output.size() == 0) { - Map kv = new HashMap<>(); + Map kv = new HashMap<>(); kv.put(OUTPUT, NONE); output.add(kv); } return output; } - private List> generate(Object example, List mediaTypes) { - List> output = new ArrayList<>(); + private List> generate(Object example, List mediaTypes) { + List> output = new ArrayList<>(); if (examples != null) { if (mediaTypes == null) { // assume application/json for this mediaTypes = Collections.singletonList(MIME_TYPE_JSON); } for (String mediaType : mediaTypes) { - Map kv = new HashMap<>(); + Map kv = new HashMap<>(); kv.put(CONTENT_TYPE, mediaType); if ((mediaType.startsWith(MIME_TYPE_JSON) || mediaType.contains("*/*"))) { - kv.put(EXAMPLE, Json.pretty(example)); + putJsonExample(kv, example); kv.put(GENERATED_CONTENT_TYPE, MIME_TYPE_JSON); output.add(kv); } else if (mediaType.startsWith(MIME_TYPE_XML)) { @@ -218,13 +219,22 @@ private List> generate(Object example, List mediaTyp } if (output.size() == 0) { - Map kv = new HashMap<>(); + Map kv = new HashMap<>(); kv.put(OUTPUT, NONE); output.add(kv); } return output; } + private void putJsonExample(Map output, Object example) { + output.put(LAMBDA_EXAMPLE, new JsonOutputLambda(example)); + } + + private void putStringExample(Map output, String example) { + output.put(EXAMPLE, example); + output.put(LAMBDA_EXAMPLE, new JsonOutputLambda(example)); + } + private Object resolvePropertyToExample(String propertyName, String mediaType, Schema property, Set processedModels) { if (property == null) { LOGGER.error("Property schema shouldn't be null. Please report the issue to the openapi-generator team."); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java index 6a090df03d5a..0c3e98a2cf88 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java @@ -565,8 +565,11 @@ public CodegenOperation fromOperation(String path, String httpMethod, Operation ApiResponse apiResponse = findMethodResponse(operation.getResponses()); final Schema responseSchema = ModelUtils.getSchemaFromResponse(openAPI, apiResponse); String deserializedExample = toExampleValue(responseSchema); - for (Map example : op.examples) { - example.put("example", escapeText(example.get("example"))); + for (Map example : op.examples) { + Object rawExample = example.get("example"); + if (rawExample instanceof String) { + example.put("example", escapeText((String) rawExample)); + } example.put("deserializedExample", deserializedExample); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java index b8a01b73aa0e..487d16fce5e3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java @@ -1226,10 +1226,13 @@ private void postProcessOperations(OperationMap operations, List allMo } if (operation.examples != null) { - for (Map example : operation.examples) { - for (Map.Entry entry : example.entrySet()) { + for (Map example : operation.examples) { + for (Map.Entry entry : example.entrySet()) { + if (!(entry.getValue() instanceof String)) { + continue; + } // Replace " with \", \r, \n with \\r, \\n - String val = entry.getValue().replace("\"", "\\\"") + String val = ((String) entry.getValue()).replace("\"", "\\\"") .replace("\r", "\\r") .replace("\n", "\\n"); entry.setValue(val); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java index 7ca5e99015c2..b996a276f702 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java @@ -546,10 +546,13 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List example : operation.examples) { - for (Map.Entry entry : example.entrySet()) { + for (Map example : operation.examples) { + for (Map.Entry entry : example.entrySet()) { + if (!(entry.getValue() instanceof String)) { + continue; + } // Replace " with \", \r, \n with \\r, \\n - String val = entry.getValue().replace("\"", "\\\"") + String val = ((String) entry.getValue()).replace("\"", "\\\"") .replace("\r", "\\r") .replace("\n", "\\n"); entry.setValue(val); @@ -1006,7 +1009,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter) { // if not specified in x-example, generate a default value // TODO need to revise how to obtain the example value if (codegenParameter.vendorExtensions != null && codegenParameter.vendorExtensions.containsKey("x-example")) { - codegenParameter.example = Json.pretty(codegenParameter.vendorExtensions.get("x-example")); + setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (Boolean.TRUE.equals(codegenParameter.isBoolean)) { codegenParameter.example = "true"; } else if (Boolean.TRUE.equals(codegenParameter.isLong)) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java index a8eec2f60d0a..69e75e0ac308 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java @@ -701,17 +701,19 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List example : operation.requestBodyExamples) { - if (example.get("contentType") != null && example.get("contentType").equals("application/json")) { + for (Map example : operation.requestBodyExamples) { + Object contentType = example.get("contentType"); + Object rawExample = example.get("example"); + if ("application/json".equals(contentType) && rawExample instanceof String) { // Make an example dictionary more python-like (Booleans True/False). // If fails, use the original string. try { - Map result = MAPPER.readValue(example.get("example"), + Map result = MAPPER.readValue((String) rawExample, new TypeReference>() { }); operation.bodyParam.example = MAPPER.writeValueAsString(result); } catch (IOException e) { - operation.bodyParam.example = example.get("example"); + operation.bodyParam.example = (String) rawExample; } } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java index c68ad41f8a08..0b224367a396 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java @@ -881,7 +881,7 @@ public ExtendedCodegenModel(CodegenModel cm) { this.title = cm.title; this.description = cm.description; this.classVarName = cm.classVarName; - this.modelJson = cm.modelJson; + this.setModelJson(cm); this.dataType = cm.dataType; this.xmlPrefix = cm.xmlPrefix; this.xmlNamespace = cm.xmlNamespace; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java index 1d405bb4eb7c..f377c1f5c612 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java @@ -455,7 +455,7 @@ public CodegenArrayModel(CodegenModel cm, Schema schema) { this.title = cm.title; this.description = cm.description; this.classVarName = cm.classVarName; - this.modelJson = cm.modelJson; + this.setModelJson(cm); this.dataType = cm.dataType; this.xmlPrefix = cm.xmlPrefix; this.xmlNamespace = cm.xmlNamespace; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java index fb7001488174..f00551b32a1d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java @@ -258,10 +258,10 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List> it = operation.examples.iterator(); it.hasNext(); ) { - final Map example = it.next(); - final String contentType = example.get("contentType"); - if (contentType == null || !contentType.startsWith("application/json")) { + for (Iterator> it = operation.examples.iterator(); it.hasNext(); ) { + final Map example = it.next(); + final Object contentType = example.get("contentType"); + if (!(contentType instanceof String) || !((String) contentType).startsWith("application/json")) { it.remove(); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java index 8dc4befee8de..7492b4bc2f30 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java @@ -23,8 +23,8 @@ import io.swagger.v3.oas.models.Operation; import org.openapitools.codegen.*; import org.openapitools.codegen.meta.features.*; -import org.openapitools.codegen.serializer.SerializerUtils; import org.openapitools.codegen.templating.mustache.OnChangeLambda; +import org.openapitools.codegen.templating.mustache.OpenApiSpecOutputLambda; import org.openapitools.codegen.utils.OpenAPISorter; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -126,9 +126,8 @@ public void addOperationToGroup(String tag, String resourcePath, Operation opera @Override public void generateYAMLSpecFile(Map objs) { OpenAPI openAPI = (OpenAPI) objs.get("openAPI"); - String yaml = SerializerUtils.toYamlString(openAPI, sortOutput); - if (yaml != null) { - objs.put("openapi-yaml", yaml); + if (openAPI != null) { + objs.put("lambdaOpenapiYaml", new OpenApiSpecOutputLambda(openAPI, OpenApiSpecOutputLambda.Format.YAML, sortOutput)); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java index 3c1d2fdb2e70..511d63a5923c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java @@ -1074,7 +1074,7 @@ public CodegenParameter fromRequestBody(RequestBody body, Set imports, S // This is a model, so should only have an example if explicitly // defined. if (codegenParameter.vendorExtensions != null && codegenParameter.vendorExtensions.containsKey("x-example")) { - codegenParameter.example = Json.pretty(codegenParameter.vendorExtensions.get("x-example")); + setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (!codegenParameter.required) { //mandatory parameter use the example in the yaml. if no example, it is also null. codegenParameter.example = null; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java index 33fd1a957e92..7b40e034c7ba 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java @@ -1026,7 +1026,7 @@ public CodegenParameter fromRequestBody(RequestBody body, Set imports, S // This is a model, so should only have an example if explicitly // defined. if (codegenParameter.vendorExtensions != null && codegenParameter.vendorExtensions.containsKey("x-example")) { - codegenParameter.example = Json.pretty(codegenParameter.vendorExtensions.get("x-example")); + setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (!codegenParameter.required) { //mandatory parameter use the example in the yaml. if no example, it is also null. codegenParameter.example = null; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java index df0ed9077865..0cd48e5ae880 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java @@ -1083,7 +1083,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete @Override public void setParameterExampleValue(CodegenParameter codegenParameter, RequestBody requestBody) { if (codegenParameter.vendorExtensions != null && codegenParameter.vendorExtensions.containsKey("x-example")) { - codegenParameter.example = Json.pretty(codegenParameter.vendorExtensions.get("x-example")); + setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } Content content = requestBody.getContent(); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java index fd40a7456442..14c059bf0d40 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java @@ -1640,7 +1640,7 @@ public ExtendedCodegenModel(CodegenModel cm) { this.title = cm.title; this.description = cm.description; this.classVarName = cm.classVarName; - this.modelJson = cm.modelJson; + this.setModelJson(cm); this.dataType = cm.dataType; this.xmlPrefix = cm.xmlPrefix; this.xmlNamespace = cm.xmlNamespace; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNestjsServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNestjsServerCodegen.java index d9464c827d2d..8100d32f3cb1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNestjsServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNestjsServerCodegen.java @@ -342,10 +342,10 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap operations, L } if (operation.examples != null && !operation.examples.isEmpty()) { // Leave application/json* items only - for (Iterator> it = operation.examples.iterator(); it.hasNext(); ) { - final Map example = it.next(); - final String contentType = example.get("contentType"); - if (contentType == null || !contentType.startsWith("application/json")) { + for (Iterator> it = operation.examples.iterator(); it.hasNext(); ) { + final Map example = it.next(); + final Object contentType = example.get("contentType"); + if (!(contentType instanceof String) || !((String) contentType).startsWith("application/json")) { it.remove(); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/serializer/SerializerUtils.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/serializer/SerializerUtils.java index 0c95b539e30a..9f01f73cd1aa 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/serializer/SerializerUtils.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/serializer/SerializerUtils.java @@ -1,6 +1,6 @@ package org.openapitools.codegen.serializer; -import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.MapperFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.module.SimpleModule; @@ -14,6 +14,10 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.IOException; +import java.io.StringWriter; +import java.io.Writer; + public class SerializerUtils { private static final Logger LOGGER = LoggerFactory.getLogger(SerializerUtils.class); private static final String YAML_MINIMIZE_QUOTES_PROPERTY = "org.openapitools.codegen.utils.yaml.minimize.quotes"; @@ -29,25 +33,23 @@ public static String toYamlString(OpenAPI openAPI, boolean sortOutput) { } SimpleModule module = createModule(sortOutput); try { - ObjectMapper yamlMapper = Yaml.mapper().copy(); - // there is an unfortunate YAML condition where user inputs should be treated as strings (e.g. "1234_1234"), but in yaml this is a valid number and - // removing quotes forcibly by default means we are potentially doing a data conversion resulting in an unexpected change to the user's YAML outputs. - // We may allow for property-based enable/disable, retaining the default of enabled for backward compatibility. - if (minimizeYamlQuotes) { - ((YAMLFactory) yamlMapper.getFactory()).enable(YAMLGenerator.Feature.MINIMIZE_QUOTES); - } else { - ((YAMLFactory) yamlMapper.getFactory()).disable(YAMLGenerator.Feature.MINIMIZE_QUOTES); - } - return yamlMapper.registerModule(module) - .configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true) - .writeValueAsString(openAPI) - .replace("\r\n", "\n"); - } catch (JsonProcessingException e) { + StringWriter writer = new StringWriter(); + writeYaml(openAPI, writer, module); + return writer.toString().replace("\r\n", "\n"); + } catch (IOException e) { LOGGER.warn("Can not create yaml content", e); } return null; } + public static void writeYaml(OpenAPI openAPI, Writer writer) throws IOException { + writeYaml(openAPI, writer, createModule(false)); + } + + public static void writeYaml(OpenAPI openAPI, Writer writer, boolean sortOutput) throws IOException { + writeYaml(openAPI, writer, createModule(sortOutput)); + } + public static String toJsonString(OpenAPI openAPI) { return toJsonString(openAPI, false); } @@ -59,19 +61,54 @@ public static String toJsonString(OpenAPI openAPI, boolean sortOutput) { SimpleModule module = createModule(sortOutput); try { - return Json.mapper() - .copy() - .registerModule(module) - .configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true) - .writerWithDefaultPrettyPrinter() - .writeValueAsString(openAPI) - .replace("\r\n", "\n"); - } catch (JsonProcessingException e) { + StringWriter writer = new StringWriter(); + writeJson(openAPI, writer, module); + return writer.toString().replace("\r\n", "\n"); + } catch (IOException e) { LOGGER.warn("Can not create json content", e); } return null; } + public static void writeJson(OpenAPI openAPI, Writer writer) throws IOException { + writeJson(openAPI, writer, createModule(false)); + } + + public static void writeJson(OpenAPI openAPI, Writer writer, boolean sortOutput) throws IOException { + writeJson(openAPI, writer, createModule(sortOutput)); + } + + private static void writeYaml(OpenAPI openAPI, Writer writer, SimpleModule module) throws IOException { + if (openAPI == null) { + return; + } + ObjectMapper yamlMapper = Yaml.mapper().copy(); + yamlMapper.getFactory().disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET); + // there is an unfortunate YAML condition where user inputs should be treated as strings (e.g. "1234_1234"), but in yaml this is a valid number and + // removing quotes forcibly by default means we are potentially doing a data conversion resulting in an unexpected change to the user's YAML outputs. + // We may allow for property-based enable/disable, retaining the default of enabled for backward compatibility. + if (minimizeYamlQuotes) { + ((YAMLFactory) yamlMapper.getFactory()).enable(YAMLGenerator.Feature.MINIMIZE_QUOTES); + } else { + ((YAMLFactory) yamlMapper.getFactory()).disable(YAMLGenerator.Feature.MINIMIZE_QUOTES); + } + yamlMapper.registerModule(module) + .configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true) + .writeValue(writer, openAPI); + } + + private static void writeJson(OpenAPI openAPI, Writer writer, SimpleModule module) throws IOException { + if (openAPI == null) { + return; + } + ObjectMapper jsonMapper = Json.mapper().copy(); + jsonMapper.getFactory().disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET); + jsonMapper.registerModule(module) + .configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true) + .writerWithDefaultPrettyPrinter() + .writeValue(writer, openAPI); + } + private static SimpleModule createModule(boolean sortOutput) { SimpleModule module = new SimpleModule("OpenAPIModule"); module.addSerializer(OpenAPI.class, new OpenAPISerializer()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/MustacheEngineAdapter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/MustacheEngineAdapter.java index fff6b7441ebf..f3988afd2d3b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/MustacheEngineAdapter.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/MustacheEngineAdapter.java @@ -30,6 +30,7 @@ import java.io.Reader; import java.io.StringReader; import java.io.StringWriter; +import java.io.Writer; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -77,6 +78,13 @@ public String getIdentifier() { */ @Override public String compileTemplate(TemplatingExecutor executor, Map bundle, String templateFile) throws IOException { + StringWriter out = new StringWriter(); + writeTemplate(executor, bundle, templateFile, out); + return out.toString(); + } + + @Override + public void writeTemplate(TemplatingExecutor executor, Map bundle, String templateFile, Writer writer) throws IOException { // Each executor gets its own compiled-template cache. computeIfAbsent is atomic, so two threads // racing on the same executor key will share one inner map rather than creating two separate ones. ConcurrentHashMap cache = @@ -93,7 +101,6 @@ public String compileTemplate(TemplatingExecutor executor, Map b .compile(executor.getFullTemplateContents(templateFile)); cache.put(templateFile, tmpl); } - StringWriter out = new StringWriter(); // the value of bundle[MUSTACHE_PARENT_CONTEXT] is used a parent content in mustache. // See description in https://mustache.github.io/mustache.5.html#Variables @@ -104,8 +111,7 @@ public String compileTemplate(TemplatingExecutor executor, Map b // avoid NPE parent = new Object(); } - tmpl.execute(bundle, parent, out); - return out.toString(); + tmpl.execute(bundle, parent, writer); } @SuppressWarnings("java:S108") // catch-all is expected, and is later thrown diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java new file mode 100644 index 000000000000..ac48f7fbb7e9 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java @@ -0,0 +1,63 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.json.JsonMapper; +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Writes JSON-capable template values without requiring JSON trees to be + * materialized as strings first. + */ +public class JsonOutputLambda implements Mustache.Lambda { + private static final ObjectMapper JSON_MAPPER = JsonMapper.builder() + .disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET) + .build(); + + private final String value; + private final Object jsonValue; + + public JsonOutputLambda(String value) { + this.value = value; + this.jsonValue = null; + } + + public JsonOutputLambda(JsonNode jsonNode) { + this((Object) jsonNode); + } + + public JsonOutputLambda(Object jsonValue) { + this.value = null; + this.jsonValue = jsonValue; + } + + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + if (jsonValue != null) { + JSON_MAPPER.writerWithDefaultPrettyPrinter().writeValue(writer, jsonValue); + } else if (value != null) { + writer.write(value); + } + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OpenApiSpecOutputLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OpenApiSpecOutputLambda.java new file mode 100644 index 000000000000..cc99a0af706f --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OpenApiSpecOutputLambda.java @@ -0,0 +1,59 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; +import io.swagger.v3.oas.models.OpenAPI; +import org.openapitools.codegen.serializer.SerializerUtils; + +import java.io.IOException; +import java.io.Writer; + +/** + * Writes the OpenAPI document to template output without materializing the full + * YAML/JSON document as a string first. + */ +public class OpenApiSpecOutputLambda implements Mustache.Lambda { + private final OpenAPI openAPI; + private final Format format; + private final boolean sortOutput; + + public OpenApiSpecOutputLambda(OpenAPI openAPI, Format format) { + this(openAPI, format, false); + } + + public OpenApiSpecOutputLambda(OpenAPI openAPI, Format format, boolean sortOutput) { + this.openAPI = openAPI; + this.format = format; + this.sortOutput = sortOutput; + } + + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + if (format == Format.JSON) { + SerializerUtils.writeJson(openAPI, writer, sortOutput); + } else { + SerializerUtils.writeYaml(openAPI, writer, sortOutput); + } + } + + public enum Format { + JSON, + YAML + } +} diff --git a/modules/openapi-generator/src/main/resources/Ada/openapi.mustache b/modules/openapi-generator/src/main/resources/Ada/openapi.mustache index 7710186d9d5c..b3cea7138e05 100644 --- a/modules/openapi-generator/src/main/resources/Ada/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/Ada/openapi.mustache @@ -1 +1 @@ -{{{openapi-json}}} \ No newline at end of file +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/Groovy/README.mustache b/modules/openapi-generator/src/main/resources/Groovy/README.mustache index 12274c7a50e7..0a1fd563f35d 100644 --- a/modules/openapi-generator/src/main/resources/Groovy/README.mustache +++ b/modules/openapi-generator/src/main/resources/Groovy/README.mustache @@ -43,7 +43,7 @@ Then, run: {{#apiInfo}}{{#apis}}{{#-first}}{{#operations}}{{#operation}}{{#-first}} ```groovy def apiInstance = new {{classname}}() -{{#allParams}}def {{paramName}} = {{{example}}} // {{{dataType}}} | {{{description}}} +{{#allParams}}def {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} apiInstance.{{{operationId}}}({{#allParams}}{{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) diff --git a/modules/openapi-generator/src/main/resources/Java/README.mustache b/modules/openapi-generator/src/main/resources/Java/README.mustache index 157c8b6e03bd..73cd74433d4d 100644 --- a/modules/openapi-generator/src/main/resources/Java/README.mustache +++ b/modules/openapi-generator/src/main/resources/Java/README.mustache @@ -168,7 +168,7 @@ public class {{{classname}}}Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/Java/api_doc.mustache b/modules/openapi-generator/src/main/resources/Java/api_doc.mustache index 3d3203957e62..d0e275de562a 100644 --- a/modules/openapi-generator/src/main/resources/Java/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Java/api_doc.mustache @@ -57,7 +57,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/apache-httpclient/README.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/apache-httpclient/README.mustache index b50e7db085c2..c69ea5ea3aaa 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/apache-httpclient/README.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/apache-httpclient/README.mustache @@ -129,7 +129,7 @@ public class {{{classname}}}Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{returnType}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/api_doc.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/api_doc.mustache index 26c98508ea1d..c617f37d1651 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/api_doc.mustache @@ -65,7 +65,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{^vendorExtensions.x-group-parameters}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/api_doc.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/api_doc.mustache index 26c98508ea1d..c617f37d1651 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/api_doc.mustache @@ -65,7 +65,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{^vendorExtensions.x-group-parameters}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/native/README.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/native/README.mustache index 2c0ca32e9e12..4d3f7ba97aac 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/native/README.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/native/README.mustache @@ -97,7 +97,7 @@ public class {{{classname}}}Example { // overriding the host and port, timeout, etc. {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{^vendorExtensions.x-group-parameters}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/native/api_doc.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/native/api_doc.mustache index eb6ca1dd1e4c..a1b82102fd52 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/native/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/native/api_doc.mustache @@ -67,7 +67,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{^vendorExtensions.x-group-parameters}} @@ -188,7 +188,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{^vendorExtensions.x-group-parameters}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/README.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/README.mustache index de3afa6c1875..da49ad909ef4 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/README.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/README.mustache @@ -123,7 +123,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}{{^vendorExtensions.x-group-parameters}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-group-parameters}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}){{#optionalParams}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/api_doc.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/api_doc.mustache index dea75bd2b98e..cc0441e8e674 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/api_doc.mustache @@ -59,7 +59,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}{{^vendorExtensions.x-group-parameters}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{/vendorExtensions.x-group-parameters}}{{#vendorExtensions.x-group-parameters}}({{#requiredParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/requiredParams}}){{#optionalParams}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/restclient/README.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/restclient/README.mustache index ec6244a82dcf..aa47b6a16075 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/restclient/README.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/restclient/README.mustache @@ -136,7 +136,7 @@ public class {{{classname}}}Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/vertx/README.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/vertx/README.mustache index a95445605ed4..64817136cc4f 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/vertx/README.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/vertx/README.mustache @@ -173,7 +173,7 @@ public class {{{classname}}}Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/Java/openapi.mustache b/modules/openapi-generator/src/main/resources/Java/openapi.mustache index 34fbb53f3317..9b4bdc692e6a 100644 --- a/modules/openapi-generator/src/main/resources/Java/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/Java/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} diff --git a/modules/openapi-generator/src/main/resources/JavaInflector/openapi.mustache b/modules/openapi-generator/src/main/resources/JavaInflector/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/JavaInflector/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaInflector/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/openapi.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaPlayFramework/openapi.mustache b/modules/openapi-generator/src/main/resources/JavaPlayFramework/openapi.mustache index 7710186d9d5c..b3cea7138e05 100644 --- a/modules/openapi-generator/src/main/resources/JavaPlayFramework/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaPlayFramework/openapi.mustache @@ -1 +1 @@ -{{{openapi-json}}} \ No newline at end of file +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache index 1f72a330ef62..1261a1db8f8e 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{{example}}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/openapi.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaVertXServer/openapi.mustache b/modules/openapi-generator/src/main/resources/JavaVertXServer/openapi.mustache index 7710186d9d5c..b3cea7138e05 100644 --- a/modules/openapi-generator/src/main/resources/JavaVertXServer/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaVertXServer/openapi.mustache @@ -1 +1 @@ -{{{openapi-json}}} \ No newline at end of file +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaVertXWebServer/supportFiles/openapi.mustache b/modules/openapi-generator/src/main/resources/JavaVertXWebServer/supportFiles/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/JavaVertXWebServer/supportFiles/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/JavaVertXWebServer/supportFiles/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/Javascript-Apollo/README.mustache b/modules/openapi-generator/src/main/resources/Javascript-Apollo/README.mustache index 43840d5568b0..5f07886de2c0 100644 --- a/modules/openapi-generator/src/main/resources/Javascript-Apollo/README.mustache +++ b/modules/openapi-generator/src/main/resources/Javascript-Apollo/README.mustache @@ -143,13 +143,13 @@ var {{{name}}} = defaultClient.authentications['{{{name}}}']; var api = new {{{moduleName}}}.{{{classname}}}() {{#hasParams}} {{#requiredParams}} -var {{{paramName}}} = {{{example}}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} +var {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} {{/requiredParams}} {{#optionalParams}} {{#-first}} var opts = { {{/-first}} - '{{{paramName}}}': {{{example}}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} + '{{{paramName}}}': {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} {{#-last}} }; {{/-last}} diff --git a/modules/openapi-generator/src/main/resources/Javascript-Apollo/api_doc.mustache b/modules/openapi-generator/src/main/resources/Javascript-Apollo/api_doc.mustache index 0a68747b73d7..b5c63be5c409 100644 --- a/modules/openapi-generator/src/main/resources/Javascript-Apollo/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Javascript-Apollo/api_doc.mustache @@ -57,13 +57,13 @@ let {{{name}}} = defaultClient.authentications['{{{name}}}']; let apiInstance = new {{{moduleName}}}.{{{classname}}}(); {{#requiredParams}} -let {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} +let {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/requiredParams}} {{#optionalParams}} {{#-first}} let opts = { {{/-first}} - '{{{paramName}}}': {{{example}}}{{^-last}},{{/-last}} // {{{dataType}}} | {{{description}}} + '{{{paramName}}}': {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} // {{{dataType}}} | {{{description}}} {{#-last}} }; {{/-last}} diff --git a/modules/openapi-generator/src/main/resources/Javascript/README.mustache b/modules/openapi-generator/src/main/resources/Javascript/README.mustache index 31a80650c02f..8666f83f62b1 100644 --- a/modules/openapi-generator/src/main/resources/Javascript/README.mustache +++ b/modules/openapi-generator/src/main/resources/Javascript/README.mustache @@ -143,13 +143,13 @@ var {{{name}}} = defaultClient.authentications['{{{name}}}']; var api = new {{{moduleName}}}.{{{classname}}}() {{#hasParams}} {{#requiredParams}} -var {{{paramName}}} = {{{example}}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} +var {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} {{/requiredParams}} {{#optionalParams}} {{#-first}} var opts = { {{/-first}} - '{{{paramName}}}': {{{example}}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} + '{{{paramName}}}': {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{description}}} {{#-last}} }; {{/-last}} diff --git a/modules/openapi-generator/src/main/resources/Javascript/api_doc.mustache b/modules/openapi-generator/src/main/resources/Javascript/api_doc.mustache index 0a68747b73d7..b5c63be5c409 100644 --- a/modules/openapi-generator/src/main/resources/Javascript/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/Javascript/api_doc.mustache @@ -57,13 +57,13 @@ let {{{name}}} = defaultClient.authentications['{{{name}}}']; let apiInstance = new {{{moduleName}}}.{{{classname}}}(); {{#requiredParams}} -let {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} +let {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/requiredParams}} {{#optionalParams}} {{#-first}} let opts = { {{/-first}} - '{{{paramName}}}': {{{example}}}{{^-last}},{{/-last}} // {{{dataType}}} | {{{description}}} + '{{{paramName}}}': {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} // {{{dataType}}} | {{{description}}} {{#-last}} }; {{/-last}} diff --git a/modules/openapi-generator/src/main/resources/android/README.mustache b/modules/openapi-generator/src/main/resources/android/README.mustache index 734209cc4af1..ae74816f71fe 100644 --- a/modules/openapi-generator/src/main/resources/android/README.mustache +++ b/modules/openapi-generator/src/main/resources/android/README.mustache @@ -65,7 +65,7 @@ public class {{{classname}}}Example { public static void main(String[] args) { {{{classname}}} apiInstance = new {{{classname}}}(); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/android/api_doc.mustache b/modules/openapi-generator/src/main/resources/android/api_doc.mustache index be7bb2701cb0..ca1ae146e67b 100644 --- a/modules/openapi-generator/src/main/resources/android/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/android/api_doc.mustache @@ -28,7 +28,7 @@ Method | HTTP request | Description {{{classname}}} apiInstance = new {{{classname}}}(); {{#allParams}} -{{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} +{{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/apex/README_ant.mustache b/modules/openapi-generator/src/main/resources/apex/README_ant.mustache index df0721a3950a..135aeb59978c 100644 --- a/modules/openapi-generator/src/main/resources/apex/README_ant.mustache +++ b/modules/openapi-generator/src/main/resources/apex/README_ant.mustache @@ -124,7 +124,7 @@ OAS.OAuth {{{name}}} = (OAS.OAuth) client.getAuthentication('{{{name}}}'); Map params = new Map{ {{#allParams}} - '{{{paramName}}}' => {{{example}}}{{^-last}},{{/-last}} + '{{{paramName}}}' => {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{/allParams}} }; {{/hasParams}} diff --git a/modules/openapi-generator/src/main/resources/apex/README_sfdx.mustache b/modules/openapi-generator/src/main/resources/apex/README_sfdx.mustache index 8292700cf1a7..db69c840a0e9 100644 --- a/modules/openapi-generator/src/main/resources/apex/README_sfdx.mustache +++ b/modules/openapi-generator/src/main/resources/apex/README_sfdx.mustache @@ -56,7 +56,7 @@ ApiKeyAuth {{{name}}} = (ApiKeyAuth) client.getAuthentication('{{{name}}}'); Map params = new Map{ {{#allParams}} - '{{{paramName}}}' => {{{example}}}{{^-last}},{{/-last}} + '{{{paramName}}}' => {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{/allParams}} }; {{/hasParams}} diff --git a/modules/openapi-generator/src/main/resources/apex/api_doc.mustache b/modules/openapi-generator/src/main/resources/apex/api_doc.mustache index a63dcbd9a714..0c5c203f7673 100644 --- a/modules/openapi-generator/src/main/resources/apex/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/apex/api_doc.mustache @@ -46,7 +46,7 @@ OAS.OAuth {{{name}}} = (OAS.OAuth) client.getAuthentication('{{{name}}}'); Map params = new Map{ {{#allParams}} - '{{{paramName}}}' => {{{example}}}{{^-last}},{{/-last}} + '{{{paramName}}}' => {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{/allParams}} }; {{/hasParams}} diff --git a/modules/openapi-generator/src/main/resources/apex/api_test.mustache b/modules/openapi-generator/src/main/resources/apex/api_test.mustache index 647a672ab0b9..4f42b70bff74 100644 --- a/modules/openapi-generator/src/main/resources/apex/api_test.mustache +++ b/modules/openapi-generator/src/main/resources/apex/api_test.mustache @@ -23,7 +23,7 @@ private class {{classname}}Test { Map params = new Map{ {{#allParams}} - '{{paramName}}' => {{{example}}}{{^-last}},{{/-last}} + '{{paramName}}' => {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{/allParams}} }; {{/hasParams}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache index f56d6cdbc872..bf311313d4b5 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache @@ -49,7 +49,7 @@ namespace {{packageName}}.Controllers {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{{example}}}"; + exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/wwwroot/openapi-original.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/wwwroot/openapi-original.mustache index 2c1b461cf000..51ea03078039 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/wwwroot/openapi-original.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/wwwroot/openapi-original.mustache @@ -1 +1 @@ -{{{openapi-json}}} +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache index febea6b62adf..e512d4a11b31 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache @@ -73,7 +73,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{{example}}}"; + exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/wwwroot/openapi-original.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/wwwroot/openapi-original.mustache index 2c1b461cf000..51ea03078039 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/wwwroot/openapi-original.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/wwwroot/openapi-original.mustache @@ -1 +1 @@ -{{{openapi-json}}} +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache index 12b9678d283d..5770850b2ea1 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache @@ -80,7 +80,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{{example}}}"; + exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/wwwroot/openapi-original.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/wwwroot/openapi-original.mustache index 2c1b461cf000..51ea03078039 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/wwwroot/openapi-original.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/wwwroot/openapi-original.mustache @@ -1 +1 @@ -{{{openapi-json}}} +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} diff --git a/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache b/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache index 57751c84c69c..b0a6b77ab93c 100644 --- a/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache +++ b/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache @@ -56,8 +56,8 @@ h4. Responses || Message | {{message}} | || Response Type | {{{dataType}}} | || Response Model | [{{dataType}} Model|#{{dataType}}ModelAnchor|Jump to model] | - || Response Schema | {code:collapse=true}{{{jsonSchema}}}{code}{{#examples}}{code:title=Example {{{contentType}}} |collapse=true }{{{example}}}{code}{{/examples}} | - {{#hasExamples}}{{#examples}}|| Example {{-index}} | {code:title=Example {{{contentType}}} |collapse=true }{{{example}}}{code} |{{/examples}}{{/hasExamples}} + || Response Schema | {code:collapse=true}{{{jsonSchema}}}{code}{{#examples}}{code:title=Example {{{contentType}}} |collapse=true }{{#lambdaExample}}{{/lambdaExample}}{code}{{/examples}} | + {{#hasExamples}}{{#examples}}|| Example {{-index}} | {code:title=Example {{{contentType}}} |collapse=true }{{#lambdaExample}}{{/lambdaExample}}{code} |{{/examples}}{{/hasExamples}} {{/responses}} {panel} diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache index eae2369db139..05046cd63564 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache @@ -72,7 +72,7 @@ namespace Example {{/useHttpClient}} {{#allParams}} {{#isPrimitiveType}} - var {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/isPrimitiveType}} {{^isPrimitiveType}} var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache index 50988d30ba44..6736886839a2 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache @@ -73,7 +73,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{{example}}}"; + exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/csharp/README.mustache b/modules/openapi-generator/src/main/resources/csharp/README.mustache index 0ef94566a1db..e13c0753e591 100644 --- a/modules/openapi-generator/src/main/resources/csharp/README.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/README.mustache @@ -189,7 +189,7 @@ namespace Example {{/useHttpClient}} {{#allParams}} {{#isPrimitiveType}} - var {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/isPrimitiveType}} {{^isPrimitiveType}} var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} diff --git a/modules/openapi-generator/src/main/resources/csharp/api_doc.mustache b/modules/openapi-generator/src/main/resources/csharp/api_doc.mustache index ca85bfa7ffaa..a30a1838d627 100644 --- a/modules/openapi-generator/src/main/resources/csharp/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/api_doc.mustache @@ -76,7 +76,7 @@ namespace Example {{/useHttpClient}} {{#allParams}} {{#isPrimitiveType}} - var {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/isPrimitiveType}} {{^isPrimitiveType}} var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} diff --git a/modules/openapi-generator/src/main/resources/csharp/libraries/unityWebRequest/README.mustache b/modules/openapi-generator/src/main/resources/csharp/libraries/unityWebRequest/README.mustache index e94bc78c600d..ad78a483b057 100644 --- a/modules/openapi-generator/src/main/resources/csharp/libraries/unityWebRequest/README.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/libraries/unityWebRequest/README.mustache @@ -96,7 +96,7 @@ namespace {{packageName}}Example var apiInstance = new {{classname}}(config); {{#allParams}} {{#isPrimitiveType}} - var {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/isPrimitiveType}} {{^isPrimitiveType}} var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} diff --git a/modules/openapi-generator/src/main/resources/csharp/openapi.mustache b/modules/openapi-generator/src/main/resources/csharp/openapi.mustache index 34fbb53f3317..9b4bdc692e6a 100644 --- a/modules/openapi-generator/src/main/resources/csharp/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/README.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/README.mustache index bed436a556b8..e592f8db1fad 100644 --- a/modules/openapi-generator/src/main/resources/dart/libraries/dio/README.mustache +++ b/modules/openapi-generator/src/main/resources/dart/libraries/dio/README.mustache @@ -66,7 +66,7 @@ import 'package:{{pubName}}/{{pubName}}.dart'; final api = {{clientName}}().get{{classname}}(); {{#allParams}} -final {{{dataType}}} {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{description}}} +final {{{dataType}}} {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_doc.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_doc.mustache index 06c2118ad417..9790f910ad75 100644 --- a/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_doc.mustache @@ -47,7 +47,7 @@ import 'package:{{pubName}}/api.dart'; final api = {{clientName}}().get{{classname}}(); {{#allParams}} -final {{{dataType}}} {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{description}}} +final {{{dataType}}} {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/dart2/README.mustache b/modules/openapi-generator/src/main/resources/dart2/README.mustache index 48c2a9f730e8..fb7d885a2fee 100644 --- a/modules/openapi-generator/src/main/resources/dart2/README.mustache +++ b/modules/openapi-generator/src/main/resources/dart2/README.mustache @@ -83,7 +83,7 @@ import 'package:{{{pubName}}}/api.dart'; final api_instance = {{{classname}}}(); {{#allParams}} -final {{{paramName}}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{dataType}}}(){{/isBodyParam}}{{^isBodyParam}}{{{example}}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; // {{{dataType}}} | {{{description}}} +final {{{paramName}}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{dataType}}}(){{/isBodyParam}}{{^isBodyParam}}{{#lambdaExample}}{{/lambdaExample}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/dart2/api_doc.mustache b/modules/openapi-generator/src/main/resources/dart2/api_doc.mustache index 3332ff1f205d..f9bdf1631078 100644 --- a/modules/openapi-generator/src/main/resources/dart2/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/dart2/api_doc.mustache @@ -57,7 +57,7 @@ import 'package:{{{pubName}}}/api.dart'; final api_instance = {{{classname}}}(); {{#allParams}} -final {{{paramName}}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{dataType}}}(){{/isBodyParam}}{{^isBodyParam}}{{{example}}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; // {{{dataType}}} | {{{description}}} +final {{{paramName}}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{dataType}}}(){{/isBodyParam}}{{^isBodyParam}}{{#lambdaExample}}{{/lambdaExample}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/erlang-server-deprecated/openapi.mustache b/modules/openapi-generator/src/main/resources/erlang-server-deprecated/openapi.mustache index 2c1b461cf000..51ea03078039 100644 --- a/modules/openapi-generator/src/main/resources/erlang-server-deprecated/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/erlang-server-deprecated/openapi.mustache @@ -1 +1 @@ -{{{openapi-json}}} +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} diff --git a/modules/openapi-generator/src/main/resources/erlang-server/openapi.mustache b/modules/openapi-generator/src/main/resources/erlang-server/openapi.mustache index 2c1b461cf000..51ea03078039 100644 --- a/modules/openapi-generator/src/main/resources/erlang-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/erlang-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-json}}} +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} diff --git a/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache b/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache index 855b0771c286..767b7ccaa025 100644 --- a/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache +++ b/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache @@ -31,7 +31,7 @@ module {{classname}}HandlerTestsHelper = {{/-first}} {{/consumes}} {{#requestBodyExamples}} - {{operationId}}Body <- WebUtility.HtmlDecode "{{example}}" + {{operationId}}Body <- WebUtility.HtmlDecode "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}" {{operationId}}Examples <- {{operationId}}Examples.Add("{{contentType}}", {{operationId}}Body) {{/requestBodyExamples}} @@ -43,4 +43,4 @@ module {{classname}}HandlerTestsHelper = {{/-first}} {{/consumes}} {{/operation}} - {{/operations}} \ No newline at end of file + {{/operations}} diff --git a/modules/openapi-generator/src/main/resources/go-echo-server/openapi.mustache b/modules/openapi-generator/src/main/resources/go-echo-server/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/go-echo-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/go-echo-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/go-gin-server/openapi.mustache b/modules/openapi-generator/src/main/resources/go-gin-server/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/go-gin-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/go-gin-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/go-server/openapi.mustache b/modules/openapi-generator/src/main/resources/go-server/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/go-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/go/openapi.mustache b/modules/openapi-generator/src/main/resources/go/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/go/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/go/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache b/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache index 1dfe79166d7d..c428c89e2beb 100644 --- a/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache +++ b/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache @@ -10,7 +10,7 @@ export default { // @return {{returnType}} {{operationId}}: ({{#allParams}}${{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) => { return { - {{#allParams}}"{{paramName}}": "{{example}}"{{^-last}}, + {{#allParams}}"{{paramName}}": "{{#lambdaExample}}{{/lambdaExample}}"{{^-last}}, {{/-last}}{{/allParams}} }; }, @@ -24,7 +24,7 @@ export default { // @return {{returnType}} {{operationId}}: ({{#allParams}}${{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) => { return { - {{#allParams}}"{{paramName}}": "{{example}}"{{^-last}}, + {{#allParams}}"{{paramName}}": "{{#lambdaExample}}{{/lambdaExample}}"{{^-last}}, {{/-last}}{{/allParams}} }; }, diff --git a/modules/openapi-generator/src/main/resources/haskell-http-client/openapi.mustache b/modules/openapi-generator/src/main/resources/haskell-http-client/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/haskell-http-client/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/haskell-http-client/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache b/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache index 86b673b15b5d..b1ca12be0472 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache @@ -115,7 +115,7 @@ {{#examples}}

Example data

Content-Type: {{{contentType}}}
-
{{{example}}}
+
{{#lambdaExample}}{{/lambdaExample}}
{{/examples}} {{/hasExamples}} @@ -138,7 +138,7 @@ {{#examples}}

Example data

Content-Type: {{{contentType}}}
-
{{example}}
+
{{#lambdaExample}}{{/lambdaExample}}
{{/examples}} {{/responses}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache index a5774592de0a..3327708e0f63 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache @@ -147,13 +147,13 @@ var defs = {} {{#models}} {{#model}} - defs["{{name}}"] = {{{modelJson}}}; + defs["{{name}}"] = {{#lambdaModelJson}}{{/lambdaModelJson}}; {{/model}} {{/models}} {{#aliasModels}} {{#model}} - defs["{{name}}"] = {{{modelJson}}}; + defs["{{name}}"] = {{#lambdaModelJson}}{{/lambdaModelJson}}; {{/model}} {{/aliasModels}} @@ -493,7 +493,7 @@ {{#examples}}
-
{{example}}
+
{{#lambdaExample}}{{/lambdaExample}}
{{/examples}} {{#hasHeaders}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_android.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_android.mustache index 62ee30b5cf9a..690039456ea5 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_android.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_android.mustache @@ -4,7 +4,7 @@ public class {{{classname}}}Example { public static void main(String[] args) { {{{classname}}} apiInstance = new {{{classname}}}(); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{unescapedDescription}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{unescapedDescription}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_csharp.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_csharp.mustache index bca3fb546a23..b63f8e99ef90 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_csharp.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_csharp.mustache @@ -27,7 +27,7 @@ namespace Example var apiInstance = new {{classname}}(); {{#allParams}} {{#isPrimitiveType}} - var {{paramName}} = {{{example}}}; // {{{dataType}}} | {{{unescapedDescription}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{unescapedDescription}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/isPrimitiveType}} {{^isPrimitiveType}} var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{unescapedDescription}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache index da2bd1ebb460..ae05b9b5453a 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache @@ -3,4 +3,4 @@ curl -X {{vendorExtensions.x-codegen-http-method-upper-case}}{{#authMethods}} \ -H "Accept: {{#produces}}{{{mediaType}}}{{^-last}},{{/-last}}{{/produces}}"{{/hasProduces}}{{#hasConsumes}} \ -H "Content-Type: {{#consumes}}{{{mediaType}}}{{^-last}},{{/-last}}{{/consumes}}"{{/hasConsumes}} \ "{{basePath}}{{path}}{{#hasQueryParams}}?{{#queryParams}}{{^-first}}&{{/-first}}{{baseName}}={{{example}}}{{/queryParams}}{{/hasQueryParams}}"{{#requestBodyExamples}} \ - -d '{{example}}'{{/requestBodyExamples}} + -d '{{#lambdaExample}}{{/lambdaExample}}'{{/requestBodyExamples}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_java.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_java.mustache index 22c4c82f020a..6192a3473a13 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_java.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_java.mustache @@ -33,7 +33,7 @@ public class {{{classname}}}Example { // Create an instance of the API class {{{classname}}} apiInstance = new {{{classname}}}(); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{unescapedDescription}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{unescapedDescription}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_js.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_js.mustache index 5100cda4260f..34b5a412b353 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_js.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_js.mustache @@ -24,13 +24,13 @@ var {{{name}}} = defaultClient.authentications['{{{name}}}']; var api = new {{{jsModuleName}}}.{{{classname}}}(){{#hasParams}} {{#hasRequiredParams}} {{#requiredParams}} -var {{{paramName}}} = {{{example}}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{unescapedDescription}}} +var {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{=< >=}}{<&dataType>}<={{ }}=> {{{unescapedDescription}}} {{/requiredParams}} {{/hasRequiredParams}} {{#hasOptionalParams}} var opts = { {{#optionalParams}} - '{{{paramName}}}': {{{example}}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{unescapedDescription}}} + '{{{paramName}}}': {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} // {{=< >=}}{<&dataType>}<={{ }}=> {{{unescapedDescription}}} {{/optionalParams}} }; {{/hasOptionalParams}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_objc.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_objc.mustache index 15d8845b9bb6..f7369a54368d 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_objc.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_objc.mustache @@ -22,7 +22,7 @@ // Create an instance of the API class {{classname}} *apiInstance = [[{{classname}} alloc] init]; {{#allParams}} -{{{dataType}}} *{{paramName}} = {{{example}}}; // {{{unescapedDescription}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} +{{{dataType}}} *{{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{unescapedDescription}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} {{#summary}}// {{{.}}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_perl.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_perl.mustache index 5746b04f3fb9..07acfdcceae2 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_perl.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_perl.mustache @@ -20,7 +20,7 @@ ${{{perlModuleName}}}::Configuration::access_token = 'YOUR_ACCESS_TOKEN';{{/isOA # Create an instance of the API class my $api_instance = {{perlModuleName}}::{{classname}}->new(); -{{#allParams}}my ${{paramName}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{perlModuleName}}}::Object::{{dataType}}->new(){{/isBodyParam}}{{^isBodyParam}}{{{example}}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; # {{{dataType}}} | {{{unescapedDescription}}} +{{#allParams}}my ${{paramName}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{perlModuleName}}}::Object::{{dataType}}->new(){{/isBodyParam}}{{^isBodyParam}}{{#lambdaExample}}{{/lambdaExample}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; # {{{dataType}}} | {{{unescapedDescription}}} {{/allParams}} eval { diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_php.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_php.mustache index 68dc9d10b778..e8c32733d7f2 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_php.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_php.mustache @@ -19,7 +19,7 @@ require_once(__DIR__ . '/vendor/autoload.php'); // Create an instance of the API class $api_instance = new OpenAPITools\Client\Api\{{classname}}(); -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}} | {{{unescapedDescription}}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{unescapedDescription}}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_python.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_python.mustache index aa92efaaf5bf..9e28eccd6cdc 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_python.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_python.mustache @@ -22,7 +22,7 @@ from pprint import pprint # Create an instance of the API class api_instance = {{{pythonPackageName}}}.{{{classname}}}() -{{#allParams}}{{paramName}} = {{{example}}} # {{{dataType}}} | {{{unescapedDescription}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} +{{#allParams}}{{paramName}} = {{#lambdaExample}}{{/lambdaExample}} # {{{dataType}}} | {{{unescapedDescription}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} try: diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_rust.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_rust.mustache index 89a16ecc2063..178e52bf3908 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_rust.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_rust.mustache @@ -1,7 +1,7 @@ extern crate {{classname}}; pub fn main() { -{{#allParams}} let {{paramName}} = {{{example}}}; // {{{dataType}}} +{{#allParams}} let {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} {{/allParams}} let mut context = {{classname}}::Context::default(); diff --git a/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache b/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache index 1f72a330ef62..1261a1db8f8e 100644 --- a/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache +++ b/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{{example}}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} diff --git a/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache b/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache index 99e5f81bdb8f..e684d3427bf7 100644 --- a/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache +++ b/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}[{{{example}}}]{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}[{{#lambdaExample}}{{/lambdaExample}}]{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} diff --git a/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/mp/openapi.mustache b/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/mp/openapi.mustache index 34fbb53f3317..9b4bdc692e6a 100644 --- a/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/mp/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/mp/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} diff --git a/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/api_doc.mustache b/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/api_doc.mustache index 3d3203957e62..d0e275de562a 100644 --- a/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/api_doc.mustache @@ -57,7 +57,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/openapi.mustache b/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/openapi.mustache index 34fbb53f3317..9b4bdc692e6a 100644 --- a/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/java-helidon/client/libraries/se/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} diff --git a/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/api_doc.mustache b/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/api_doc.mustache index 3d3203957e62..d0e275de562a 100644 --- a/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/api_doc.mustache @@ -57,7 +57,7 @@ public class Example { {{{classname}}} apiInstance = new {{{classname}}}(defaultClient); {{#allParams}} - {{{dataType}}} {{{paramName}}} = {{{example}}}; // {{{dataType}}} | {{{description}}} + {{{dataType}}} {{{paramName}}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}{{{.}}} result = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}});{{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/openapi.mustache b/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/java-helidon/server/libraries/mp/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-helidon/server/openapi.mustache b/modules/openapi-generator/src/main/resources/java-helidon/server/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/java-helidon/server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/java-helidon/server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-micronaut/client/test/api_test.mustache b/modules/openapi-generator/src/main/resources/java-micronaut/client/test/api_test.mustache index dd43100b91bd..c676abf86d86 100644 --- a/modules/openapi-generator/src/main/resources/java-micronaut/client/test/api_test.mustache +++ b/modules/openapi-generator/src/main/resources/java-micronaut/client/test/api_test.mustache @@ -39,7 +39,7 @@ public class {{classname}}Test { public void {{operationId}}Test() { // given {{#allParams}} - {{{dataType}}} {{paramName}} = {{{example}}}; + {{{dataType}}} {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; {{/allParams}} // when diff --git a/modules/openapi-generator/src/main/resources/java-micronaut/server/controllerOperationBody.mustache b/modules/openapi-generator/src/main/resources/java-micronaut/server/controllerOperationBody.mustache index d16aa20f513a..97b440ce463a 100644 --- a/modules/openapi-generator/src/main/resources/java-micronaut/server/controllerOperationBody.mustache +++ b/modules/openapi-generator/src/main/resources/java-micronaut/server/controllerOperationBody.mustache @@ -12,7 +12,7 @@ {{!The body is generated to verify that example values are passed correctly}} {{#allParams}} {{^isFile}} - {{{dataType}}} {{paramName}}Expected = {{{example}}}; + {{{dataType}}} {{paramName}}Expected = {{#lambdaExample}}{{/lambdaExample}}; assert {{paramName}}.equals({{paramName}}Expected) : "The parameter {{paramName}} was expected to match its example value"; {{/isFile}} {{/allParams}} diff --git a/modules/openapi-generator/src/main/resources/java-micronaut/server/test/controller_test.mustache b/modules/openapi-generator/src/main/resources/java-micronaut/server/test/controller_test.mustache index 6e7fe03a61ca..5b0a15b84130 100644 --- a/modules/openapi-generator/src/main/resources/java-micronaut/server/test/controller_test.mustache +++ b/modules/openapi-generator/src/main/resources/java-micronaut/server/test/controller_test.mustache @@ -70,7 +70,7 @@ public class {{classname}}Test { void {{operationId}}MethodTest() { // given {{#allParams}} - {{{dataType}}} {{paramName}} = {{{example}}}; + {{{dataType}}} {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; {{/allParams}} // when @@ -103,14 +103,14 @@ public class {{classname}}Test { // given {{!Create the body}} {{#bodyParam}} - {{{dataType}}} body = {{{example}}}; + {{{dataType}}} body = {{#lambdaExample}}{{/lambdaExample}}; {{/bodyParam}} {{#formParams.0}} Map form = new HashMap(){{openbrace}}{{openbrace}} // Fill in the body form parameters {{#formParams}} {{^isFile}} - put("{{{baseName}}}", {{{example}}}); + put("{{{baseName}}}", {{#lambdaExample}}{{/lambdaExample}}); {{/isFile}} {{#isFile}} put("{{{baseName}}}", new FileReader(File.createTempFile("test", ".tmp"))); @@ -123,7 +123,7 @@ public class {{classname}}Test { MultipartBody body = MultipartBody.builder() // Create multipart body {{#bodyParams}} {{^isFile}} - .addPart("{{{baseName}}}", {{^isString}}String.valueOf({{/isString}}{{{example}}}{{^isString}}){{/isString}}) + .addPart("{{{baseName}}}", {{^isString}}String.valueOf({{/isString}}{{#lambdaExample}}{{/lambdaExample}}{{^isString}}){{/isString}}) {{/isFile}} {{#isFile}} {{#contentType}} @@ -141,28 +141,28 @@ public class {{classname}}Test { String uri = UriTemplate.of("{{{path}}}").expand(new HashMap{{^pathParams}}<>(){{/pathParams}}{{#pathParams.0}}(){{openbrace}}{{openbrace}} // Fill in the path variables {{#pathParams}} - put("{{{baseName}}}", {{{example}}}); + put("{{{baseName}}}", {{#lambdaExample}}{{/lambdaExample}}); {{/pathParams}} {{closebrace}}{{closebrace}}{{/pathParams.0}}); {{!Create the request with body and uri}} MutableHttpRequest request = HttpRequest.{{httpMethod}}{{#vendorExtensions.methodAllowsBody}}{{#bodyParam}}(uri, body){{/bodyParam}}{{#isMultipart}}{{^formParams}}(uri, body){{/formParams}}{{/isMultipart}}{{#formParams.0}}(uri, form){{/formParams.0}}{{^bodyParam}}{{^isMultipart}}{{^formParams}}(uri, null){{/formParams}}{{/isMultipart}}{{/bodyParam}}{{/vendorExtensions.methodAllowsBody}}{{^vendorExtensions.methodAllowsBody}}(uri){{/vendorExtensions.methodAllowsBody}}{{!Fill in all the request parameters}}{{#vendorExtensions.x-contentType}} .contentType("{{{vendorExtensions.x-contentType}}}"){{/vendorExtensions.x-contentType}}{{#vendorExtensions.x-accepts}} .accept("{{{vendorExtensions.x-accepts}}}"){{/vendorExtensions.x-accepts}}{{#headerParams}} - .header("{{{baseName}}}", {{^isString}}String.valueOf({{/isString}}{{{example}}}{{^isString}}){{/isString}}){{/headerParams}}{{#cookieParams}} - .cookie(Cookie.of("{{{baseName}}}", {{{example}}})){{/cookieParams}}; + .header("{{{baseName}}}", {{^isString}}String.valueOf({{/isString}}{{#lambdaExample}}{{/lambdaExample}}{{^isString}}){{/isString}}){{/headerParams}}{{#cookieParams}} + .cookie(Cookie.of("{{{baseName}}}", {{#lambdaExample}}{{/lambdaExample}})){{/cookieParams}}; {{!Fill in the query parameters}} {{#queryParams.0}} request.getParameters() {{#queryParams}} {{#isCollectionFormatMulti}} - .add("{{{baseName}}}", {{{example}}}){{#-last}};{{/-last}} // The query format should be multi + .add("{{{baseName}}}", {{#lambdaExample}}{{/lambdaExample}}){{#-last}};{{/-last}} // The query format should be multi {{/isCollectionFormatMulti}} {{#isDeepObject}} .add("{{{baseName}}}[property]", "value"){{#-last}};{{/-last}} // The query format should be deep-object {{/isDeepObject}} {{^isCollectionFormatMulti}} {{^isDeepObject}} - .add("{{{baseName}}}", {{^isString}}String.valueOf({{/isString}}{{{example}}}{{^isString}}){{/isString}}){{#-last}};{{/-last}} // The query parameter format should be {{collectionFormat}} + .add("{{{baseName}}}", {{^isString}}String.valueOf({{/isString}}{{#lambdaExample}}{{/lambdaExample}}{{^isString}}){{/isString}}){{#-last}};{{/-last}} // The query parameter format should be {{collectionFormat}} {{/isDeepObject}} {{/isCollectionFormatMulti}} {{/queryParams}} diff --git a/modules/openapi-generator/src/main/resources/java-pkmst/apiController.mustache b/modules/openapi-generator/src/main/resources/java-pkmst/apiController.mustache index 6d35cda248dd..afe57fba7236 100644 --- a/modules/openapi-generator/src/main/resources/java-pkmst/apiController.mustache +++ b/modules/openapi-generator/src/main/resources/java-pkmst/apiController.mustache @@ -89,7 +89,7 @@ public class {{classname}}Controller implements {{classname}} { {{#examples}} if (accept != null && accept.contains("{{{contentType}}}")) { - return new ResponseEntity<{{>returnTypes}}>(objectMapper.readValue("{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{{example}}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}", {{>exampleReturnTypes}}.class), HttpStatus.OK); + return new ResponseEntity<{{>returnTypes}}>(objectMapper.readValue("{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}", {{>exampleReturnTypes}}.class), HttpStatus.OK); } {{/examples}} diff --git a/modules/openapi-generator/src/main/resources/java-undertow-server/openapi.mustache b/modules/openapi-generator/src/main/resources/java-undertow-server/openapi.mustache index 7710186d9d5c..b3cea7138e05 100644 --- a/modules/openapi-generator/src/main/resources/java-undertow-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/java-undertow-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-json}}} \ No newline at end of file +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache b/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache index 1f72a330ef62..1261a1db8f8e 100644 --- a/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache +++ b/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{{example}}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/api_doc.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/api_doc.mustache index d8dcd68632cc..a9598cf80637 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/api_doc.mustache @@ -27,7 +27,7 @@ All URIs are relative to *{{basePath}}* {{! TODO: Auth method documentation examples}} val apiInstance = {{{classname}}}() {{#allParams}} -val {{{paramName}}} : {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} +val {{{paramName}}} : {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}val result : {{{returnType}}}{{#nullableReturnType}}?{{/nullableReturnType}} = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}){{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/api_test.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/api_test.mustache index 78ae85a01d03..79aa5f474f88 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/api_test.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/api_test.mustache @@ -19,7 +19,7 @@ class {{{classname}}}Test : ShouldSpec() { should("test {{{operationId}}}") { // uncomment below to test {{{operationId}}} {{#allParams}} - //val {{{paramName}}} : {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} + //val {{{paramName}}} : {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} //{{#returnType}}val result : {{{returnType}}}{{#nullableReturnType}}?{{/nullableReturnType}} = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}) {{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-retrofit2/api_doc.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-retrofit2/api_doc.mustache index f764206df126..d70654481564 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-retrofit2/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-retrofit2/api_doc.mustache @@ -35,7 +35,7 @@ apiClient.setBearerToken("TOKEN") {{/authMethods}} val webService = apiClient.createWebservice({{{classname}}}::class.java) {{#allParams}} -val {{{paramName}}} : {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} +val {{{paramName}}} : {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} {{#useCoroutines}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-volley/api_doc.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-volley/api_doc.mustache index f7bf73ae31d0..ffe01d064d05 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-volley/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-volley/api_doc.mustache @@ -35,7 +35,7 @@ apiClient.setBearerToken("TOKEN") {{/authMethods}} val webService = apiClient.createWebservice({{{classname}}}::class.java) {{#allParams}} -val {{{paramName}}} : {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} +val {{{paramName}}} : {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} {{#useCoroutines}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-misk/api_doc.mustache b/modules/openapi-generator/src/main/resources/kotlin-misk/api_doc.mustache index 6553762ac7cf..372b9483a2b9 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-misk/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-misk/api_doc.mustache @@ -27,7 +27,7 @@ Method | HTTP request | Description {{! TODO: Auth method documentation examples}} val apiInstance = {{{classname}}}() {{#allParams}} -val {{{paramName}}} : {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} +val {{{paramName}}} : {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}val result : {{{.}}} = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}){{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-server/api_doc.mustache b/modules/openapi-generator/src/main/resources/kotlin-server/api_doc.mustache index 6553762ac7cf..372b9483a2b9 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-server/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-server/api_doc.mustache @@ -27,7 +27,7 @@ Method | HTTP request | Description {{! TODO: Auth method documentation examples}} val apiInstance = {{{classname}}}() {{#allParams}} -val {{{paramName}}} : {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} +val {{{paramName}}} : {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} try { {{#returnType}}val result : {{{.}}} = {{/returnType}}apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}){{#returnType}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache index 323f266e8256..05d3fc10cbbf 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache @@ -1,8 +1,8 @@ val exampleContentType = "{{{contentType}}}" -val exampleContentString = """{{&example}}""" +val exampleContentString = """{{#lambdaExample}}{{/lambdaExample}}""" when (exampleContentType) { "application/json" -> call.respondText(exampleContentType, ContentType.Application.Json) "application/xml" -> call.respondText(exampleContentString, ContentType.Text.Xml) else -> call.respondText(exampleContentString) -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache index 477ffc2acda7..76f7d99c6031 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache @@ -1,8 +1,8 @@ val exampleContentType = "{{{contentType}}}" -val exampleContentString = """{{&example}}""" +val exampleContentString = """{{#lambdaExample}}{{/lambdaExample}}""" when (exampleContentType) { "application/json" -> call.respond(gson.fromJson(exampleContentString, Any::class.java)) "application/xml" -> call.respondText(exampleContentString, ContentType.Text.Xml) else -> call.respondText(exampleContentString) -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/methodBody.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/methodBody.mustache index 0a6660b342a8..6c94e39c4a98 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/methodBody.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/methodBody.mustache @@ -5,7 +5,7 @@ getRequest().ifPresent { request -> for (mediaType in MediaType.parseMediaTypes(request.getHeader("Accept"))) { {{/-first}} if (mediaType.isCompatibleWith(MediaType.valueOf("{{{contentType}}}"))) { - ApiUtil.setExampleResponse(request, "{{{contentType}}}", "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{{example}}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}") + ApiUtil.setExampleResponse(request, "{{{contentType}}}", "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}") break } {{#-last}} @@ -20,4 +20,4 @@ return {{#useResponseEntity}}ResponseEntity({{#returnSuccessCode}}HttpStatus.OK{ {{/reactive}} {{#reactive}} return {{#useResponseEntity}}ResponseEntity({{#returnSuccessCode}}HttpStatus.OK{{/returnSuccessCode}}{{^returnSuccessCode}}HttpStatus.NOT_IMPLEMENTED{{/returnSuccessCode}}){{/useResponseEntity}}{{^useResponseEntity}}TODO("Not yet implemented"){{/useResponseEntity}} -{{/reactive}} \ No newline at end of file +{{/reactive}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/openapi.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/nodejs-express-server/openapi.mustache b/modules/openapi-generator/src/main/resources/nodejs-express-server/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/nodejs-express-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/nodejs-express-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/objc/README.mustache b/modules/openapi-generator/src/main/resources/objc/README.mustache index a6e5624c18b6..128033a9a570 100644 --- a/modules/openapi-generator/src/main/resources/objc/README.mustache +++ b/modules/openapi-generator/src/main/resources/objc/README.mustache @@ -82,7 +82,7 @@ Please follow the [installation procedure](#installation--usage) and then run th {{/isOAuth}}{{/authMethods}} {{/hasAuthMethods}} -{{#allParams}}{{{dataType}}} *{{paramName}} = {{{example}}}; // {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} +{{#allParams}}{{{dataType}}} *{{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} {{classname}} *apiInstance = [[{{classname}} alloc] init]; diff --git a/modules/openapi-generator/src/main/resources/objc/api_doc.mustache b/modules/openapi-generator/src/main/resources/objc/api_doc.mustache index 9f972b196cb2..c5cb0c4df446 100644 --- a/modules/openapi-generator/src/main/resources/objc/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/objc/api_doc.mustache @@ -39,7 +39,7 @@ Method | HTTP request | Description {{/isOAuth}}{{/authMethods}} {{/hasAuthMethods}} -{{#allParams}}{{{dataType}}} {{paramName}} = {{{example}}}; // {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} +{{#allParams}}{{{dataType}}} {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} {{classname}}*apiInstance = [[{{classname}} alloc] init]; diff --git a/modules/openapi-generator/src/main/resources/openapi-yaml/openapi.mustache b/modules/openapi-generator/src/main/resources/openapi-yaml/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/openapi-yaml/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/openapi-yaml/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/perl/README.mustache b/modules/openapi-generator/src/main/resources/perl/README.mustache index e1bb94372b04..161a0a0e61df 100644 --- a/modules/openapi-generator/src/main/resources/perl/README.mustache +++ b/modules/openapi-generator/src/main/resources/perl/README.mustache @@ -286,7 +286,7 @@ my $api_instance = {{moduleName}}::{{classname}}->new( {{/hasAuthMethods}} ); -{{#allParams}}my ${{paramName}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{moduleName}}}::Object::{{dataType}}->new(){{/isBodyParam}}{{^isBodyParam}}{{{example}}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; # {{{dataType}}} | {{{description}}} +{{#allParams}}my ${{paramName}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{moduleName}}}::Object::{{dataType}}->new(){{/isBodyParam}}{{^isBodyParam}}{{#lambdaExample}}{{/lambdaExample}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; # {{{dataType}}} | {{{description}}} {{/allParams}} eval { diff --git a/modules/openapi-generator/src/main/resources/perl/api_doc.mustache b/modules/openapi-generator/src/main/resources/perl/api_doc.mustache index 68d489816a7a..96e919404b92 100644 --- a/modules/openapi-generator/src/main/resources/perl/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/perl/api_doc.mustache @@ -47,7 +47,7 @@ my $api_instance = {{moduleName}}::{{classname}}->new( {{/hasAuthMethods}} ); -{{#allParams}}my ${{paramName}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{moduleName}}}::Object::{{dataType}}->new(){{/isBodyParam}}{{^isBodyParam}}{{{example}}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; # {{{dataType}}} | {{{description}}} +{{#allParams}}my ${{paramName}} = {{#isArray}}[{{/isArray}}{{#isBodyParam}}{{{moduleName}}}::Object::{{dataType}}->new(){{/isBodyParam}}{{^isBodyParam}}{{#lambdaExample}}{{/lambdaExample}}{{/isBodyParam}}{{#isArray}}]{{/isArray}}; # {{{dataType}}} | {{{description}}} {{/allParams}} eval { diff --git a/modules/openapi-generator/src/main/resources/php-nextgen/README.mustache b/modules/openapi-generator/src/main/resources/php-nextgen/README.mustache index f9c27755bc67..3d8596ddb4df 100644 --- a/modules/openapi-generator/src/main/resources/php-nextgen/README.mustache +++ b/modules/openapi-generator/src/main/resources/php-nextgen/README.mustache @@ -60,7 +60,7 @@ $apiInstance = new {{invokerPackage}}\Api\{{classname}}( new GuzzleHttp\Client(){{#hasAuthMethods}}, $config{{/hasAuthMethods}} ); -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/php-nextgen/api_doc.mustache b/modules/openapi-generator/src/main/resources/php-nextgen/api_doc.mustache index af99e07c192b..648c1a1da577 100644 --- a/modules/openapi-generator/src/main/resources/php-nextgen/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/php-nextgen/api_doc.mustache @@ -48,7 +48,7 @@ $apiInstance = new {{invokerPackage}}\Api\{{classname}}( $config{{/hasAuthMethods}} ); {{^exts.x-group-parameters}} -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} {{/allParams}}{{#servers}}{{#-first}} $hostIndex = 0; $variables = [{{#variables}} @@ -56,7 +56,7 @@ $variables = [{{#variables}} ]; {{/-first}}{{/servers}}{{/exts.x-group-parameters}}{{#exts.x-group-parameters}} $associative_array = [ -{{#allParams}} '{{paramName}}' => {{{example}}}, // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} +{{#allParams}} '{{paramName}}' => {{#lambdaExample}}{{/lambdaExample}}, // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} {{/allParams}} {{#servers}}{{#-first}} 'hostIndex' => 0, diff --git a/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache b/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache index 52b3d6ce6f0d..cdd0e13c69e2 100644 --- a/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache +++ b/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache @@ -31,7 +31,7 @@ class {{classname}} extends BaseModel * Should be overwritten by inherited class. */ protected const MODEL_SCHEMA = <<<'SCHEMA' -{{{modelJson}}} +{{#lambdaModelJson}}{{/lambdaModelJson}} SCHEMA; } -{{/model}}{{/models}} \ No newline at end of file +{{/model}}{{/models}} diff --git a/modules/openapi-generator/src/main/resources/php/README.mustache b/modules/openapi-generator/src/main/resources/php/README.mustache index e4a17f15d17b..88307ae12e6c 100644 --- a/modules/openapi-generator/src/main/resources/php/README.mustache +++ b/modules/openapi-generator/src/main/resources/php/README.mustache @@ -60,7 +60,7 @@ $apiInstance = new {{invokerPackage}}\Api\{{classname}}( new GuzzleHttp\Client(){{#hasAuthMethods}}, $config{{/hasAuthMethods}} ); -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/php/api_doc.mustache b/modules/openapi-generator/src/main/resources/php/api_doc.mustache index ea5dad63de83..17c6022ca181 100644 --- a/modules/openapi-generator/src/main/resources/php/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/php/api_doc.mustache @@ -48,7 +48,7 @@ $apiInstance = new {{invokerPackage}}\Api\{{classname}}( $config{{/hasAuthMethods}} ); {{^exts.x-group-parameters}} -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} {{/allParams}}{{#servers}}{{#-first}} $hostIndex = 0; $variables = [{{#variables}} @@ -56,7 +56,7 @@ $variables = [{{#variables}} ]; {{/-first}}{{/servers}}{{/exts.x-group-parameters}}{{#exts.x-group-parameters}} $associative_array = [ -{{#allParams}} '{{paramName}}' => {{{example}}}, // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} +{{#allParams}} '{{paramName}}' => {{#lambdaExample}}{{/lambdaExample}}, // {{{dataType}}}{{#description}} | {{{.}}}{{/description}} {{/allParams}} {{#servers}}{{#-first}} 'hostIndex' => 0, diff --git a/modules/openapi-generator/src/main/resources/php/libraries/psr-18/README.mustache b/modules/openapi-generator/src/main/resources/php/libraries/psr-18/README.mustache index 610ab3641c62..bf6cdf13d7b6 100644 --- a/modules/openapi-generator/src/main/resources/php/libraries/psr-18/README.mustache +++ b/modules/openapi-generator/src/main/resources/php/libraries/psr-18/README.mustache @@ -72,7 +72,7 @@ $apiInstance = new {{invokerPackage}}\Api\{{classname}}( new GuzzleHttp\Client(){{#hasAuthMethods}}, $config{{/hasAuthMethods}} ); -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}}{{#description}} | {{{description}}}{{/description}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{description}}}{{/description}} {{/allParams}} try { diff --git a/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api_doc.mustache b/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api_doc.mustache index 3961eb23d32f..4b1d66047706 100644 --- a/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/php/libraries/psr-18/api_doc.mustache @@ -34,11 +34,11 @@ $apiInstance = new {{invokerPackage}}\Api\{{classname}}( $config{{/hasAuthMethods}} ); {{^exts.x-group-parameters}} -{{#allParams}}${{paramName}} = {{{example}}}; // {{{dataType}}}{{#description}} | {{{description}}}{{/description}} +{{#allParams}}${{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{description}}}{{/description}} {{/allParams}} {{/exts.x-group-parameters}} {{#exts.x-group-parameters}} -{{#allParams}}$associate_array['{{paramName}}'] = {{{example}}}; // {{{dataType}}}{{#description}} | {{{description}}}{{/description}} +{{#allParams}}$associate_array['{{paramName}}'] = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}}{{#description}} | {{{description}}}{{/description}} {{/allParams}} {{/exts.x-group-parameters}} diff --git a/modules/openapi-generator/src/main/resources/python-aiohttp/controller_test.mustache b/modules/openapi-generator/src/main/resources/python-aiohttp/controller_test.mustache index 383c0bf9dfa3..f8280b237b66 100644 --- a/modules/openapi-generator/src/main/resources/python-aiohttp/controller_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-aiohttp/controller_test.mustache @@ -28,15 +28,15 @@ async def test_{{operationId}}(client): {{{summary}}} """ {{#bodyParam}} - {{paramName}} = {{{example}}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} {{/bodyParam}} {{#queryParams}} - {{#-first}}params = [{{/-first}}{{^-first}} {{/-first}}('{{^vendorExtensions.x-python-connexion-openapi-name}}{{paramName}}{{/vendorExtensions.x-python-connexion-openapi-name}}{{#vendorExtensions.x-python-connexion-openapi-name}}{{vendorExtensions.x-python-connexion-openapi-name}}{{/vendorExtensions.x-python-connexion-openapi-name}}', {{{example}}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} + {{#-first}}params = [{{/-first}}{{^-first}} {{/-first}}('{{^vendorExtensions.x-python-connexion-openapi-name}}{{paramName}}{{/vendorExtensions.x-python-connexion-openapi-name}}{{#vendorExtensions.x-python-connexion-openapi-name}}{{vendorExtensions.x-python-connexion-openapi-name}}{{/vendorExtensions.x-python-connexion-openapi-name}}', {{#lambdaExample}}{{/lambdaExample}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} {{/queryParams}} headers = { {{#vendorExtensions.x-preferred-produce}} 'Accept': '{{{mediaType}}}',{{/vendorExtensions.x-preferred-produce}}{{#vendorExtensions.x-preferred-consume}} 'Content-Type': '{{{mediaType}}}',{{/vendorExtensions.x-preferred-consume}}{{#headerParams}} - '{{paramName}}': {{{example}}},{{/headerParams}}{{#authMethods}} + '{{paramName}}': {{#lambdaExample}}{{/lambdaExample}},{{/headerParams}}{{#authMethods}} {{#isOAuth}}'Authorization': 'Bearer special-key',{{/isOAuth}}{{#isApiKey}}'{{name}}': 'special-key',{{/isApiKey}}{{#isBasicBasic}}'Authorization': 'BasicZm9vOmJhcg==',{{/isBasicBasic}}{{#isBasicBearer}}'Authorization': 'Bearer special-key',{{/isBasicBearer}}{{/authMethods}} } {{#formParams}} @@ -44,13 +44,13 @@ async def test_{{operationId}}(client): {{#-first}} data = FormData() {{/-first}} - data.add_field('{{paramName}}', {{{example}}}) + data.add_field('{{paramName}}', {{#lambdaExample}}{{/lambdaExample}}) {{/isMultipart}} {{^isMultipart}} {{#-first}} data = { {{/-first}} - '{{paramName}}': {{{example}}}{{^-last}},{{/-last}} + '{{paramName}}': {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{#-last}} } {{/-last}} @@ -58,7 +58,7 @@ async def test_{{operationId}}(client): {{/formParams}} response = await client.request( method='{{httpMethod}}', - path='{{{contextPath}}}{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{paramName}}={{{example}}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, + path='{{{contextPath}}}{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{paramName}}={{#lambdaExample}}{{/lambdaExample}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, headers=headers,{{#bodyParam}} json={{paramName}},{{/bodyParam}}{{#formParams}}{{#-first}} data=data,{{/-first}}{{/formParams}}{{#queryParams}}{{#-first}} diff --git a/modules/openapi-generator/src/main/resources/python-aiohttp/openapi.mustache b/modules/openapi-generator/src/main/resources/python-aiohttp/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/python-aiohttp/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/python-aiohttp/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python-blueplanet/app/{{packageName}}/test/controller_test.mustache b/modules/openapi-generator/src/main/resources/python-blueplanet/app/{{packageName}}/test/controller_test.mustache index b9a5ea4eb95a..53ed8184b04d 100644 --- a/modules/openapi-generator/src/main/resources/python-blueplanet/app/{{packageName}}/test/controller_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-blueplanet/app/{{packageName}}/test/controller_test.mustache @@ -20,19 +20,19 @@ class {{#operations}}Test{{classname}}(BaseTestCase): {{{summary}}} """ {{#bodyParam}} - {{paramName}} = {{{example}}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} {{/bodyParam}} {{#queryParams}} - {{#-first}}query_string = [{{/-first}}{{^-first}} {{/-first}}('{{paramName}}', {{{example}}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} + {{#-first}}query_string = [{{/-first}}{{^-first}} {{/-first}}('{{paramName}}', {{#lambdaExample}}{{/lambdaExample}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} {{/queryParams}} {{#headerParams}} - {{#-first}}headers = [{{/-first}}{{^-first}} {{/-first}}('{{paramName}}', {{{example}}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} + {{#-first}}headers = [{{/-first}}{{^-first}} {{/-first}}('{{paramName}}', {{#lambdaExample}}{{/lambdaExample}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} {{/headerParams}} {{#formParams}} - {{#-first}}data = dict({{/-first}}{{^-first}} {{/-first}}{{paramName}}={{{example}}}{{^-last}},{{/-last}}{{#-last}}){{/-last}} + {{#-first}}data = dict({{/-first}}{{^-first}} {{/-first}}{{paramName}}={{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}}{{#-last}}){{/-last}} {{/formParams}} response = self.client.open( - '{{{contextPath}}}{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{paramName}}={{{example}}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, + '{{{contextPath}}}{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{paramName}}={{#lambdaExample}}{{/lambdaExample}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, method='{{httpMethod}}'{{#bodyParam}}, data=json.dumps({{paramName}}){{^consumes}}, content_type='application/json'{{/consumes}}{{/bodyParam}}{{#headerParams}}{{#-first}}, diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache index 3d1309a7bbde..99689c1cd574 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache @@ -21,19 +21,19 @@ def test_{{operationId}}(client: TestClient): {{{summary}}} """ {{#bodyParam}} - {{paramName}} = {{#isContainer}}[{{/isContainer}}{{{example}}}{{#isContainer}}]{{/isContainer}} + {{paramName}} = {{#isContainer}}[{{/isContainer}}{{#lambdaExample}}{{/lambdaExample}}{{#isContainer}}]{{/isContainer}} {{/bodyParam}} {{#queryParams}} - {{#-first}}params = [{{/-first}}("{{paramName}}", {{{example}}}){{^-last}}, {{/-last}}{{#-last}}]{{/-last}}{{/queryParams}} + {{#-first}}params = [{{/-first}}("{{paramName}}", {{#lambdaExample}}{{/lambdaExample}}){{^-last}}, {{/-last}}{{#-last}}]{{/-last}}{{/queryParams}} headers = {{=<% %>=}}{<%#headerParams%><%={{ }}=%> - "{{paramName}}": {{{example}}},{{/headerParams}}{{#authMethods}} + "{{paramName}}": {{#lambdaExample}}{{/lambdaExample}},{{/headerParams}}{{#authMethods}} {{#isOAuth}}"Authorization": "Bearer special-key",{{/isOAuth}}{{#isApiKey}}"{{name}}": "special-key",{{/isApiKey}}{{#isBasicBasic}}"Authorization": "BasicZm9vOmJhcg==",{{/isBasicBasic}}{{#isBasicBearer}}"Authorization": "Bearer special-key",{{/isBasicBearer}}{{/authMethods}} } {{#formParams}} {{#-first}} data = { {{/-first}} - "{{paramName}}": {{{example}}}{{^-last}},{{/-last}} + "{{paramName}}": {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{#-last}} } {{/-last}} @@ -41,7 +41,7 @@ def test_{{operationId}}(client: TestClient): # uncomment below to make a request #response = client.request( # "{{httpMethod}}", - # "{{{path}}}"{{#pathParams}}{{#-first}}.format({{/-first}}{{baseName}}={{{example}}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, + # "{{{path}}}"{{#pathParams}}{{#-first}}.format({{/-first}}{{baseName}}={{#lambdaExample}}{{/lambdaExample}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, # headers=headers,{{#bodyParam}} # json={{paramName}},{{/bodyParam}}{{#formParams}}{{#-first}} # data=data,{{/-first}}{{/formParams}}{{#queryParams}}{{#-first}} diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/openapi.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python-flask/controller_test.mustache b/modules/openapi-generator/src/main/resources/python-flask/controller_test.mustache index 586dc3c8679b..49af99c60a3f 100644 --- a/modules/openapi-generator/src/main/resources/python-flask/controller_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-flask/controller_test.mustache @@ -20,22 +20,22 @@ class {{#operations}}Test{{classname}}(BaseTestCase): {{{summary}}} """ {{#bodyParam}} - {{paramName}} = {{{example}}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} {{/bodyParam}} {{#queryParams}} - {{#-first}}query_string = [{{/-first}}{{^-first}} {{/-first}}('{{^vendorExtensions.x-python-connexion-openapi-name}}{{paramName}}{{/vendorExtensions.x-python-connexion-openapi-name}}{{#vendorExtensions.x-python-connexion-openapi-name}}{{vendorExtensions.x-python-connexion-openapi-name}}{{/vendorExtensions.x-python-connexion-openapi-name}}', {{{example}}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} + {{#-first}}query_string = [{{/-first}}{{^-first}} {{/-first}}('{{^vendorExtensions.x-python-connexion-openapi-name}}{{paramName}}{{/vendorExtensions.x-python-connexion-openapi-name}}{{#vendorExtensions.x-python-connexion-openapi-name}}{{vendorExtensions.x-python-connexion-openapi-name}}{{/vendorExtensions.x-python-connexion-openapi-name}}', {{#lambdaExample}}{{/lambdaExample}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} {{/queryParams}} headers = { {{#vendorExtensions.x-preferred-produce}} 'Accept': '{{{mediaType}}}',{{/vendorExtensions.x-preferred-produce}}{{#vendorExtensions.x-preferred-consume}} 'Content-Type': '{{{mediaType}}}',{{/vendorExtensions.x-preferred-consume}}{{#headerParams}} - '{{paramName}}': {{{example}}},{{/headerParams}}{{#authMethods}} + '{{paramName}}': {{#lambdaExample}}{{/lambdaExample}},{{/headerParams}}{{#authMethods}} {{#isOAuth}}'Authorization': 'Bearer special-key',{{/isOAuth}}{{#isApiKey}}'{{name}}': 'special-key',{{/isApiKey}}{{#isBasicBasic}}'Authorization': 'Basic Zm9vOmJhcg==',{{/isBasicBasic}}{{#isBasicBearer}}'Authorization': 'Bearer special-key',{{/isBasicBearer}}{{/authMethods}} } {{#formParams}} - {{#-first}}data = dict({{/-first}}{{^-first}} {{/-first}}{{paramName}}={{{example}}}{{^-last}},{{/-last}}{{#-last}}){{/-last}} + {{#-first}}data = dict({{/-first}}{{^-first}} {{/-first}}{{paramName}}={{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}}{{#-last}}){{/-last}} {{/formParams}} response = self.client.open( - '{{{contextPath}}}{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{paramName}}={{{example}}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, + '{{{contextPath}}}{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{paramName}}={{#lambdaExample}}{{/lambdaExample}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, method='{{httpMethod}}', headers=headers{{#bodyParam}}, data=json.dumps({{paramName}}){{^consumes}}, diff --git a/modules/openapi-generator/src/main/resources/python-flask/openapi.mustache b/modules/openapi-generator/src/main/resources/python-flask/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/python-flask/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/python-flask/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python-pydantic-v1/api_doc_example.mustache b/modules/openapi-generator/src/main/resources/python-pydantic-v1/api_doc_example.mustache index 87dbaff50dce..f9f53fa01657 100644 --- a/modules/openapi-generator/src/main/resources/python-pydantic-v1/api_doc_example.mustache +++ b/modules/openapi-generator/src/main/resources/python-pydantic-v1/api_doc_example.mustache @@ -15,7 +15,7 @@ from pprint import pprint # Create an instance of the API class api_instance = {{{packageName}}}.{{{classname}}}(api_client) {{#allParams}} - {{paramName}} = {{{example}}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} try: diff --git a/modules/openapi-generator/src/main/resources/python-pydantic-v1/common_README.mustache b/modules/openapi-generator/src/main/resources/python-pydantic-v1/common_README.mustache index c2c09e5b8134..1d196eed34fb 100644 --- a/modules/openapi-generator/src/main/resources/python-pydantic-v1/common_README.mustache +++ b/modules/openapi-generator/src/main/resources/python-pydantic-v1/common_README.mustache @@ -13,7 +13,7 @@ from pprint import pprint # Create an instance of the API class api_instance = {{{packageName}}}.{{{classname}}}(api_client) {{#allParams}} - {{paramName}} = {{{example}}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} try: diff --git a/modules/openapi-generator/src/main/resources/python/api_doc_example.mustache b/modules/openapi-generator/src/main/resources/python/api_doc_example.mustache index de357ab12f81..155c4ad4d452 100644 --- a/modules/openapi-generator/src/main/resources/python/api_doc_example.mustache +++ b/modules/openapi-generator/src/main/resources/python/api_doc_example.mustache @@ -14,7 +14,7 @@ from pprint import pprint # Create an instance of the API class api_instance = {{{packageName}}}.{{{classname}}}(api_client) {{#allParams}} - {{paramName}} = {{{example}}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} try: diff --git a/modules/openapi-generator/src/main/resources/python/common_README.mustache b/modules/openapi-generator/src/main/resources/python/common_README.mustache index 0b0798098673..0b4b7bf41816 100644 --- a/modules/openapi-generator/src/main/resources/python/common_README.mustache +++ b/modules/openapi-generator/src/main/resources/python/common_README.mustache @@ -12,7 +12,7 @@ from pprint import pprint # Create an instance of the API class api_instance = {{{packageName}}}.{{{classname}}}(api_client) {{#allParams}} - {{paramName}} = {{{example}}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + {{paramName}} = {{#lambdaExample}}{{/lambdaExample}} # {{{dataType}}} | {{{description}}}{{^required}} (optional){{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/allParams}} try: diff --git a/modules/openapi-generator/src/main/resources/ruby-sinatra-server/openapi.mustache b/modules/openapi-generator/src/main/resources/ruby-sinatra-server/openapi.mustache index 51ebafb0187d..3b51388d98a0 100644 --- a/modules/openapi-generator/src/main/resources/ruby-sinatra-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/ruby-sinatra-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} \ No newline at end of file +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/rust-server-deprecated/openapi.mustache b/modules/openapi-generator/src/main/resources/rust-server-deprecated/openapi.mustache index 34fbb53f3317..9b4bdc692e6a 100644 --- a/modules/openapi-generator/src/main/resources/rust-server-deprecated/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/rust-server-deprecated/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} diff --git a/modules/openapi-generator/src/main/resources/rust-server/openapi.mustache b/modules/openapi-generator/src/main/resources/rust-server/openapi.mustache index 34fbb53f3317..9b4bdc692e6a 100644 --- a/modules/openapi-generator/src/main/resources/rust-server/openapi.mustache +++ b/modules/openapi-generator/src/main/resources/rust-server/openapi.mustache @@ -1 +1 @@ -{{{openapi-yaml}}} +{{#lambdaOpenapiYaml}}{{/lambdaOpenapiYaml}} diff --git a/modules/openapi-generator/src/main/resources/scala-akka-client/README.mustache b/modules/openapi-generator/src/main/resources/scala-akka-client/README.mustache index 8e2017d65dd4..ec04a4950e00 100644 --- a/modules/openapi-generator/src/main/resources/scala-akka-client/README.mustache +++ b/modules/openapi-generator/src/main/resources/scala-akka-client/README.mustache @@ -95,7 +95,7 @@ object {{{classname}}}Example extends App { // Create invoker to execute requests val apiInvoker = ApiInvoker() val apiInstance = {{{classname}}}("{{{basePath}}}"){{#allParams}} - val {{{paramName}}}: {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} + val {{{paramName}}}: {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} val request = apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}) diff --git a/modules/openapi-generator/src/main/resources/scala-akka-client/api_doc.mustache b/modules/openapi-generator/src/main/resources/scala-akka-client/api_doc.mustache index 29a1e7985df5..3d964a713480 100644 --- a/modules/openapi-generator/src/main/resources/scala-akka-client/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/scala-akka-client/api_doc.mustache @@ -53,7 +53,7 @@ object Example extends App { val apiInvoker = ApiInvoker() val apiInstance = {{{classname}}}("{{{basePath}}}"){{#allParams}} - val {{{paramName}}}: {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} + val {{{paramName}}}: {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} val request = apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}) diff --git a/modules/openapi-generator/src/main/resources/scala-pekko-client/README.mustache b/modules/openapi-generator/src/main/resources/scala-pekko-client/README.mustache index 4f211fee3fc9..850f99e4b10c 100644 --- a/modules/openapi-generator/src/main/resources/scala-pekko-client/README.mustache +++ b/modules/openapi-generator/src/main/resources/scala-pekko-client/README.mustache @@ -95,7 +95,7 @@ object {{{classname}}}Example extends App { // Create invoker to execute requests val apiInvoker = ApiInvoker() val apiInstance = {{{classname}}}("{{{basePath}}}"){{#allParams}} - val {{{paramName}}}: {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} + val {{{paramName}}}: {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} val request = apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}) diff --git a/modules/openapi-generator/src/main/resources/scala-pekko-client/api_doc.mustache b/modules/openapi-generator/src/main/resources/scala-pekko-client/api_doc.mustache index 236e83ca36aa..1efc4985197a 100644 --- a/modules/openapi-generator/src/main/resources/scala-pekko-client/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/scala-pekko-client/api_doc.mustache @@ -53,7 +53,7 @@ object Example extends App { val apiInvoker = ApiInvoker() val apiInstance = {{{classname}}}("{{{basePath}}}"){{#allParams}} - val {{{paramName}}}: {{{dataType}}} = {{{example}}} // {{{dataType}}} | {{{description}}} + val {{{paramName}}}: {{{dataType}}} = {{#lambdaExample}}{{/lambdaExample}} // {{{dataType}}} | {{{description}}} {{/allParams}} val request = apiInstance.{{{operationId}}}({{#allParams}}{{{paramName}}}{{^-last}}, {{/-last}}{{/allParams}}) diff --git a/modules/openapi-generator/src/main/resources/scala-play-server/public/openapi.json.mustache b/modules/openapi-generator/src/main/resources/scala-play-server/public/openapi.json.mustache index 7710186d9d5c..b3cea7138e05 100644 --- a/modules/openapi-generator/src/main/resources/scala-play-server/public/openapi.json.mustache +++ b/modules/openapi-generator/src/main/resources/scala-play-server/public/openapi.json.mustache @@ -1 +1 @@ -{{{openapi-json}}} \ No newline at end of file +{{#lambdaOpenapiJson}}{{/lambdaOpenapiJson}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/api_example.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/api_example.mustache index 27b7340aab84..7b926e63b0ee 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/api_example.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/api_example.mustache @@ -27,7 +27,7 @@ async function example() { const body = { {{#allParams}} // {{{dataType}}}{{#description}} | {{{description}}}{{/description}}{{^required}} (optional){{/required}} - {{paramName}}: {{#vendorExtensions.x-typescriptFetchApiExample}}{{{.}}}{{/vendorExtensions.x-typescriptFetchApiExample}}{{^vendorExtensions.x-typescriptFetchApiExample}}{{{example}}}{{^example}}...{{/example}}{{/vendorExtensions.x-typescriptFetchApiExample}}, + {{paramName}}: {{#vendorExtensions.x-typescriptFetchApiExample}}{{{.}}}{{/vendorExtensions.x-typescriptFetchApiExample}}{{^vendorExtensions.x-typescriptFetchApiExample}}{{#lambdaExample}}{{/lambdaExample}}{{^lambdaExample}}...{{/lambdaExample}}{{/vendorExtensions.x-typescriptFetchApiExample}}, {{/allParams}} } satisfies {{operationIdCamelCase}}Request; diff --git a/modules/openapi-generator/src/main/resources/typescript/api_doc.mustache b/modules/openapi-generator/src/main/resources/typescript/api_doc.mustache index ed3439fa7c23..4d2433fb36ae 100644 --- a/modules/openapi-generator/src/main/resources/typescript/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/typescript/api_doc.mustache @@ -37,7 +37,7 @@ const apiInstance = new {{classname}}(configuration); const request: {{classname}}{{operationIdCamelCase}}Request = { {{#allParams}} {{#description}} // {{{description}}}{{^required}} (optional){{/required}}{{/description}} - {{paramName}}: {{{example}}}, + {{paramName}}: {{#lambdaExample}}{{/lambdaExample}}, {{/allParams}} }; {{/hasParams}} diff --git a/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache b/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache index d01bba42f55b..e2e7e0617c09 100644 --- a/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache +++ b/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache @@ -33,7 +33,7 @@ Public Class Mock {{#requiredVars}}{{^isArray}}{{^isEnum}}{{^isEnumOrRef}}{{operationId}}{{paramName}}Model.{{{name}}} = {{#isString}}"{{{example}}}"{{/isString}}{{#isDate}}FromRFC3339("{{{example}}}"){{/isDate}}{{#isDateTime}}FromRFC3339("{{{example}}}"){{/isDateTime}}{{^isString}}{{^isDate}}{{^isDateTime}}{{{example}}}{{/isDateTime}}{{/isDate}}{{/isString}} {{/isEnumOrRef}}{{/isEnum}}{{/isArray}}{{#isEnum}}// TODO: generating in-model enums is not supported. Issue something like: {{> prefixModel}}MODEL_NAME.{{enumName}}ToString({{> prefixModel}}MODEL_NAME.{{enumName}}.SOMETHING){{/isEnum}}{{/requiredVars}}{{/isModel}}{{/allParams}}{{#returnProperty}}{{^isBinary}} Dim {{operationId}}Data{{#isArray}}(){{/isArray}} As {{#isModel}}{{> prefixModel}}{{/isModel}}{{#isArray}}{{#items}}{{#isModel}}{{> prefixModel}}{{/isModel}}{{{dataType}}}{{/items}}{{/isArray}}{{^isArray}}{{{dataType}}}{{/isArray}}{{/isBinary}}{{/returnProperty}} - If api.{{operationId}}(error{{#returnProperty}}, {{^isBinary}}{{operationId}}Data{{/isBinary}}{{#isBinary}}tmpDownloadFile{{/isBinary}}{{/returnProperty}}{{#hasParams}}, {{/hasParams}}{{#allParams}}{{#isModel}}{{operationId}}{{paramName}}Model{{/isModel}}{{^isModel}}{{#isEnum}}{{projectName}}.{{apiPackage}}.{{classname}}.{{enumName}}_{{operationId}}.{{#allowableValues}}{{#enumVars}}{{#-first}}{{{name}}}{{/-first}}{{/enumVars}}{{/allowableValues}}{{/isEnum}}{{^isEnum}}{{#isArray}}{{operationId}}{{paramName}}Array{{/isArray}}{{^isArray}}{{#isString}}"{{/isString}}{{{example}}}{{#isString}}"{{/isString}}{{/isArray}}{{#schema}}{{#isEnumRef}}{{projectName}}.{{apiPackage}}.{{classname}}.{{dataType}}.{{#allowableValues}}{{#enumVars}}{{#-first}}{{{name}}}{{/-first}}{{/enumVars}}{{/allowableValues}}{{/isEnumRef}}{{/schema}}{{/isEnum}}{{/isModel}}{{^-last}}, {{/-last}}{{/allParams}}) Then + If api.{{operationId}}(error{{#returnProperty}}, {{^isBinary}}{{operationId}}Data{{/isBinary}}{{#isBinary}}tmpDownloadFile{{/isBinary}}{{/returnProperty}}{{#hasParams}}, {{/hasParams}}{{#allParams}}{{#isModel}}{{operationId}}{{paramName}}Model{{/isModel}}{{^isModel}}{{#isEnum}}{{projectName}}.{{apiPackage}}.{{classname}}.{{enumName}}_{{operationId}}.{{#allowableValues}}{{#enumVars}}{{#-first}}{{{name}}}{{/-first}}{{/enumVars}}{{/allowableValues}}{{/isEnum}}{{^isEnum}}{{#isArray}}{{operationId}}{{paramName}}Array{{/isArray}}{{^isArray}}{{#isString}}"{{/isString}}{{#lambdaExample}}{{/lambdaExample}}{{#isString}}"{{/isString}}{{/isArray}}{{#schema}}{{#isEnumRef}}{{projectName}}.{{apiPackage}}.{{classname}}.{{dataType}}.{{#allowableValues}}{{#enumVars}}{{#-first}}{{{name}}}{{/-first}}{{/enumVars}}{{/allowableValues}}{{/isEnumRef}}{{/schema}}{{/isEnum}}{{/isModel}}{{^-last}}, {{/-last}}{{/allParams}}) Then Print("[+] {{classname}}.{{operationId}} successful.") Else Print("[-] {{classname}}.{{operationId}} unsuccessful.") diff --git a/modules/openapi-generator/src/main/resources/zapier/sample.mustache b/modules/openapi-generator/src/main/resources/zapier/sample.mustache index a7f3757c38c4..3192962ef99c 100644 --- a/modules/openapi-generator/src/main/resources/zapier/sample.mustache +++ b/modules/openapi-generator/src/main/resources/zapier/sample.mustache @@ -7,7 +7,7 @@ module.exports = { {{#is2xx}} {{#baseType}} "{{baseType}}Sample": - {{#examples}}{{#-last}}{{{example}}}{{/-last}}{{/examples}}{{^examples}}{ data: {} }{{/examples}}, + {{#examples}}{{#-last}}{{#lambdaExample}}{{/lambdaExample}}{{/-last}}{{/examples}}{{^examples}}{ data: {} }{{/examples}}, {{/baseType}} {{/is2xx}} {{/responses}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java index f46f712a3890..a6c77d339af4 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java @@ -52,6 +52,8 @@ import org.testng.annotations.Test; import java.io.File; +import java.io.IOException; +import java.io.StringWriter; import java.nio.file.Files; import java.util.*; import java.util.concurrent.*; @@ -1134,24 +1136,24 @@ public void testExample5MultipleResponses() { Operation operation = openAPI.getPaths().get(path).getGet(); CodegenOperation codegenOperation = codegen.fromOperation(path, "GET", operation, null); - List> examples = codegenOperation.examples; + List> examples = codegenOperation.examples; assertEquals(4, examples.size()); // 200 response example assertEquals(APP_JSON, examples.get(0).get("contentType")); - assertEquals("\"a successful response example\"", examples.get(0).get("example")); + assertEquals("\"a successful response example\"", renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); // 301 response example assertEquals(APP_JSON, examples.get(1).get("contentType")); - assertEquals("\"a redirect response example\"", examples.get(1).get("example")); + assertEquals("\"a redirect response example\"", renderExample(examples.get(1))); assertEquals("301", examples.get(1).get("statusCode")); // 404 response example assertEquals(APP_JSON, examples.get(2).get("contentType")); - assertEquals("\"a not found response example\"", examples.get(2).get("example")); + assertEquals("\"a not found response example\"", renderExample(examples.get(2))); assertEquals("404", examples.get(2).get("statusCode")); // 500 response example assertEquals(APP_JSON, examples.get(3).get("contentType")); - assertEquals("\"an internal server error response example\"", examples.get(3).get("example")); + assertEquals("\"an internal server error response example\"", renderExample(examples.get(3))); assertEquals("500", examples.get(3).get("statusCode")); } @@ -5240,4 +5242,14 @@ private List getNames(List props) { if (props == null) return null; return props.stream().map(v -> v.name).collect(Collectors.toList()); } + + private static String renderExample(Map example) { + try { + StringWriter writer = new StringWriter(); + ((JsonOutputLambda) example.get("lambdaExample")).execute(null, writer); + return writer.toString(); + } catch (IOException e) { + throw new RuntimeException(e); + } + } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java index 00cdbbec9a17..529936630fea 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java @@ -4,8 +4,11 @@ import io.swagger.v3.oas.models.media.Schema; import io.swagger.v3.oas.models.media.IntegerSchema; import org.openapitools.codegen.examples.ExampleGenerator; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import org.testng.annotations.Test; +import java.io.IOException; +import java.io.StringWriter; import java.util.*; import com.fasterxml.jackson.databind.ObjectMapper; @@ -24,7 +27,7 @@ public void generateFromResponseSchemaWithPrimitiveType() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -40,7 +43,7 @@ public void generateFromResponseSchemaWithPrimitiveType() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals("\"primitive type example value\"", examples.get(0).get("example")); + assertEquals("\"primitive type example value\"", renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -53,7 +56,7 @@ public void generateFromResponseSchemaWithDateFormat() throws Exception { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -71,7 +74,7 @@ public void generateFromResponseSchemaWithDateFormat() throws Exception { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"date_with_example\" : \"2024-01-01\",%n \"date_without_example\" : \"2000-01-23\"%n}")), mapper.readTree(examples.get(0).get("example"))); + assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"date_with_example\" : \"2024-01-01\",%n \"date_without_example\" : \"2000-01-23\"%n}")), mapper.readTree(renderExample(examples.get(0)))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -84,7 +87,7 @@ public void generateFromResponseSchemaWithNoExample() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -110,7 +113,7 @@ public void generateFromResponseSchemaWithArrayOfModel() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -126,7 +129,7 @@ public void generateFromResponseSchemaWithArrayOfModel() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals("[ \"string schema example value\", \"string schema example value\" ]", examples.get(0).get("example")); + assertEquals("[ \"string schema example value\", \"string schema example value\" ]", renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -139,7 +142,7 @@ public void generateFromResponseSchemaWithArrayOfPrimitiveTypes() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -155,7 +158,7 @@ public void generateFromResponseSchemaWithArrayOfPrimitiveTypes() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals("[ \"primitive types example value\", \"primitive types example value\" ]", examples.get(0).get("example")); + assertEquals("[ \"primitive types example value\", \"primitive types example value\" ]", renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -168,7 +171,7 @@ public void generateFromResponseSchemaWithArraySchema() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -184,7 +187,7 @@ public void generateFromResponseSchemaWithArraySchema() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(String.format(Locale.ROOT, "[ {%n \"example_schema_property\" : \"example schema property value\"%n}, {%n \"example_schema_property\" : \"example schema property value\"%n} ]"), examples.get(0).get("example")); + assertEquals(String.format(Locale.ROOT, "[ {%n \"example_schema_property\" : \"example schema property value\"%n}, {%n \"example_schema_property\" : \"example schema property value\"%n} ]"), renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -197,7 +200,7 @@ public void generateFromResponseSchemaWithModel() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -213,7 +216,7 @@ public void generateFromResponseSchemaWithModel() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(String.format(Locale.ROOT, "{%n \"example_schema_property\" : \"example schema property value\"%n}"), examples.get(0).get("example")); + assertEquals(String.format(Locale.ROOT, "{%n \"example_schema_property\" : \"example schema property value\"%n}"), renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -226,7 +229,7 @@ public void generateFromResponseSchemaWithAllOfComposedModel() throws Exception{ ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -244,7 +247,7 @@ public void generateFromResponseSchemaWithAllOfComposedModel() throws Exception{ assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"example_schema_property_composed\" : \"example schema property value composed\",%n \"example_schema_property\" : \"example schema property value\"%n}")), mapper.readTree(examples.get(0).get("example"))); + assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"example_schema_property_composed\" : \"example schema property value composed\",%n \"example_schema_property\" : \"example schema property value\"%n}")), mapper.readTree(renderExample(examples.get(0)))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -257,7 +260,7 @@ public void generateFromResponseSchemaWithAllOfCircularSchema() throws Exception ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -275,7 +278,7 @@ public void generateFromResponseSchemaWithAllOfCircularSchema() throws Exception assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"example_schema_property_alloff_circular\" : \"example schema property allOff circular\"%n}")), mapper.readTree(examples.get(0).get("example"))); + assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"example_schema_property_alloff_circular\" : \"example schema property allOff circular\"%n}")), mapper.readTree(renderExample(examples.get(0)))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -288,7 +291,7 @@ public void generateFromResponseSchemaWithAllOfSiblingSchema() throws Exception{ ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -306,7 +309,7 @@ public void generateFromResponseSchemaWithAllOfSiblingSchema() throws Exception{ assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"base\":{\"example_schema_property\":\"example schema property value\",\"example_schema_property_composed\":\"example schema property value composed\"}, \"sibling\":{\"example_schema_property\":\"example schema property value\",\"example_schema_property_composed\":\"example schema property value composed\"} %n}")), mapper.readTree(examples.get(0).get("example"))); + assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"base\":{\"example_schema_property\":\"example schema property value\",\"example_schema_property_composed\":\"example schema property value composed\"}, \"sibling\":{\"example_schema_property\":\"example schema property value\",\"example_schema_property_composed\":\"example schema property value composed\"} %n}")), mapper.readTree(renderExample(examples.get(0)))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -319,7 +322,7 @@ public void generateFromResponseSchemaWithAllOfChildComposedModel() throws Excep ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -337,7 +340,7 @@ public void generateFromResponseSchemaWithAllOfChildComposedModel() throws Excep assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"example_schema_property_composed\" : \"example schema property value composed\",%n \"example_schema_property_composed_parent\" : \"example schema property value composed parent\",%n \"example_schema_property\" : \"example schema property value\"%n}")), mapper.readTree(examples.get(0).get("example"))); + assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"example_schema_property_composed\" : \"example schema property value composed\",%n \"example_schema_property_composed_parent\" : \"example schema property value composed parent\",%n \"example_schema_property\" : \"example schema property value\"%n}")), mapper.readTree(renderExample(examples.get(0)))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -350,7 +353,7 @@ public void generateFromResponseSchemaWithOneOfComposedModel() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -366,7 +369,7 @@ public void generateFromResponseSchemaWithOneOfComposedModel() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(String.format(Locale.ROOT, "{%n \"example_schema_property\" : \"example schema property value\"%n}"), examples.get(0).get("example")); + assertEquals(String.format(Locale.ROOT, "{%n \"example_schema_property\" : \"example schema property value\"%n}"), renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -379,7 +382,7 @@ public void generateFromResponseSchemaWithAnyOfComposedModel() { ExampleGenerator exampleGenerator = new ExampleGenerator(openAPI.getComponents().getSchemas(), openAPI); Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> examples = exampleGenerator.generateFromResponseSchema( + List> examples = exampleGenerator.generateFromResponseSchema( "200", openAPI .getPaths() @@ -395,7 +398,7 @@ public void generateFromResponseSchemaWithAnyOfComposedModel() { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(String.format(Locale.ROOT, "{%n \"example_schema_property\" : \"example schema property value\"%n}"), examples.get(0).get("example")); + assertEquals(String.format(Locale.ROOT, "{%n \"example_schema_property\" : \"example schema property value\"%n}"), renderExample(examples.get(0))); assertEquals("200", examples.get(0).get("statusCode")); } @@ -442,10 +445,10 @@ public void testExamplePropertyOrderPreservation() { Set mediaTypeKeys = new TreeSet<>(); mediaTypeKeys.add("application/json"); - List> generatedExamples = generator.generate(null, new ArrayList<>(mediaTypeKeys), "TestModel"); + List> generatedExamples = generator.generate(null, new ArrayList<>(mediaTypeKeys), "TestModel"); assertEquals(1, generatedExamples.size()); - String exampleOutput = generatedExamples.get(0).get("example"); + String exampleOutput = renderExample(generatedExamples.get(0)); System.out.println("Generated example output: " + exampleOutput); @@ -471,4 +474,14 @@ public void testExamplePropertyOrderPreservation() { assertTrue("mango should come before cherry", mangoPos < cherryPos); assertTrue("cherry should come before banana", cherryPos < bananaPos); } + + private static String renderExample(Map example) { + try { + StringWriter writer = new StringWriter(); + ((JsonOutputLambda) example.get("lambdaExample")).execute(null, writer); + return writer.toString(); + } catch (IOException e) { + throw new RuntimeException(e); + } + } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java index 33ad901a8bef..a29423f3faeb 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java @@ -1,6 +1,8 @@ package org.openapitools.codegen; import org.openapitools.codegen.api.TemplatePathLocator; +import org.openapitools.codegen.api.TemplatingEngineAdapter; +import org.openapitools.codegen.api.TemplatingExecutor; import org.openapitools.codegen.templating.HandlebarsEngineAdapter; import org.openapitools.codegen.templating.MustacheEngineAdapter; import org.openapitools.codegen.templating.TemplateManagerOptions; @@ -9,6 +11,7 @@ import java.io.File; import java.io.IOException; import java.io.InputStreamReader; +import java.io.Writer; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; @@ -39,6 +42,28 @@ public String getFullTemplatePath(String relativeTemplateFile) { private final MustacheEngineAdapter mustacheEngineAdapter = new MustacheEngineAdapter(); private final TemplatePathLocator locator = new ResourceTemplateLoader(); + static class WriterOnlyTemplateEngineAdapter implements TemplatingEngineAdapter { + @Override + public String getIdentifier() { + return "writer-only"; + } + + @Override + public String[] getFileExtensions() { + return new String[]{"writer"}; + } + + @Override + public String compileTemplate(TemplatingExecutor executor, Map bundle, String templateFile) { + throw new AssertionError("compileTemplate should not be called by TemplateManager.write"); + } + + @Override + public void writeTemplate(TemplatingExecutor executor, Map bundle, String templateFile, Writer writer) throws IOException { + writer.write((String) bundle.get("contents")); + } + } + @Test public void loadTemplateContents() { TemplateManagerOptions opts = new TemplateManagerOptions(false, false); @@ -109,6 +134,25 @@ public void writeViaMustacheAdapter() throws IOException { } } + @Test + public void writeUsesTemplateEngineWriterPath() throws IOException { + TemplateManagerOptions opts = new TemplateManagerOptions(false, false); + TemplateManager manager = new TemplateManager(opts, new WriterOnlyTemplateEngineAdapter(), new TemplatePathLocator[]{locator}); + Map data = new HashMap<>(); + data.put("contents", "streamed contents"); + + Path target = Files.createTempDirectory("test-templatemanager"); + try { + File output = new File(target.toFile(), "simple.txt"); + + File written = manager.write(data, "simple.writer", output); + + assertEquals(Files.readAllLines(written.toPath()).get(0), "streamed contents"); + } finally { + target.toFile().delete(); + } + } + @Test(enabled = false) public void writeUsingMustacheAdapterSkipsNonMustache() throws IOException { TemplateManagerOptions opts = new TemplateManagerOptions(false, false); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java new file mode 100644 index 000000000000..13a7def1105b --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java @@ -0,0 +1,51 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; + +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class JsonOutputLambdaTest { + + @Test + public void writesStringValue() throws Exception { + StringWriter output = new StringWriter(); + + new JsonOutputLambda("example_value").execute(mock(Template.Fragment.class), output); + + assertEquals(output.toString(), "example_value"); + } + + @Test + public void writesPrettyJsonNodeValue() throws Exception { + ObjectNode node = new ObjectMapper().createObjectNode(); + node.put("name", "example"); + node.put("id", 123); + StringWriter output = new StringWriter(); + + new JsonOutputLambda(node).execute(mock(Template.Fragment.class), output); + + assertEquals(output.toString(), "{\n \"name\" : \"example\",\n \"id\" : 123\n}"); + } +} From 9819ca83fd96ce7eac6c60fd454647e7c8f1a062 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 08:18:19 +0200 Subject: [PATCH 04/42] Fix JetBrains HTTP client inline examples --- .../JetbrainsHttpClientClientCodegen.java | 13 ++-- .../org/openapitools/codegen/TestUtils.java | 10 ++- .../JetbrainsHttpClientClientCodegenTest.java | 75 +++++++++++++++++++ 3 files changed, 89 insertions(+), 9 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java index f307dac72eb0..d009d92e6887 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java @@ -199,14 +199,15 @@ List getRequests(CodegenOperation codegenOperation) { items.add(new RequestItem(codegenOperation.summary, formatJson(codegenOperation.bodyParam.example))); } else if (codegenOperation.bodyParam.getContent().get("application/json") != null && codegenOperation.bodyParam.getContent().get("application/json").getExamples() != null) { - // find in components/examples + // find in components/examples or inline request body examples for (Map.Entry entry : codegenOperation.bodyParam.getContent().get("application/json").getExamples().entrySet()) { - String exampleRef = entry.getValue().get$ref(); + Example example = entry.getValue(); + String exampleRef = example.get$ref(); if (exampleRef != null) { - Example example = this.openAPI.getComponents().getExamples().get(extractExampleByName(exampleRef)); - String exampleAsString = getJsonFromExample(example); - items.add(new RequestItem(example.getSummary(), exampleAsString)); + example = this.openAPI.getComponents().getExamples().get(extractExampleByName(exampleRef)); } + String exampleAsString = getJsonFromExample(example); + items.add(new RequestItem(Optional.ofNullable(example.getSummary()).orElse(codegenOperation.summary), exampleAsString)); } } else if (codegenOperation.bodyParam.getSchema() != null) { // find in schema example @@ -453,4 +454,4 @@ public String escapeUnsafeCharacters(String input) { public String escapeQuotationMark(String input) { return input; } -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TestUtils.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TestUtils.java index a6df487ef840..c1077ef2bbb5 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TestUtils.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TestUtils.java @@ -31,6 +31,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import static org.assertj.core.api.Assertions.assertThat; import static org.testng.Assert.*; public class TestUtils { @@ -171,9 +172,12 @@ public static void assertFileContains(Path path, String... lines) { try { String generatedFile = Files.readString(path); String file = linearize(generatedFile); - assertNotNull(file); - for (String line : lines) - assertTrue(file.contains(linearize(line)), "File '" + path + "' does not contain line [" + line + "]"); + assertThat(file).isNotNull(); + for (String line : lines) { + assertThat(file) + .describedAs("File '%s' should contain line", path) + .contains(linearize(line)); + } } catch (IOException e) { fail("Unable to evaluate file " + path); } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java index fe18d6892604..ca1f6f6269a7 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java @@ -153,6 +153,81 @@ public void testBasicGenerationVariablesWithBodyVariables() throws IOException { "}"); } + @Test + public void testInlineRequestBodyExamplesAreRendered() throws IOException { + File output = Files.createTempDirectory("jetbrainstest_").toFile(); + output.deleteOnExit(); + Path spec = Files.createTempFile("jetbrains-inline-example_", ".yaml"); + spec.toFile().deleteOnExit(); + + Files.writeString(spec, String.join("\n", + "openapi: 3.0.3", + "info:", + " title: Inline request body example", + " version: '1.0'", + "servers:", + " - url: http://localhost:5000/v1", + "paths:", + " /users/{userId}:", + " parameters:", + " - name: userId", + " in: path", + " required: true", + " schema:", + " type: string", + " patch:", + " summary: Update User Information", + " operationId: patch-users-userId", + " parameters:", + " - name: page", + " in: query", + " schema:", + " type: string", + " requestBody:", + " content:", + " application/json:", + " schema:", + " type: object", + " properties:", + " firstName:", + " type: string", + " examples:", + " Update First Name:", + " value:", + " firstName: Rebecca", + " responses:", + " '200':", + " description: Updated", + " content:", + " application/json:", + " schema:", + " type: object", + "")); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("jetbrains-http-client") + .setInputSpec(spec.toString()) + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + + final ClientOptInput clientOptInput = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + List files = generator.opts(clientOptInput).generate(); + + files.forEach(File::deleteOnExit); + + Path path = Paths.get(output + "/Apis/DefaultApi.http"); + assertFileExists(path); + TestUtils.assertFileContains(path, "### Update User Information\n" + + "## Update User Information\n" + + "PATCH http://localhost:5000/v1/users/{{userId}}?page={{page}}\n" + + "Content-Type: application/json\n" + + "Accept: application/json\n" + + "\n" + + "{\n" + + " \"firstName\" : \"Rebecca\"\n" + + "}"); + } + @Test public void testBasicGenerationWithCustomHeaders() throws IOException { From 7651ac214170e6876d839a48e450a9d10031d9ec Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 08:18:47 +0200 Subject: [PATCH 05/42] SpringCodegenTest: Disable OOM test for now. --- .../org/openapitools/codegen/java/spring/SpringCodegenTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java index d80a39acf901..1c17ce599e80 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java @@ -8147,6 +8147,7 @@ void schemaMappingWithNullableAllOfRendersNullableJavaProperty() throws IOExcept } @Test + @Ignore("Huge test used only to test OOME.") void issue23849() throws IOException { File output = Files.createTempDirectory("issue23849").toFile().getCanonicalFile(); output.deleteOnExit(); From 20d50b223a26018fc5b5d1cb3c2600e964204011 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 19:31:42 +0200 Subject: [PATCH 06/42] Fix streaming example rendering Add streaming-safe escaping lambdas for newline and HTML-sensitive output, and snapshot model JSON before later example generation mutates schemas. Update JetBrains HTTP client request examples to render per media type, omit duplicate headings and value-less examples, and refresh generated samples. Update Rust server example generation and generated sample output for streamed JSON examples. --- .../openapitools/codegen/CodegenModel.java | 6 +- .../codegen/examples/ExampleGenerator.java | 14 ++ .../JetbrainsHttpClientClientCodegen.java | 64 ++++++--- .../codegen/languages/RustServerCodegen.java | 29 +++- .../templating/mustache/EscapeHtmlLambda.java | 63 +++++++++ .../mustache/EscapeNewLineLambda.java | 72 ++++++++++ .../templating/mustache/JsonOutputLambda.java | 7 +- .../JavaSpring/exampleString.mustache | 2 +- .../aspnetcore/2.0/controller.mustache | 2 +- .../aspnetcore/2.1/controller.mustache | 2 +- .../aspnetcore/3.0/controller.mustache | 2 +- .../csharp-functions/controller.mustache | 2 +- .../main/resources/htmlDocs/index.mustache | 2 +- .../main/resources/htmlDocs2/index.mustache | 2 +- .../resources/htmlDocs2/sample_curl.mustache | 2 +- .../java-camel-server/exampleString.mustache | 2 +- .../exampleStringArray.mustache | 2 +- .../java-wiremock/exampleString.mustache | 2 +- .../jetbrains-http-client/api.mustache | 10 +- .../libraries/ktor/_response.mustache | 2 +- .../libraries/ktor2/_response.mustache | 2 +- .../resources/php-slim4-server/model.mustache | 2 +- .../rust-server/example-client-main.mustache | 2 +- .../JetbrainsHttpClientClientCodegenTest.java | 85 +++++++++++- .../codegen/rust/RustServerCodegenTest.java | 5 + .../mustache/EscapeHtmlLambdaTest.java | 29 ++++ .../mustache/EscapeNewLineLambdaTest.java | 61 +++++++++ .../mustache/JsonOutputLambdaTest.java | 14 ++ .../http/client/Apis/ActionsApi.http | 57 ++++---- .../http/client/Apis/ActivityApi.http | 4 - .../jetbrains/http/client/Apis/AppsApi.http | 7 - .../jetbrains/http/client/Apis/ChecksApi.http | 51 ++++++- .../http/client/Apis/CodeScanningApi.http | 3 - .../http/client/Apis/CodespacesApi.http | 13 -- .../http/client/Apis/CopilotApi.http | 4 - .../http/client/Apis/DependabotApi.http | 4 - .../http/client/Apis/DependencyGraphApi.http | 1 - .../jetbrains/http/client/Apis/GistsApi.http | 34 ++++- .../jetbrains/http/client/Apis/GitApi.http | 6 - .../http/client/Apis/InteractionsApi.http | 4 +- .../jetbrains/http/client/Apis/IssuesApi.http | 14 +- .../http/client/Apis/MarkdownApi.http | 12 +- .../http/client/Apis/MigrationsApi.http | 19 ++- .../jetbrains/http/client/Apis/OidcApi.http | 1 - .../jetbrains/http/client/Apis/OrgsApi.http | 33 +++-- .../http/client/Apis/ProjectsApi.http | 19 ++- .../jetbrains/http/client/Apis/PullsApi.http | 14 +- .../http/client/Apis/ReactionsApi.http | 9 -- .../jetbrains/http/client/Apis/ReposApi.http | 124 ++++++++++-------- .../http/client/Apis/SecretScanningApi.http | 1 - .../client/Apis/SecurityAdvisoriesApi.http | 89 ++++++++++++- .../jetbrains/http/client/Apis/TeamsApi.http | 23 +--- .../jetbrains/http/client/Apis/UsersApi.http | 15 +-- .../output/openapi-v3/examples/client/main.rs | 6 +- 54 files changed, 767 insertions(+), 289 deletions(-) create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambda.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambdaTest.java diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java index 624f49e04be3..d37ad0a455e3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenModel.java @@ -18,7 +18,9 @@ package org.openapitools.codegen; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.databind.JsonNode; import com.samskivert.mustache.Mustache; +import io.swagger.v3.core.util.Json; import io.swagger.v3.oas.models.ExternalDocumentation; import lombok.Getter; import lombok.Setter; @@ -82,7 +84,7 @@ public class CodegenModel implements IJsonSchemaValidationProperties { public String description, classVarName, dataType, xmlPrefix, xmlNamespace, xmlName; @Getter public String modelJson; - private Object modelJsonValue; + private JsonNode modelJsonValue; @Getter @Setter public String classFilename; // store the class file name, mainly used for import @Getter @Setter @@ -295,7 +297,7 @@ public void setModelJson(String modelJson) { } public void setModelJsonValue(Object modelJsonValue) { - this.modelJsonValue = modelJsonValue; + this.modelJsonValue = modelJsonValue == null ? null : Json.mapper().valueToTree(modelJsonValue); this.modelJson = null; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java index 0b2b40675f56..45856779e9ca 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java @@ -20,6 +20,9 @@ import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.media.Schema; import org.apache.commons.lang3.StringUtils; +import org.openapitools.codegen.templating.mustache.EscapeDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.EscapeHtmlLambda; +import org.openapitools.codegen.templating.mustache.EscapeNewLineLambda; import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import org.openapitools.codegen.utils.ModelUtils; import org.slf4j.Logger; @@ -42,6 +45,9 @@ public class ExampleGenerator { private static final String CONTENT_TYPE = "contentType"; private static final String GENERATED_CONTENT_TYPE = "generatedContentType"; private static final String LAMBDA_EXAMPLE = "lambdaExample"; + private static final String LAMBDA_ESCAPE_DOUBLE_QUOTE = "lambdaEscapeDoubleQuote"; + private static final String LAMBDA_ESCAPE_HTML = "lambdaEscapeHtml"; + private static final String LAMBDA_ESCAPE_NEW_LINE = "lambdaEscapeNewLine"; private static final String OUTPUT = "output"; private static final String NONE = "none"; private static final String URL = "url"; @@ -228,11 +234,19 @@ private List> generate(Object example, List mediaTyp private void putJsonExample(Map output, Object example) { output.put(LAMBDA_EXAMPLE, new JsonOutputLambda(example)); + putEscapeLambdas(output); } private void putStringExample(Map output, String example) { output.put(EXAMPLE, example); output.put(LAMBDA_EXAMPLE, new JsonOutputLambda(example)); + putEscapeLambdas(output); + } + + private void putEscapeLambdas(Map output) { + output.put(LAMBDA_ESCAPE_DOUBLE_QUOTE, new EscapeDoubleQuoteLambda()); + output.put(LAMBDA_ESCAPE_HTML, new EscapeHtmlLambda()); + output.put(LAMBDA_ESCAPE_NEW_LINE, new EscapeNewLineLambda()); } private Object resolvePropertyToExample(String propertyName, String mediaType, Schema property, Set processedModels) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java index d009d92e6887..a46911633b2d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java @@ -191,32 +191,22 @@ List getRequests(CodegenOperation codegenOperation) { // operation with bodyParam if (requestParameterGeneration.equalsIgnoreCase("Schema")) { // get from schema - items.add(new RequestItem(codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam))); + items.add(new RequestItem(codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam), getDefaultContentType(codegenOperation))); } else { // get from examples if (codegenOperation.bodyParam.example != null) { // find in bodyParam example - items.add(new RequestItem(codegenOperation.summary, formatJson(codegenOperation.bodyParam.example))); - } else if (codegenOperation.bodyParam.getContent().get("application/json") != null && - codegenOperation.bodyParam.getContent().get("application/json").getExamples() != null) { - // find in components/examples or inline request body examples - for (Map.Entry entry : codegenOperation.bodyParam.getContent().get("application/json").getExamples().entrySet()) { - Example example = entry.getValue(); - String exampleRef = example.get$ref(); - if (exampleRef != null) { - example = this.openAPI.getComponents().getExamples().get(extractExampleByName(exampleRef)); - } - String exampleAsString = getJsonFromExample(example); - items.add(new RequestItem(Optional.ofNullable(example.getSummary()).orElse(codegenOperation.summary), exampleAsString)); - } + items.add(new RequestItem(codegenOperation.summary, formatJson(codegenOperation.bodyParam.example), getDefaultContentType(codegenOperation))); + } else if (addRequestsFromMediaTypeExamples(items, codegenOperation)) { + // request examples found in media type examples } else if (codegenOperation.bodyParam.getSchema() != null) { // find in schema example String exampleAsString = (codegenOperation.bodyParam.getSchema().getExample()); - items.add(new RequestItem(codegenOperation.summary, exampleAsString)); + items.add(new RequestItem(codegenOperation.summary, exampleAsString, getDefaultContentType(codegenOperation))); } else { // example not found // get from schema - items.add(new RequestItem(codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam))); + items.add(new RequestItem(codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam), getDefaultContentType(codegenOperation))); } } @@ -236,6 +226,42 @@ List getRequests(CodegenOperation codegenOperation) { return handleCustomVariablesInRequests(items); } + private boolean addRequestsFromMediaTypeExamples(List items, CodegenOperation codegenOperation) { + LinkedHashMap content = codegenOperation.bodyParam.getContent(); + if (content == null || content.isEmpty()) { + return false; + } + + for (Map.Entry contentEntry : content.entrySet()) { + CodegenMediaType mediaType = contentEntry.getValue(); + if (mediaType.getExamples() == null || mediaType.getExamples().isEmpty()) { + continue; + } + + for (Map.Entry entry : mediaType.getExamples().entrySet()) { + Example example = entry.getValue(); + String exampleRef = example.get$ref(); + if (exampleRef != null) { + example = this.openAPI.getComponents().getExamples().get(extractExampleByName(exampleRef)); + } + if (example == null || example.getValue() == null) { + continue; + } + String exampleAsString = getJsonFromExample(example); + items.add(new RequestItem(example.getSummary(), exampleAsString, contentEntry.getKey())); + } + } + + return !items.isEmpty(); + } + + private String getDefaultContentType(CodegenOperation codegenOperation) { + if (codegenOperation.consumes == null || codegenOperation.consumes.isEmpty()) { + return null; + } + return codegenOperation.consumes.get(0).get("mediaType"); + } + public static List extractDoubleCurlyBraces(String input) { List result = new ArrayList<>(); Pattern pattern = Pattern.compile("\\{\\{([^}]+)\\}\\}"); @@ -297,10 +323,16 @@ public class RequestItem { private String name; private String body; + private String contentType; public RequestItem(String name, String body) { + this(name, body, null); + } + + public RequestItem(String name, String body, String contentType) { this.name = name; this.body = body; + this.contentType = contentType; } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java index 511d63a5923c..554a8bb59f77 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java @@ -1683,6 +1683,8 @@ public ModelsMap postProcessModels(ModelsMap objs) { private void processParam(CodegenParameter param, CodegenOperation op) { String example = null; + String lambdaExamplePrefix = null; + String lambdaExampleSuffix = null; // If a parameter is an integer, fit it into the right type. // Note: For CodegenParameter, baseType may be null, so we check isInteger/isLong/isShort flags instead. @@ -1741,7 +1743,10 @@ private void processParam(CodegenParameter param, CodegenOperation op) { } } else if (param.isArray) { param.vendorExtensions.put("x-format-string", "{:?}"); - if (param.items.isString) { + if (param.example == null && param.getLambdaExample() != null) { + lambdaExamplePrefix = "&serde_json::from_str::<" + param.dataType + ">(r#\""; + lambdaExampleSuffix = "\"#).expect(\"Failed to parse JSON example\")"; + } else if (param.items.isString) { // We iterate through the list of string and ensure they end up in the format vec!["example".to_string()] example = (param.example != null) ? "&vec![" + Arrays.stream(param.example.replace("[", "").replace("]", "").split(",")) @@ -1763,14 +1768,24 @@ private void processParam(CodegenParameter param, CodegenOperation op) { example = param.dataType + "::" + enumVariant; } else if (param.example != null) { example = "serde_json::from_str::<" + param.dataType + ">(r#\"" + param.example + "\"#).expect(\"Failed to parse JSON example\")"; + } else if (param.getLambdaExample() != null) { + lambdaExamplePrefix = "serde_json::from_str::<" + param.dataType + ">(r#\""; + lambdaExampleSuffix = "\"#).expect(\"Failed to parse JSON example\")"; } } else if (param.example != null) { example = "serde_json::from_str::<" + param.dataType + ">(r#\"" + param.example + "\"#).expect(\"Failed to parse JSON example\")"; + } else if (param.getLambdaExample() != null) { + lambdaExamplePrefix = "serde_json::from_str::<" + param.dataType + ">(r#\""; + lambdaExampleSuffix = "\"#).expect(\"Failed to parse JSON example\")"; } } if (param.required) { - if (example != null) { + if (lambdaExamplePrefix != null) { + param.vendorExtensions.put("x-example-use-lambda", Boolean.TRUE); + param.vendorExtensions.put("x-example-prefix", lambdaExamplePrefix); + param.vendorExtensions.put("x-example-suffix", lambdaExampleSuffix); + } else if (example != null) { param.vendorExtensions.put("x-example", example); } else if (param.isArray) { // Use the empty list if we don't have an example @@ -1786,8 +1801,14 @@ private void processParam(CodegenParameter param, CodegenOperation op) { } else { // Not required, so override the format string and example param.vendorExtensions.put("x-format-string", "{:?}"); - String exampleString = (example != null) ? "Some(" + example + ")" : "None"; - param.vendorExtensions.put("x-example", exampleString); + if (lambdaExamplePrefix != null) { + param.vendorExtensions.put("x-example-use-lambda", Boolean.TRUE); + param.vendorExtensions.put("x-example-prefix", "Some(" + lambdaExamplePrefix); + param.vendorExtensions.put("x-example-suffix", lambdaExampleSuffix + ")"); + } else { + String exampleString = (example != null) ? "Some(" + example + ")" : "None"; + param.vendorExtensions.put("x-example", exampleString); + } } // Add a vendor extension to flag if this can have validate() run on it. diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java new file mode 100644 index 000000000000..ac4aa563dc29 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java @@ -0,0 +1,63 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; +import org.apache.commons.text.StringEscapeUtils; + +import java.io.IOException; +import java.io.Writer; + +/** + * Escapes HTML-sensitive characters in a fragment. + *

+ * Register: + *

+ * additionalProperties.put("lambdaEscapeHtml", new EscapeHtmlLambda());
+ * 
+ *

+ * Use: + *

+ * {{#lambdaEscapeHtml}}{{name}}{{/lambdaEscapeHtml}}
+ * 
+ */ +public class EscapeHtmlLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + HtmlEscapingWriter escapingWriter = new HtmlEscapingWriter(writer); + fragment.execute(escapingWriter); + escapingWriter.flushBuffer(); + } + + private static class HtmlEscapingWriter extends ForwardingWriter { + private final StringBuilder buffer = new StringBuilder(); + + private HtmlEscapingWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) { + buffer.append(cbuf, off, len); + } + + private void flushBuffer() throws IOException { + writer.write(StringEscapeUtils.escapeHtml4(buffer.toString())); + } + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambda.java new file mode 100644 index 000000000000..2d680ae812f1 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambda.java @@ -0,0 +1,72 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Escapes line break characters in a fragment as newline escape sequences. + *

+ * Register: + *

+ * additionalProperties.put("lambdaEscapeNewLine", new EscapeNewLineLambda());
+ * 
+ *

+ * Use: + *

+ * {{#lambdaEscapeNewLine}}{{name}}{{/lambdaEscapeNewLine}}
+ * 
+ */ +public class EscapeNewLineLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new EscapeNewLineWriter(writer)); + } + + private static class EscapeNewLineWriter extends ForwardingWriter { + private EscapeNewLineWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (cbuf[i] == '\r') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writeStart = i + 1; + } else if (cbuf[i] == '\n') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writer.write("\\n"); + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java index ac48f7fbb7e9..27db82b71a6f 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/JsonOutputLambda.java @@ -19,9 +19,9 @@ import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.databind.json.JsonMapper; import com.samskivert.mustache.Mustache; import com.samskivert.mustache.Template; +import io.swagger.v3.core.util.Json; import java.io.IOException; import java.io.Writer; @@ -31,9 +31,8 @@ * materialized as strings first. */ public class JsonOutputLambda implements Mustache.Lambda { - private static final ObjectMapper JSON_MAPPER = JsonMapper.builder() - .disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET) - .build(); + private static final ObjectMapper JSON_MAPPER = Json.mapper().copy() + .disable(JsonGenerator.Feature.AUTO_CLOSE_TARGET); private final String value; private final Object jsonValue; diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache index 1261a1db8f8e..4c9f7cc1778b 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/exampleString.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache index bf311313d4b5..871ca1074c06 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache @@ -49,7 +49,7 @@ namespace {{packageName}}.Controllers {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; + exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache index e512d4a11b31..6e6ede93b5d3 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache @@ -73,7 +73,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; + exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache index 5770850b2ea1..8883cbed2288 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache @@ -80,7 +80,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; + exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache index 6736886839a2..611b7ea20a03 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache @@ -73,7 +73,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}"; + exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache b/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache index b1ca12be0472..38f3916cd8c3 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache @@ -115,7 +115,7 @@ {{#examples}}

Example data

Content-Type: {{{contentType}}}
-
{{#lambdaExample}}{{/lambdaExample}}
+
{{#lambdaEscapeHtml}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeHtml}}
{{/examples}} {{/hasExamples}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache index 3327708e0f63..b943c49887a7 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/index.mustache @@ -493,7 +493,7 @@ {{#examples}}
-
{{#lambdaExample}}{{/lambdaExample}}
+
{{#lambdaEscapeHtml}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeHtml}}
{{/examples}} {{#hasHeaders}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache index ae05b9b5453a..42c18a2deeb2 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache @@ -3,4 +3,4 @@ curl -X {{vendorExtensions.x-codegen-http-method-upper-case}}{{#authMethods}} \ -H "Accept: {{#produces}}{{{mediaType}}}{{^-last}},{{/-last}}{{/produces}}"{{/hasProduces}}{{#hasConsumes}} \ -H "Content-Type: {{#consumes}}{{{mediaType}}}{{^-last}},{{/-last}}{{/consumes}}"{{/hasConsumes}} \ "{{basePath}}{{path}}{{#hasQueryParams}}?{{#queryParams}}{{^-first}}&{{/-first}}{{baseName}}={{{example}}}{{/queryParams}}{{/hasQueryParams}}"{{#requestBodyExamples}} \ - -d '{{#lambdaExample}}{{/lambdaExample}}'{{/requestBodyExamples}} + -d '{{#lambdaEscapeHtml}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeHtml}}'{{/requestBodyExamples}} diff --git a/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache b/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache index 1261a1db8f8e..4c9f7cc1778b 100644 --- a/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache +++ b/modules/openapi-generator/src/main/resources/java-camel-server/exampleString.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache b/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache index e684d3427bf7..1578ea249881 100644 --- a/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache +++ b/modules/openapi-generator/src/main/resources/java-camel-server/exampleStringArray.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}[{{#lambdaExample}}{{/lambdaExample}}]{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}[{{#lambdaExample}}{{/lambdaExample}}]{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache b/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache index 1261a1db8f8e..4c9f7cc1778b 100644 --- a/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache +++ b/modules/openapi-generator/src/main/resources/java-wiremock/exampleString.mustache @@ -1 +1 @@ -{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} +{{#lambdaSplitString}}{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaTrimWhitespace}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaTrimWhitespace}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}{{/lambdaSplitString}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache b/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache index e099e4b23e93..40785fab83b9 100644 --- a/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache +++ b/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache @@ -4,11 +4,13 @@ {{#vendorExtensions.requests}} ### {{#summary}}{{summary}}{{/summary}} -## {{name}} +{{#name}} +## {{.}} +{{/name}} {{httpMethod}} {{basePath}}{{#lambda.doubleMustache}}{{{path}}}{{/lambda.doubleMustache}}{{>queryParams}} -{{#consumes}} -Content-Type: {{{mediaType}}} -{{/consumes}} +{{#contentType}} +Content-Type: {{{.}}} +{{/contentType}} {{#produces}} Accept: {{{mediaType}}} {{/produces}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache index 05d3fc10cbbf..b824b5a68bb6 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor/_response.mustache @@ -5,4 +5,4 @@ when (exampleContentType) { "application/json" -> call.respondText(exampleContentType, ContentType.Application.Json) "application/xml" -> call.respondText(exampleContentString, ContentType.Text.Xml) else -> call.respondText(exampleContentString) -} +} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache index 76f7d99c6031..b88988e4dc69 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-server/libraries/ktor2/_response.mustache @@ -5,4 +5,4 @@ when (exampleContentType) { "application/json" -> call.respond(gson.fromJson(exampleContentString, Any::class.java)) "application/xml" -> call.respondText(exampleContentString, ContentType.Text.Xml) else -> call.respondText(exampleContentString) -} +} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache b/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache index cdd0e13c69e2..5e0eba76a1a1 100644 --- a/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache +++ b/modules/openapi-generator/src/main/resources/php-slim4-server/model.mustache @@ -34,4 +34,4 @@ class {{classname}} extends BaseModel {{#lambdaModelJson}}{{/lambdaModelJson}} SCHEMA; } -{{/model}}{{/models}} +{{/model}}{{/models}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/rust-server/example-client-main.mustache b/modules/openapi-generator/src/main/resources/rust-server/example-client-main.mustache index 30f515862c4d..bf9c6016ce8d 100644 --- a/modules/openapi-generator/src/main/resources/rust-server/example-client-main.mustache +++ b/modules/openapi-generator/src/main/resources/rust-server/example-client-main.mustache @@ -166,7 +166,7 @@ fn main() { Some("{{{operationId}}}") => { let result = rt.block_on(client.{{{exts.x-operation-id}}}( {{#allParams}} - {{{exts.x-example}}}{{^-last}},{{/-last}} + {{#exts.x-example-use-lambda}}{{{exts.x-example-prefix}}}{{#lambdaExample}}{{/lambdaExample}}{{{exts.x-example-suffix}}}{{/exts.x-example-use-lambda}}{{^exts.x-example-use-lambda}}{{{exts.x-example}}}{{/exts.x-example-use-lambda}}{{^-last}},{{/-last}} {{/allParams}} )); info!("{:?} (X-Span-ID: {:?})", result, (client.context() as &dyn Has).get().clone()); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java index ca1f6f6269a7..a86aecc06334 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java @@ -218,7 +218,6 @@ public void testInlineRequestBodyExamplesAreRendered() throws IOException { Path path = Paths.get(output + "/Apis/DefaultApi.http"); assertFileExists(path); TestUtils.assertFileContains(path, "### Update User Information\n" + - "## Update User Information\n" + "PATCH http://localhost:5000/v1/users/{{userId}}?page={{page}}\n" + "Content-Type: application/json\n" + "Accept: application/json\n" + @@ -228,6 +227,88 @@ public void testInlineRequestBodyExamplesAreRendered() throws IOException { "}"); } + @Test + public void testInlineRequestBodyExamplesAreRenderedForNonJsonMediaTypes() throws IOException { + File output = Files.createTempDirectory("jetbrainstest_").toFile(); + output.deleteOnExit(); + Path spec = Files.createTempFile("jetbrains-text-inline-example_", ".yaml"); + spec.toFile().deleteOnExit(); + + Files.writeString(spec, String.join("\n", + "openapi: 3.0.3", + "info:", + " title: Text request body example", + " version: '1.0'", + "servers:", + " - url: http://localhost:5000/v1", + "paths:", + " /markdown/raw:", + " post:", + " summary: Render Markdown", + " operationId: render-markdown", + " requestBody:", + " content:", + " text/plain:", + " schema:", + " type: string", + " examples:", + " default:", + " value:", + " text: Hello **world**", + " text/x-markdown:", + " schema:", + " type: string", + " examples:", + " default:", + " summary: Markdown content", + " value:", + " text: Hello _markdown_", + " summary-only:", + " summary: Summary-only example", + " responses:", + " '200':", + " description: Rendered", + " content:", + " text/html:", + " schema:", + " type: string", + "")); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("jetbrains-http-client") + .setInputSpec(spec.toString()) + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + + final ClientOptInput clientOptInput = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + List files = generator.opts(clientOptInput).generate(); + + files.forEach(File::deleteOnExit); + + Path path = Paths.get(output + "/Apis/DefaultApi.http"); + assertFileExists(path); + TestUtils.assertFileContains(path, "### Render Markdown\n" + + "POST http://localhost:5000/v1/markdown/raw\n" + + "Content-Type: text/plain\n" + + "Accept: text/html\n" + + "\n" + + "{\n" + + " \"text\" : \"Hello **world**\"\n" + + "}"); + TestUtils.assertFileContains(path, "### Render Markdown\n" + + "## Markdown content\n" + + "POST http://localhost:5000/v1/markdown/raw\n" + + "Content-Type: text/x-markdown\n" + + "Accept: text/html\n" + + "\n" + + "{\n" + + " \"text\" : \"Hello _markdown_\"\n" + + "}"); + TestUtils.assertFileNotContains(path, "{\n \n}"); + TestUtils.assertFileNotContains(path, "Content-Type: text/plain\nContent-Type: text/x-markdown"); + TestUtils.assertFileNotContains(path, "Summary-only example"); + } + @Test public void testBasicGenerationWithCustomHeaders() throws IOException { @@ -604,7 +685,6 @@ public void testBasicGenerationQueryParams() throws IOException { // Checking with only param TestUtils.assertFileContains(path, "### Update User Information\n" + - "## Update User Information\n" + "PATCH http://localhost:5000/v1/users/{{userId}}?page={{page}}\n" + "Content-Type: application/json\n" + "Accept: application/json\n" + @@ -664,7 +744,6 @@ public void testBasicGenerationHeaderParams() throws IOException { // Checking with only header security TestUtils.assertFileContains(path, "### Update User Information\n" + - "## Update User Information\n" + "PATCH http://localhost:5000/v1/users/{{userId}}?page={{page}}\n" + "Content-Type: application/json\n" + "Accept: application/json\n" + diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/rust/RustServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/rust/RustServerCodegenTest.java index ab515ec7eebb..a33f95c2c2cb 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/rust/RustServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/rust/RustServerCodegenTest.java @@ -108,6 +108,11 @@ public void testRequiredQueryParamWithoutExampleDisablesClientExample() throws I TestUtils.assertFileExists(exampleClientMain); TestUtils.assertFileContains(exampleClientMain, "Disabled because there's no example."); TestUtils.assertFileContains(exampleClientMain, "Some(\"QueryExampleGet\")"); + TestUtils.assertFileContains(exampleClientMain, "Some(&serde_json::from_str::>(r#\""); + TestUtils.assertFileContains(exampleClientMain, "\"foo\""); + TestUtils.assertFileContains(exampleClientMain, "Some(\"CreateRepo\")"); + TestUtils.assertFileContains(exampleClientMain, "serde_json::from_str::(r#\""); + TestUtils.assertFileContains(exampleClientMain, "\"requiredParam\" : true"); // Clean up target.toFile().deleteOnExit(); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java new file mode 100644 index 000000000000..6efee55748b1 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java @@ -0,0 +1,29 @@ +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class EscapeHtmlLambdaTest { + @Test + public void escapesHtmlCharactersAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("Tom & "); + invocation.getArgument(0).write("Jerry"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeHtmlLambda().execute(fragment, output); + + assertEquals(output.toString(), "<tag attr="value">Tom & Jerry</tag>"); + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambdaTest.java new file mode 100644 index 000000000000..82cbd23aaa96 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeNewLineLambdaTest.java @@ -0,0 +1,61 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class EscapeNewLineLambdaTest { + + @Test + public void escapesUnixNewLines() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("first\nsec"); + invocation.getArgument(0).write("ond"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeNewLineLambda().execute(fragment, output); + + assertEquals(output.toString(), "first\\nsecond"); + } + + @Test + public void escapesWindowsNewLines() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("first\r\nsec"); + invocation.getArgument(0).write("ond"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeNewLineLambda().execute(fragment, output); + + assertEquals(output.toString(), "first\\nsecond"); + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java index 13a7def1105b..3151861c5001 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java @@ -19,12 +19,14 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.node.ObjectNode; import com.samskivert.mustache.Template; +import io.swagger.v3.oas.models.media.StringSchema; import org.testng.annotations.Test; import java.io.StringWriter; import static org.mockito.Mockito.mock; import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertFalse; public class JsonOutputLambdaTest { @@ -48,4 +50,16 @@ public void writesPrettyJsonNodeValue() throws Exception { assertEquals(output.toString(), "{\n \"name\" : \"example\",\n \"id\" : 123\n}"); } + + @Test + public void omitsNullFieldsFromSwaggerSchemas() throws Exception { + StringSchema schema = new StringSchema(); + schema.setExample("doggie"); + StringWriter output = new StringWriter(); + + new JsonOutputLambda(schema).execute(mock(Template.Fragment.class), output); + + assertEquals(output.toString(), "{\n \"type\" : \"string\",\n \"example\" : \"doggie\"\n}"); + assertFalse(output.toString().contains("\"title\" : null")); + } } diff --git a/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http b/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http index 995b040ead01..76df8e01311d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http @@ -1,7 +1,6 @@ ## ActionsApi ### Add custom labels to a self-hosted runner for an organization -## Add custom labels to a self-hosted runner for an organization POST https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels Content-Type: application/json Accept: application/json @@ -12,7 +11,6 @@ Accept: application/json ### Add custom labels to a self-hosted runner for a repository -## Add custom labels to a self-hosted runner for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels Content-Type: application/json Accept: application/json @@ -41,7 +39,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/can Accept: application/json ### Create an environment variable -## Create an environment variable POST https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/variables Content-Type: application/json Accept: application/json @@ -53,7 +50,6 @@ Accept: application/json ### Create or update an environment secret -## Create or update an environment secret PUT https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -65,7 +61,6 @@ Accept: application/json ### Create or update an organization secret -## Create or update an organization secret PUT https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -79,7 +74,6 @@ Accept: application/json ### Create or update a repository secret -## Create or update a repository secret PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -91,7 +85,6 @@ Accept: application/json ### Create an organization variable -## Create an organization variable POST https://api.github.com/orgs/{{org}}/actions/variables Content-Type: application/json Accept: application/json @@ -125,7 +118,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/remove-toke Accept: application/json ### Create a repository variable -## Create a repository variable POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/variables Content-Type: application/json Accept: application/json @@ -137,7 +129,6 @@ Accept: application/json ### Create a workflow dispatch event -## Create a workflow dispatch event POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}}/dispatches Content-Type: application/json @@ -243,7 +234,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/for Accept: application/json ### Create configuration for a just-in-time runner for an organization -## Create configuration for a just-in-time runner for an organization POST https://api.github.com/orgs/{{org}}/actions/runners/generate-jitconfig Content-Type: application/json Accept: application/json @@ -257,7 +247,6 @@ Accept: application/json ### Create configuration for a just-in-time runner for a repository -## Create configuration for a just-in-time runner for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/generate-jitconfig Content-Type: application/json Accept: application/json @@ -551,7 +540,37 @@ Accept: application/json GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs?actor={{actor}}&branch={{branch}}&event={{event}}&status={{status}}&perPage={{perPage}}&page={{page}}&created={{created}}&excludePullRequests={{excludePullRequests}}&checkSuiteId={{checkSuiteId}}&headSha={{headSha}} Accept: application/json +### Re-run a job from a workflow run +## Re-run a job from a workflow run +POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/jobs/{{job_id}}/rerun +Content-Type: application/json +Accept: application/json + +{ + "enable_debug_logging": "" +} + + +### Re-run a workflow +## Re-run a workflow +POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/rerun +Content-Type: application/json +Accept: application/json +{ + "enable_debug_logging": "" +} + + +### Re-run failed jobs from a workflow run +## Re-run failed jobs from a workflow run +POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/rerun-failed-jobs +Content-Type: application/json +Accept: application/json + +{ + "enable_debug_logging": "" +} ### Remove all custom labels from a self-hosted runner for an organization @@ -583,7 +602,6 @@ DELETE https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repos DELETE https://api.github.com/orgs/{{org}}/actions/variables/{{name}}/repositories/{{repository_id}} ### Review custom deployment protection rules for a workflow run -## Review custom deployment protection rules for a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/deployment_protection_rule Content-Type: application/json @@ -595,7 +613,6 @@ Content-Type: application/json ### Review pending deployments for a workflow run -## Review pending deployments for a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/pending_deployments Content-Type: application/json Accept: application/json @@ -608,7 +625,6 @@ Accept: application/json ### Set allowed actions and reusable workflows for an organization -## PUT https://api.github.com/orgs/{{org}}/actions/permissions/selected-actions Content-Type: application/json @@ -620,7 +636,6 @@ Content-Type: application/json ### Set allowed actions and reusable workflows for a repository -## PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/selected-actions Content-Type: application/json @@ -632,7 +647,6 @@ Content-Type: application/json ### Set custom labels for a self-hosted runner for an organization -## Set custom labels for a self-hosted runner for an organization PUT https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels Content-Type: application/json Accept: application/json @@ -643,7 +657,6 @@ Accept: application/json ### Set custom labels for a self-hosted runner for a repository -## Set custom labels for a self-hosted runner for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels Content-Type: application/json Accept: application/json @@ -654,7 +667,6 @@ Accept: application/json ### Set the customization template for an OIDC subject claim for a repository -## Set the customization template for an OIDC subject claim for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/oidc/customization/sub Content-Type: application/json Accept: application/json @@ -689,7 +701,6 @@ Content-Type: application/json ### Set GitHub Actions permissions for an organization -## Set GitHub Actions permissions for an organization PUT https://api.github.com/orgs/{{org}}/actions/permissions Content-Type: application/json @@ -700,7 +711,6 @@ Content-Type: application/json ### Set GitHub Actions permissions for a repository -## Set GitHub Actions permissions for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions Content-Type: application/json @@ -711,7 +721,6 @@ Content-Type: application/json ### Set selected repositories for an organization secret -## Set selected repositories for an organization secret PUT https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repositories Content-Type: application/json @@ -721,7 +730,6 @@ Content-Type: application/json ### Set selected repositories for an organization variable -## Set selected repositories for an organization variable PUT https://api.github.com/orgs/{{org}}/actions/variables/{{name}}/repositories Content-Type: application/json @@ -731,7 +739,6 @@ Content-Type: application/json ### Set selected repositories enabled for GitHub Actions in an organization -## Set selected repositories enabled for GitHub Actions in an organization PUT https://api.github.com/orgs/{{org}}/actions/permissions/repositories Content-Type: application/json @@ -741,7 +748,6 @@ Content-Type: application/json ### Set the level of access for workflows outside of the repository -## PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/access Content-Type: application/json @@ -751,7 +757,6 @@ Content-Type: application/json ### Update an environment variable -## Update an environment variable PATCH https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/variables/{{name}} Content-Type: application/json @@ -762,7 +767,6 @@ Content-Type: application/json ### Update an organization variable -## Update an organization variable PATCH https://api.github.com/orgs/{{org}}/actions/variables/{{name}} Content-Type: application/json @@ -775,7 +779,6 @@ Content-Type: application/json ### Update a repository variable -## Update a repository variable PATCH https://api.github.com/repos/{{owner}}/{{repo}}/actions/variables/{{name}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http b/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http index 2f667e66e832..b7f930b08182 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http @@ -121,7 +121,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/subscribers?perPage={{perPag Accept: application/json ### Mark notifications as read -## Mark notifications as read PUT https://api.github.com/notifications Content-Type: application/json Accept: application/json @@ -133,7 +132,6 @@ Accept: application/json ### Mark repository notifications as read -## Mark repository notifications as read PUT https://api.github.com/repos/{{owner}}/{{repo}}/notifications Content-Type: application/json Accept: application/json @@ -153,7 +151,6 @@ PATCH https://api.github.com/notifications/threads/{{thread_id}} Accept: application/json ### Set a repository subscription -## Set a repository subscription PUT https://api.github.com/repos/{{owner}}/{{repo}}/subscription Content-Type: application/json Accept: application/json @@ -165,7 +162,6 @@ Accept: application/json ### Set a thread subscription -## Set a thread subscription PUT https://api.github.com/notifications/threads/{{thread_id}}/subscription Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/AppsApi.http b/samples/client/github/jetbrains/http/client/Apis/AppsApi.http index 8e1de9e7937b..616b1530fd0c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/AppsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/AppsApi.http @@ -6,7 +6,6 @@ PUT https://api.github.com/user/installations/{{installation_id}}/repositories/{ Accept: application/json ### Check a token -## Check a token POST https://api.github.com/applications/{{client_id}}/token Content-Type: application/json Accept: application/json @@ -22,7 +21,6 @@ POST https://api.github.com/app-manifests/{{code}}/conversions Accept: application/json ### Create an installation access token for an app -## Create an installation access token for an app POST https://api.github.com/app/installations/{{installation_id}}/access_tokens Content-Type: application/json Accept: application/json @@ -37,7 +35,6 @@ Accept: application/json ### Delete an app authorization -## Delete an app authorization DELETE https://api.github.com/applications/{{client_id}}/grant Content-Type: application/json Accept: application/json @@ -53,7 +50,6 @@ DELETE https://api.github.com/app/installations/{{installation_id}} Accept: application/json ### Delete an app token -## Delete an app token DELETE https://api.github.com/applications/{{client_id}}/token Content-Type: application/json Accept: application/json @@ -187,7 +183,6 @@ DELETE https://api.github.com/user/installations/{{installation_id}}/repositorie Accept: application/json ### Reset a token -## Reset a token PATCH https://api.github.com/applications/{{client_id}}/token Content-Type: application/json Accept: application/json @@ -202,7 +197,6 @@ Accept: application/json DELETE https://api.github.com/installation/token ### Create a scoped access token -## Create a scoped access token POST https://api.github.com/applications/{{client_id}}/token/scoped Content-Type: application/json Accept: application/json @@ -229,7 +223,6 @@ DELETE https://api.github.com/app/installations/{{installation_id}}/suspended Accept: application/json ### Update a webhook configuration for an app -## Update a webhook configuration for an app PATCH https://api.github.com/app/hook/config Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http b/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http index 231cbe413049..99230794425c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http @@ -1,7 +1,7 @@ ## ChecksApi ### Create a check run -## Create a check run +## Example of an in_progress conclusion POST https://api.github.com/repos/{{owner}}/{{repo}}/check-runs Content-Type: application/json Accept: application/json @@ -19,9 +19,54 @@ Accept: application/json } } +### Create a check run +## Example of a completed conclusion +POST https://api.github.com/repos/{{owner}}/{{repo}}/check-runs +Content-Type: application/json +Accept: application/json + +{ + "name" : "mighty_readme", + "head_sha" : "ce587453ced02b1526dfb4cb910479d431683101", + "status" : "completed", + "started_at" : "2017-11-30T19:39:10Z", + "conclusion" : "success", + "completed_at" : "2017-11-30T19:49:10Z", + "output" : { + "title" : "Mighty Readme report", + "summary" : "There are 0 failures, 2 warnings, and 1 notices.", + "text" : "You may have some misspelled words on lines 2 and 4. You also may want to add a section in your README about how to install your app.", + "annotations" : [ { + "path" : "README.md", + "annotation_level" : "warning", + "title" : "Spell Checker", + "message" : "Check your spelling for 'banaas'.", + "raw_details" : "Do you mean 'bananas' or 'banana'?", + "start_line" : 2, + "end_line" : 2 + }, { + "path" : "README.md", + "annotation_level" : "warning", + "title" : "Spell Checker", + "message" : "Check your spelling for 'aples'", + "raw_details" : "Do you mean 'apples' or 'Naples'", + "start_line" : 4, + "end_line" : 4 + } ], + "images" : [ { + "alt" : "Super bananas", + "image_url" : "http://example.com/images/42" + } ] + }, + "actions" : [ { + "label" : "Fix", + "identifier" : "fix_errors", + "description" : "Allow us to fix these errors for you" + } ] +} + ### Create a check suite -## Create a check suite POST https://api.github.com/repos/{{owner}}/{{repo}}/check-suites Content-Type: application/json Accept: application/json @@ -72,7 +117,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/check-suites/{{check_suite_ Accept: application/json ### Update repository preferences for check suites -## Update repository preferences for check suites PATCH https://api.github.com/repos/{{owner}}/{{repo}}/check-suites/preferences Content-Type: application/json Accept: application/json @@ -86,7 +130,6 @@ Accept: application/json ### Update a check run -## Update a check run PATCH https://api.github.com/repos/{{owner}}/{{repo}}/check-runs/{{check_run_id}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http b/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http index 2594ec45d064..3121707e3d12 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http @@ -58,7 +58,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/analyses?toolN Accept: application/json ### Update a code scanning alert -## Update a code scanning alert PATCH https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/alerts/{{alert_number}} Content-Type: application/json Accept: application/json @@ -71,7 +70,6 @@ Accept: application/json ### Update a code scanning default setup configuration -## PATCH https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/default-setup Content-Type: application/json Accept: application/json @@ -82,7 +80,6 @@ Accept: application/json ### Upload an analysis as SARIF data -## Upload an analysis as SARIF data POST https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/sarifs Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http b/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http index bb571b22fe9c..9d8c007b8a21 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http @@ -21,7 +21,6 @@ GET https://api.github.com/user/codespaces/{{codespace_name}}/machines Accept: application/json ### Create a codespace for the authenticated user -## Create a codespace for the authenticated user POST https://api.github.com/user/codespaces Content-Type: application/json Accept: application/json @@ -34,7 +33,6 @@ Accept: application/json ### Create or update an organization secret -## Create or update an organization secret PUT https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -48,7 +46,6 @@ Accept: application/json ### Create or update a repository secret -## Create or update a repository secret PUT https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -60,7 +57,6 @@ Accept: application/json ### Create or update a secret for the authenticated user -## Create or update a secret for the authenticated user PUT https://api.github.com/user/codespaces/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -73,7 +69,6 @@ Accept: application/json ### Create a codespace from a pull request -## Create a codespace from a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/codespaces Content-Type: application/json Accept: application/json @@ -85,7 +80,6 @@ Accept: application/json ### Create a codespace in a repository -## Create a codespace in a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/codespaces Content-Type: application/json Accept: application/json @@ -98,7 +92,6 @@ Accept: application/scim+json ### Remove users from Codespaces access for an organization -## Remove users from Codespaces access for an organization DELETE https://api.github.com/orgs/{{org}}/codespaces/access/selected_users Content-Type: application/json Accept: application/json @@ -233,7 +226,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/new?ref={{ref}}&c Accept: application/json ### Create a repository from an unpublished codespace -## Create a repository from an unpublished codespace POST https://api.github.com/user/codespaces/{{codespace_name}}/publish Content-Type: application/json Accept: application/json @@ -260,7 +252,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/machines?location Accept: application/json ### Manage access control for organization codespaces -## Manage access control for organization codespaces PUT https://api.github.com/orgs/{{org}}/codespaces/access Content-Type: application/json Accept: application/json @@ -272,7 +263,6 @@ Accept: application/json ### Add users to Codespaces access for an organization -## Add users to Codespaces access for an organization POST https://api.github.com/orgs/{{org}}/codespaces/access/selected_users Content-Type: application/json Accept: application/json @@ -283,7 +273,6 @@ Accept: application/json ### Set selected repositories for a user secret -## Set selected repositories for a user secret PUT https://api.github.com/user/codespaces/secrets/{{secret_name}}/repositories Content-Type: application/json Accept: application/json @@ -294,7 +283,6 @@ Accept: application/json ### Set selected repositories for an organization secret -## Set selected repositories for an organization secret PUT https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}}/repositories Content-Type: application/json Accept: application/json @@ -321,7 +309,6 @@ POST https://api.github.com/orgs/{{org}}/members/{{username}}/codespaces/{{codes Accept: application/json ### Update a codespace for the authenticated user -## Update a codespace for the authenticated user PATCH https://api.github.com/user/codespaces/{{codespace_name}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http b/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http index 70c545e85a16..72320f568339 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http @@ -1,7 +1,6 @@ ## CopilotApi ### Add teams to the Copilot subscription for an organization -## Add teams to the Copilot subscription for an organization POST https://api.github.com/orgs/{{org}}/copilot/billing/selected_teams Content-Type: application/json Accept: application/json @@ -12,7 +11,6 @@ Accept: application/json ### Add users to the Copilot subscription for an organization -## Add users to the Copilot subscription for an organization POST https://api.github.com/orgs/{{org}}/copilot/billing/selected_users Content-Type: application/json Accept: application/json @@ -23,7 +21,6 @@ Accept: application/json ### Remove teams from the Copilot subscription for an organization -## Remove teams from the Copilot subscription for an organization DELETE https://api.github.com/orgs/{{org}}/copilot/billing/selected_teams Content-Type: application/json Accept: application/json @@ -34,7 +31,6 @@ Accept: application/json ### Remove users from the Copilot subscription for an organization -## Remove users from the Copilot subscription for an organization DELETE https://api.github.com/orgs/{{org}}/copilot/billing/selected_users Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http b/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http index 1bfbb7d33c74..e3167731b7f4 100644 --- a/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http @@ -5,7 +5,6 @@ PUT https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}}/repositories/{{repository_id}} ### Create or update an organization secret -## Create or update an organization secret PUT https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -19,7 +18,6 @@ Accept: application/json ### Create or update a repository secret -## Create or update a repository secret PUT https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/secrets/{{secret_name}} Content-Type: application/json Accept: application/json @@ -100,7 +98,6 @@ Accept: application/json DELETE https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}}/repositories/{{repository_id}} ### Set selected repositories for an organization secret -## Set selected repositories for an organization secret PUT https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}}/repositories Content-Type: application/json @@ -110,7 +107,6 @@ Content-Type: application/json ### Update a Dependabot alert -## Update a Dependabot alert PATCH https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/alerts/{{alert_number}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http b/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http index 2667c6b1c714..58b8a1deca67 100644 --- a/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http @@ -1,7 +1,6 @@ ## DependencyGraphApi ### Create a snapshot of dependencies for a repository -## POST https://api.github.com/repos/{{owner}}/{{repo}}/dependency-graph/snapshots Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/GistsApi.http b/samples/client/github/jetbrains/http/client/Apis/GistsApi.http index ee504b674aaa..f4681a0ce5f7 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GistsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GistsApi.http @@ -6,7 +6,7 @@ GET https://api.github.com/gists/{{gist_id}}/star Accept: application/json ### Create a gist -## Create a gist +## Creating a gist POST https://api.github.com/gists Content-Type: application/json Accept: application/json @@ -23,7 +23,7 @@ Accept: application/json ### Create a gist comment -## Create a gist comment +## Creating a comment in a gist POST https://api.github.com/gists/{{gist_id}}/comments Content-Type: application/json Accept: application/json @@ -109,7 +109,7 @@ DELETE https://api.github.com/gists/{{gist_id}}/star Accept: application/json ### Update a gist -## Update a gist +## Updating a gist PATCH https://api.github.com/gists/{{gist_id}} Content-Type: application/json Accept: application/json @@ -123,9 +123,35 @@ Accept: application/json } } +### Update a gist +## Deleting a gist file +PATCH https://api.github.com/gists/{{gist_id}} +Content-Type: application/json +Accept: application/json + +{ + "files" : { + "hello.py" : null + } +} + +### Update a gist +## Renaming a gist file +PATCH https://api.github.com/gists/{{gist_id}} +Content-Type: application/json +Accept: application/json + +{ + "files" : { + "hello.py" : { + "filename" : "goodbye.py" + } + } +} + ### Update a gist comment -## Update a gist comment +## Updating a comment in a gist PATCH https://api.github.com/gists/{{gist_id}}/comments/{{comment_id}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/GitApi.http b/samples/client/github/jetbrains/http/client/Apis/GitApi.http index d1dbe922c873..81a695a39634 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GitApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GitApi.http @@ -1,7 +1,6 @@ ## GitApi ### Create a blob -## Create a blob POST https://api.github.com/repos/{{owner}}/{{repo}}/git/blobs Content-Type: application/json Accept: application/json @@ -13,7 +12,6 @@ Accept: application/json ### Create a commit -## Create a commit POST https://api.github.com/repos/{{owner}}/{{repo}}/git/commits Content-Type: application/json Accept: application/json @@ -32,7 +30,6 @@ Accept: application/json ### Create a reference -## Create a reference POST https://api.github.com/repos/{{owner}}/{{repo}}/git/refs Content-Type: application/json Accept: application/json @@ -44,7 +41,6 @@ Accept: application/json ### Create a tag object -## Create a tag object POST https://api.github.com/repos/{{owner}}/{{repo}}/git/tags Content-Type: application/json Accept: application/json @@ -63,7 +59,6 @@ Accept: application/json ### Create a tree -## Create a tree POST https://api.github.com/repos/{{owner}}/{{repo}}/git/trees Content-Type: application/json Accept: application/json @@ -115,7 +110,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/git/matching-refs/{{ref}} Accept: application/json ### Update a reference -## Update a reference PATCH https://api.github.com/repos/{{owner}}/{{repo}}/git/refs/{{ref}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http b/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http index df6537abd84c..bd38c130736e 100644 --- a/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http @@ -28,7 +28,6 @@ DELETE https://api.github.com/orgs/{{org}}/interaction-limits DELETE https://api.github.com/repos/{{owner}}/{{repo}}/interaction-limits ### Set interaction restrictions for your public repositories -## Set interaction restrictions for your public repositories PUT https://api.github.com/user/interaction-limits Content-Type: application/json Accept: application/json @@ -40,7 +39,6 @@ Accept: application/json ### Set interaction restrictions for an organization -## Set interaction restrictions for an organization PUT https://api.github.com/orgs/{{org}}/interaction-limits Content-Type: application/json Accept: application/json @@ -52,7 +50,7 @@ Accept: application/json ### Set interaction restrictions for a repository -## Set interaction restrictions for a repository +## Example request body PUT https://api.github.com/repos/{{owner}}/{{repo}}/interaction-limits Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http b/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http index bf47e257e01b..bac4c17b0148 100644 --- a/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http @@ -1,7 +1,6 @@ ## IssuesApi ### Add assignees to an issue -## Add assignees to an issue POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/assignees Content-Type: application/json Accept: application/json @@ -12,7 +11,6 @@ Accept: application/json ### Add labels to an issue -## Add labels to an issue POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels Content-Type: application/json Accept: application/json @@ -33,7 +31,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/assi Accept: application/json ### Create an issue -## Create an issue POST https://api.github.com/repos/{{owner}}/{{repo}}/issues Content-Type: application/json Accept: application/json @@ -49,7 +46,6 @@ Accept: application/scim+json ### Create an issue comment -## Create an issue comment POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/comments Content-Type: application/json Accept: application/json @@ -60,7 +56,6 @@ Accept: application/json ### Create a label -## Create a label POST https://api.github.com/repos/{{owner}}/{{repo}}/labels Content-Type: application/json Accept: application/json @@ -73,7 +68,6 @@ Accept: application/json ### Create a milestone -## Create a milestone POST https://api.github.com/repos/{{owner}}/{{repo}}/milestones Content-Type: application/json Accept: application/json @@ -195,7 +189,7 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/milestones?state={{state}}&s Accept: application/json ### Lock an issue -## Lock an issue +## Example of locking an issue as off-topic PUT https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/lock Content-Type: application/json Accept: application/json @@ -211,7 +205,6 @@ DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/l Accept: application/json ### Remove assignees from an issue -## Remove assignees from an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/assignees Content-Type: application/json Accept: application/json @@ -227,7 +220,6 @@ DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/l Accept: application/json ### Set labels for an issue -## Set labels for an issue PUT https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels Content-Type: application/json Accept: application/json @@ -243,7 +235,6 @@ DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/l Accept: application/json ### Update an issue -## Update an issue PATCH https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}} Content-Type: application/json Accept: application/json @@ -259,7 +250,6 @@ Accept: application/json ### Update an issue comment -## Update an issue comment PATCH https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}} Content-Type: application/json Accept: application/json @@ -270,7 +260,6 @@ Accept: application/json ### Update a label -## Update a label PATCH https://api.github.com/repos/{{owner}}/{{repo}}/labels/{{name}} Content-Type: application/json Accept: application/json @@ -283,7 +272,6 @@ Accept: application/json ### Update a milestone -## Update a milestone PATCH https://api.github.com/repos/{{owner}}/{{repo}}/milestones/{{milestone_number}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http b/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http index e6334d0a1600..fe54c2fde0ab 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http @@ -1,7 +1,7 @@ ## MarkdownApi ### Render a Markdown document -## Render a Markdown document +## Rendering markdown POST https://api.github.com/markdown Content-Type: application/json Accept: text/html @@ -12,9 +12,17 @@ Accept: text/html ### Render a Markdown document in raw mode -## Render a Markdown document in raw mode POST https://api.github.com/markdown/raw Content-Type: text/plain +Accept: text/html + +{ + "text" : "Hello **world**" +} + +### Render a Markdown document in raw mode +## Rendering markdown +POST https://api.github.com/markdown/raw Content-Type: text/x-markdown Accept: text/html diff --git a/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http b/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http index f626cbde66cf..04c15eb34d4b 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http @@ -71,7 +71,6 @@ GET https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}/repositories Accept: application/json ### Map a commit author -## Map a commit author PATCH https://api.github.com/repos/{{owner}}/{{repo}}/import/authors/{{author_id}} Content-Type: application/json Accept: application/json @@ -83,7 +82,6 @@ Accept: application/json ### Update Git LFS preference -## Update Git LFS preference PATCH https://api.github.com/repos/{{owner}}/{{repo}}/import/lfs Content-Type: application/json Accept: application/json @@ -94,7 +92,6 @@ Accept: application/json ### Start a user migration -## Start a user migration POST https://api.github.com/user/migrations Content-Type: application/json Accept: application/json @@ -106,7 +103,6 @@ Accept: application/json ### Start an organization migration -## Start an organization migration POST https://api.github.com/orgs/{{org}}/migrations Content-Type: application/json Accept: application/json @@ -118,7 +114,6 @@ Accept: application/json ### Start an import -## Start an import PUT https://api.github.com/repos/{{owner}}/{{repo}}/import Content-Type: application/json Accept: application/json @@ -142,7 +137,7 @@ DELETE https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}/repos/{{r Accept: application/json ### Update an import -## Update an import +## Update authentication for an import PATCH https://api.github.com/repos/{{owner}}/{{repo}}/import Content-Type: application/json Accept: application/json @@ -152,3 +147,15 @@ Accept: application/json "vcs_password" : "secret" } +### Update an import +## Updating the project choice +PATCH https://api.github.com/repos/{{owner}}/{{repo}}/import +Content-Type: application/json +Accept: application/json + +{ + "vcs" : "tfvc", + "tfvc_project" : "project1", + "human_name" : "project1 (tfs)" +} + diff --git a/samples/client/github/jetbrains/http/client/Apis/OidcApi.http b/samples/client/github/jetbrains/http/client/Apis/OidcApi.http index a84b4d7f4606..6a09833a6ac5 100644 --- a/samples/client/github/jetbrains/http/client/Apis/OidcApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/OidcApi.http @@ -6,7 +6,6 @@ GET https://api.github.com/orgs/{{org}}/actions/oidc/customization/sub Accept: application/json ### Set the customization template for an OIDC subject claim for an organization -## PUT https://api.github.com/orgs/{{org}}/actions/oidc/customization/sub Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http b/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http index 2460ad4e436b..049f1b5737bf 100644 --- a/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http @@ -36,7 +36,7 @@ GET https://api.github.com/orgs/{{org}}/members/{{username}} GET https://api.github.com/orgs/{{org}}/public_members/{{username}} ### Convert an organization member to outside collaborator -## Convert an organization member to outside collaborator +## Status code 202, asynchronous request PUT https://api.github.com/orgs/{{org}}/outside_collaborators/{{username}} Content-Type: application/json Accept: application/json @@ -47,7 +47,6 @@ Accept: application/json ### Create a custom organization role -## Create a custom organization role POST https://api.github.com/orgs/{{org}}/organization-roles Content-Type: application/json Accept: application/json @@ -60,7 +59,6 @@ Accept: application/json ### Create an organization invitation -## Create an organization invitation POST https://api.github.com/orgs/{{org}}/invitations Content-Type: application/json Accept: application/json @@ -73,7 +71,6 @@ Accept: application/json ### Create or update custom properties for an organization -## Create or update custom properties for an organization PATCH https://api.github.com/orgs/{{org}}/properties/schema Content-Type: application/json Accept: application/json @@ -99,7 +96,6 @@ Accept: application/json ### Create or update custom property values for organization repositories -## PATCH https://api.github.com/orgs/{{org}}/properties/values Content-Type: application/json Accept: application/json @@ -120,7 +116,6 @@ Accept: application/json ### Create or update a custom property for an organization -## Create or update a custom property for an organization PUT https://api.github.com/orgs/{{org}}/properties/schema/{{custom_property_name}} Content-Type: application/json Accept: application/json @@ -135,7 +130,6 @@ Accept: application/json ### Create an organization webhook -## Create an organization webhook POST https://api.github.com/orgs/{{org}}/hooks Content-Type: application/json Accept: application/json @@ -165,6 +159,15 @@ DELETE https://api.github.com/orgs/{{org}}/organization-roles/{{role_id}} DELETE https://api.github.com/orgs/{{org}}/hooks/{{hook_id}} Accept: application/json +### Enable or disable a security feature for an organization +## Enable or disable a security feature for an organization +POST https://api.github.com/orgs/{{org}}/{{security_product}}/{{enablement}} +Content-Type: application/json + +{ + "query_suite": "" +} + ### Get an organization ## Get an organization @@ -334,7 +337,6 @@ GET https://api.github.com/orgs/{{org}}/hooks?perPage={{perPage}}&page={{page}} Accept: application/json ### Update a custom organization role -## Update a custom organization role PATCH https://api.github.com/orgs/{{org}}/organization-roles/{{role_id}} Content-Type: application/json Accept: application/json @@ -384,7 +386,7 @@ DELETE https://api.github.com/orgs/{{org}}/public_members/{{username}} DELETE https://api.github.com/orgs/{{org}}/security-managers/teams/{{team_slug}} ### Review a request to access organization resources with a fine-grained personal access token -## Review a request to access organization resources with a fine-grained personal access token +## Example of denying a request POST https://api.github.com/orgs/{{org}}/personal-access-token-requests/{{pat_request_id}} Content-Type: application/json Accept: application/json @@ -396,7 +398,7 @@ Accept: application/json ### Review requests to access organization resources with fine-grained personal access tokens -## Review requests to access organization resources with fine-grained personal access tokens +## Example of denying a request POST https://api.github.com/orgs/{{org}}/personal-access-token-requests Content-Type: application/json Accept: application/json @@ -425,7 +427,7 @@ DELETE https://api.github.com/orgs/{{org}}/organization-roles/teams/{{team_slug} DELETE https://api.github.com/orgs/{{org}}/organization-roles/users/{{username}}/{{role_id}} ### Set organization membership for a user -## Set organization membership for a user +## Set an organization membership role for a user PUT https://api.github.com/orgs/{{org}}/memberships/{{username}} Content-Type: application/json Accept: application/json @@ -445,7 +447,6 @@ Accept: application/json DELETE https://api.github.com/orgs/{{org}}/blocks/{{username}} ### Update an organization -## Update an organization PATCH https://api.github.com/orgs/{{org}} Content-Type: application/json Accept: application/json @@ -465,7 +466,6 @@ Accept: application/json ### Update an organization membership for the authenticated user -## Update an organization membership for the authenticated user PATCH https://api.github.com/user/memberships/orgs/{{org}} Content-Type: application/json Accept: application/json @@ -476,7 +476,7 @@ Accept: application/json ### Update the access a fine-grained personal access token has to organization resources -## Update the access a fine-grained personal access token has to organization resources +## Example of revoking a fine-grained personal access token. POST https://api.github.com/orgs/{{org}}/personal-access-tokens/{{pat_id}} Content-Type: application/json Accept: application/json @@ -487,7 +487,7 @@ Accept: application/json ### Update the access to organization resources via fine-grained personal access tokens -## Update the access to organization resources via fine-grained personal access tokens +## Example of revoking a fine-grained personal access token. POST https://api.github.com/orgs/{{org}}/personal-access-tokens Content-Type: application/json Accept: application/json @@ -499,7 +499,6 @@ Accept: application/json ### Update an organization webhook -## Update an organization webhook PATCH https://api.github.com/orgs/{{org}}/hooks/{{hook_id}} Content-Type: application/json Accept: application/json @@ -511,7 +510,7 @@ Accept: application/json ### Update a webhook configuration for an organization -## Update a webhook configuration for an organization +## Update an existing webhook PATCH https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/config Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http b/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http index f734fe530dd9..345fd67c815a 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http @@ -1,7 +1,7 @@ ## ProjectsApi ### Add project collaborator -## Add project collaborator +## Applying write permissions for the new collaborator PUT https://api.github.com/projects/{{project_id}}/collaborators/{{username}} Content-Type: application/json Accept: application/json @@ -12,7 +12,7 @@ Accept: application/json ### Create a project card -## Create a project card +## Create a new card POST https://api.github.com/projects/columns/{{column_id}}/cards Content-Type: application/json Accept: application/json @@ -23,7 +23,6 @@ Accept: application/json ### Create a project column -## Create a project column POST https://api.github.com/projects/{{project_id}}/columns Content-Type: application/json Accept: application/json @@ -34,7 +33,7 @@ Accept: application/json ### Create a user project -## Create a user project +## Create a new project POST https://api.github.com/user/projects Content-Type: application/json Accept: application/json @@ -46,7 +45,6 @@ Accept: application/json ### Create an organization project -## Create an organization project POST https://api.github.com/orgs/{{org}}/projects Content-Type: application/json Accept: application/json @@ -58,7 +56,6 @@ Accept: application/json ### Create a repository project -## Create a repository project POST https://api.github.com/repos/{{owner}}/{{repo}}/projects Content-Type: application/json Accept: application/json @@ -135,7 +132,7 @@ GET https://api.github.com/users/{{username}}/projects?state={{state}}&perPage={ Accept: application/json ### Move a project card -## Move a project card +## Move the card to the bottom of the column POST https://api.github.com/projects/columns/cards/{{card_id}}/moves Content-Type: application/json Accept: application/json @@ -147,7 +144,7 @@ Accept: application/json ### Move a project column -## Move a project column +## Move the column to the end of the board POST https://api.github.com/projects/columns/{{column_id}}/moves Content-Type: application/json Accept: application/json @@ -163,7 +160,7 @@ DELETE https://api.github.com/projects/{{project_id}}/collaborators/{{username}} Accept: application/json ### Update a project -## Update a project +## Change the name, state, and permissions for a project PATCH https://api.github.com/projects/{{project_id}} Content-Type: application/json Accept: application/json @@ -176,7 +173,7 @@ Accept: application/json ### Update an existing project card -## Update an existing project card +## Change the note on the card PATCH https://api.github.com/projects/columns/cards/{{card_id}} Content-Type: application/json Accept: application/json @@ -187,7 +184,7 @@ Accept: application/json ### Update an existing project column -## Update an existing project column +## Rename the project column PATCH https://api.github.com/projects/columns/{{column_id}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/PullsApi.http b/samples/client/github/jetbrains/http/client/Apis/PullsApi.http index 0752af228e09..9ab2969c2a62 100644 --- a/samples/client/github/jetbrains/http/client/Apis/PullsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/PullsApi.http @@ -5,7 +5,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/merge ### Create a pull request -## Create a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls Content-Type: application/json Accept: application/json @@ -19,7 +18,6 @@ Accept: application/json ### Create a reply for a review comment -## Create a reply for a review comment POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/comments/{{comment_id}}/replies Content-Type: application/json Accept: application/json @@ -30,7 +28,6 @@ Accept: application/json ### Create a review for a pull request -## Create a review for a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews Content-Type: application/json Accept: application/json @@ -48,7 +45,7 @@ Accept: application/json ### Create a review comment for a pull request -## Create a review comment for a pull request +## Example for a multi-line comment POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/comments Content-Type: application/json Accept: application/json @@ -75,7 +72,6 @@ DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_ Accept: application/json ### Dismiss a review for a pull request -## Dismiss a review for a pull request PUT https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}}/dismissals Content-Type: application/json Accept: application/json @@ -142,7 +138,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/review Accept: application/json ### Merge a pull request -## Merge a pull request PUT https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/merge Content-Type: application/json Accept: application/json @@ -154,7 +149,6 @@ Accept: application/json ### Remove requested reviewers from a pull request -## Remove requested reviewers from a pull request DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/requested_reviewers Content-Type: application/json Accept: application/json @@ -166,7 +160,6 @@ Accept: application/json ### Request reviewers for a pull request -## Request reviewers for a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/requested_reviewers Content-Type: application/json Accept: application/json @@ -178,7 +171,6 @@ Accept: application/json ### Submit a review for a pull request -## Submit a review for a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}}/events Content-Type: application/json Accept: application/json @@ -190,7 +182,6 @@ Accept: application/json ### Update a pull request -## Update a pull request PATCH https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}} Content-Type: application/json Accept: application/json @@ -204,7 +195,6 @@ Accept: application/json ### Update a pull request branch -## Update a pull request branch PUT https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/update-branch Content-Type: application/json Accept: application/json @@ -215,7 +205,6 @@ Accept: application/json ### Update a review for a pull request -## Update a review for a pull request PUT https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}} Content-Type: application/json Accept: application/json @@ -226,7 +215,6 @@ Accept: application/json ### Update a review comment for a pull request -## Update a review comment for a pull request PATCH https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http b/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http index 385430c5d12e..4e2f0b51f171 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http @@ -1,7 +1,6 @@ ## ReactionsApi ### Create reaction for a commit comment -## Create reaction for a commit comment POST https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}}/reactions Content-Type: application/json Accept: application/json @@ -12,7 +11,6 @@ Accept: application/json ### Create reaction for an issue -## Create reaction for an issue POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/reactions Content-Type: application/json Accept: application/json @@ -23,7 +21,6 @@ Accept: application/json ### Create reaction for an issue comment -## Create reaction for an issue comment POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}}/reactions Content-Type: application/json Accept: application/json @@ -34,7 +31,6 @@ Accept: application/json ### Create reaction for a pull request review comment -## Create reaction for a pull request review comment POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}}/reactions Content-Type: application/json Accept: application/json @@ -45,7 +41,6 @@ Accept: application/json ### Create reaction for a release -## Create reaction for a release POST https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/reactions Content-Type: application/json Accept: application/json @@ -56,7 +51,6 @@ Accept: application/json ### Create reaction for a team discussion comment -## Create reaction for a team discussion comment POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions Content-Type: application/json Accept: application/json @@ -67,7 +61,6 @@ Accept: application/json ### Create reaction for a team discussion comment (Legacy) -## Create reaction for a team discussion comment (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions Content-Type: application/json Accept: application/json @@ -78,7 +71,6 @@ Accept: application/json ### Create reaction for a team discussion -## Create reaction for a team discussion POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/reactions Content-Type: application/json Accept: application/json @@ -89,7 +81,6 @@ Accept: application/json ### Create reaction for a team discussion (Legacy) -## Create reaction for a team discussion (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/reactions Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ReposApi.http b/samples/client/github/jetbrains/http/client/Apis/ReposApi.http index eb3db68c7bc3..eb4e3c2819d3 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ReposApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ReposApi.http @@ -6,7 +6,6 @@ PATCH https://api.github.com/user/repository_invitations/{{invitation_id}} Accept: application/json ### Add app access restrictions -## Add app access restrictions POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/apps Content-Type: application/json Accept: application/json @@ -17,7 +16,7 @@ Accept: application/json ### Add a repository collaborator -## Add a repository collaborator +## Add a collaborator with triage permissions PUT https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username}} Content-Type: application/json Accept: application/json @@ -28,7 +27,7 @@ Accept: application/json ### Add status check contexts -## Add status check contexts +## Example adding status checks to a branch protection rule POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks/contexts Content-Type: application/json Accept: application/json @@ -39,7 +38,7 @@ Accept: application/json ### Add team access restrictions -## Add team access restrictions +## Example adding a team in a branch protection rule POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/teams Content-Type: application/json Accept: application/json @@ -50,7 +49,7 @@ Accept: application/json ### Add user access restrictions -## Add user access restrictions +## Example adding a user in a branch protection rule POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users Content-Type: application/json Accept: application/json @@ -89,7 +88,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/compare/{{basehead}}?page={{ Accept: application/json ### Create an autolink reference for a repository -## Create an autolink reference for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/autolinks Content-Type: application/json Accept: application/json @@ -102,7 +100,6 @@ Accept: application/json ### Create a commit comment -## Create a commit comment POST https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{commit_sha}}/comments Content-Type: application/json Accept: application/json @@ -121,7 +118,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protect Accept: application/json ### Create a commit status -## Create a commit status POST https://api.github.com/repos/{{owner}}/{{repo}}/statuses/{{sha}} Content-Type: application/json Accept: application/json @@ -135,7 +131,6 @@ Accept: application/json ### Create a deploy key -## Create a deploy key POST https://api.github.com/repos/{{owner}}/{{repo}}/keys Content-Type: application/json Accept: application/json @@ -148,7 +143,7 @@ Accept: application/json ### Create a deployment -## Create a deployment +## Simple example POST https://api.github.com/repos/{{owner}}/{{repo}}/deployments Content-Type: application/json Accept: application/json @@ -159,9 +154,23 @@ Accept: application/json "description" : "Deploy request from hubot" } +### Create a deployment +## Advanced example +POST https://api.github.com/repos/{{owner}}/{{repo}}/deployments +Content-Type: application/json +Accept: application/json + +{ + "ref" : "topic-branch", + "auto_merge" : false, + "payload" : "{ \"deploy\": \"migrate\" }", + "description" : "Deploy request from hubot", + "required_contexts" : [ "ci/janky", "security/brakeman" ] +} + ### Create a deployment branch policy -## Create a deployment branch policy +## Example of a wildcard name pattern POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies Content-Type: application/json Accept: application/json @@ -170,9 +179,30 @@ Accept: application/json "name" : "release/*" } +### Create a deployment branch policy +## Example of a single branch name pattern +POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies +Content-Type: application/json +Accept: application/json + +{ + "name" : "main", + "type" : "branch" +} + +### Create a deployment branch policy +## Example of a single tag name pattern +POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies +Content-Type: application/json +Accept: application/json + +{ + "name" : "v1", + "type" : "tag" +} + ### Create a custom deployment protection rule on an environment -## Create a custom deployment protection rule on an environment POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment_protection_rules Content-Type: application/json Accept: application/json @@ -183,7 +213,6 @@ Accept: application/json ### Create a deployment status -## Create a deployment status POST https://api.github.com/repos/{{owner}}/{{repo}}/deployments/{{deployment_id}}/statuses Content-Type: application/json Accept: application/json @@ -197,7 +226,6 @@ Accept: application/json ### Create a repository dispatch event -## Create a repository dispatch event POST https://api.github.com/repos/{{owner}}/{{repo}}/dispatches Content-Type: application/json Accept: application/json @@ -212,7 +240,6 @@ Accept: application/json ### Create a repository for the authenticated user -## Create a repository for the authenticated user POST https://api.github.com/user/repos Content-Type: application/json Accept: application/json @@ -228,7 +255,6 @@ Accept: application/scim+json ### Create a fork -## Create a fork POST https://api.github.com/repos/{{owner}}/{{repo}}/forks Content-Type: application/json Accept: application/json @@ -242,7 +268,6 @@ Accept: application/scim+json ### Create an organization repository -## Create an organization repository POST https://api.github.com/orgs/{{org}}/repos Content-Type: application/json Accept: application/json @@ -259,7 +284,6 @@ Accept: application/json ### Create or update custom property values for a repository -## PATCH https://api.github.com/repos/{{owner}}/{{repo}}/properties/values Content-Type: application/json Accept: application/json @@ -279,7 +303,6 @@ Accept: application/json ### Create or update an environment -## Create or update an environment PUT https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}} Content-Type: application/json Accept: application/json @@ -302,7 +325,7 @@ Accept: application/json ### Create or update file contents -## Create or update file contents +## Example for creating a file PUT https://api.github.com/repos/{{owner}}/{{repo}}/contents/{{path}} Content-Type: application/json Accept: application/json @@ -316,9 +339,24 @@ Accept: application/json "content" : "bXkgbmV3IGZpbGUgY29udGVudHM=" } +### Create or update file contents +## Example for updating a file +PUT https://api.github.com/repos/{{owner}}/{{repo}}/contents/{{path}} +Content-Type: application/json +Accept: application/json + +{ + "message" : "a new commit message", + "committer" : { + "name" : "Monalisa Octocat", + "email" : "octocat@github.com" + }, + "content" : "bXkgdXBkYXRlZCBmaWxlIGNvbnRlbnRz", + "sha" : "95b966ae1c166bd92f8ae7d1c313e738c731dfc3" +} + ### Create an organization repository ruleset -## Create an organization repository ruleset POST https://api.github.com/orgs/{{org}}/rulesets Content-Type: application/json Accept: application/json @@ -354,7 +392,6 @@ Accept: application/json ### Create a GitHub Pages deployment -## Create a GitHub Pages deployment POST https://api.github.com/repos/{{owner}}/{{repo}}/pages/deployments Content-Type: application/json Accept: application/json @@ -370,7 +407,6 @@ Accept: application/scim+json ### Create a GitHub Pages site -## Create a GitHub Pages site POST https://api.github.com/repos/{{owner}}/{{repo}}/pages Content-Type: application/json Accept: application/json @@ -384,7 +420,6 @@ Accept: application/json ### Create a release -## Create a release POST https://api.github.com/repos/{{owner}}/{{repo}}/releases Content-Type: application/json Accept: application/json @@ -401,7 +436,6 @@ Accept: application/json ### Create a repository ruleset -## Create a repository ruleset POST https://api.github.com/repos/{{owner}}/{{repo}}/rulesets Content-Type: application/json Accept: application/json @@ -432,7 +466,6 @@ Accept: application/json ### Create a tag protection state for a repository -## Create a tag protection state for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/tags/protection Content-Type: application/json Accept: application/json @@ -443,7 +476,6 @@ Accept: application/json ### Create a repository using a template -## Create a repository using a template POST https://api.github.com/repos/{{template_owner}}/{{template_repo}}/generate Content-Type: application/json Accept: application/json @@ -458,7 +490,6 @@ Accept: application/json ### Create a repository webhook -## Create a repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks Content-Type: application/json Accept: application/json @@ -532,7 +563,6 @@ Accept: application/json DELETE https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies/{{branch_policy_id}} ### Delete a file -## Delete a file DELETE https://api.github.com/repos/{{owner}}/{{repo}}/contents/{{path}} Content-Type: application/json Accept: application/json @@ -630,7 +660,6 @@ Accept: application/scim+json PUT https://api.github.com/repos/{{owner}}/{{repo}}/vulnerability-alerts ### Generate release notes content for a release -## Generate release notes content for a release POST https://api.github.com/repos/{{owner}}/{{repo}}/releases/generate-notes Content-Type: application/json Accept: application/json @@ -1114,7 +1143,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/hooks?perPage={{perPage}}&pa Accept: application/json ### Merge a branch -## Merge a branch POST https://api.github.com/repos/{{owner}}/{{repo}}/merges Content-Type: application/json Accept: application/json @@ -1127,7 +1155,6 @@ Accept: application/json ### Sync a fork branch with the upstream repository -## Sync a fork branch with the upstream repository POST https://api.github.com/repos/{{owner}}/{{repo}}/merge-upstream Content-Type: application/json Accept: application/json @@ -1149,7 +1176,6 @@ Accept: application/json Accept: application/scim+json ### Remove app access restrictions -## Remove app access restrictions DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/apps Content-Type: application/json Accept: application/json @@ -1165,7 +1191,7 @@ DELETE https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username} Accept: application/json ### Remove status check contexts -## Remove status check contexts +## Example removing status checks from a branch protection rule DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks/contexts Content-Type: application/json Accept: application/json @@ -1180,7 +1206,7 @@ Accept: application/json DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks ### Remove team access restrictions -## Remove team access restrictions +## Example removing a team in a branch protection rule DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/teams Content-Type: application/json Accept: application/json @@ -1191,7 +1217,7 @@ Accept: application/json ### Remove user access restrictions -## Remove user access restrictions +## Example removing a user in a branch protection rule DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users Content-Type: application/json Accept: application/json @@ -1202,7 +1228,6 @@ Accept: application/json ### Rename a branch -## Rename a branch POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/rename Content-Type: application/json Accept: application/json @@ -1213,7 +1238,6 @@ Accept: application/json ### Replace all repository topics -## Replace all repository topics PUT https://api.github.com/repos/{{owner}}/{{repo}}/topics Content-Type: application/json Accept: application/json @@ -1234,7 +1258,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protect Accept: application/json ### Set app access restrictions -## Set app access restrictions PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/apps Content-Type: application/json Accept: application/json @@ -1245,7 +1268,7 @@ Accept: application/json ### Set status check contexts -## Set status check contexts +## Example updating status checks for a branch protection rule PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks/contexts Content-Type: application/json Accept: application/json @@ -1256,7 +1279,7 @@ Accept: application/json ### Set team access restrictions -## Set team access restrictions +## Example replacing a team in a branch protection rule PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/teams Content-Type: application/json Accept: application/json @@ -1267,7 +1290,7 @@ Accept: application/json ### Set user access restrictions -## Set user access restrictions +## Example replacing a user in a branch protection rule PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users Content-Type: application/json Accept: application/json @@ -1283,7 +1306,6 @@ POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/tests Accept: application/json ### Transfer a repository -## Transfer a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/transfer Content-Type: application/json Accept: application/json @@ -1296,7 +1318,6 @@ Accept: application/json ### Update a repository -## Update a repository PATCH https://api.github.com/repos/{{owner}}/{{repo}} Content-Type: application/json Accept: application/json @@ -1313,7 +1334,6 @@ Accept: application/json ### Update branch protection -## Update branch protection PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection Content-Type: application/json Accept: application/json @@ -1354,7 +1374,6 @@ Accept: application/json ### Update a commit comment -## Update a commit comment PATCH https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}} Content-Type: application/json Accept: application/json @@ -1365,7 +1384,6 @@ Accept: application/json ### Update a deployment branch policy -## Update a deployment branch policy PUT https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies/{{branch_policy_id}} Content-Type: application/json Accept: application/json @@ -1376,7 +1394,6 @@ Accept: application/json ### Update information about a GitHub Pages site -## Update information about a GitHub Pages site PUT https://api.github.com/repos/{{owner}}/{{repo}}/pages Content-Type: application/json Accept: application/json @@ -1392,7 +1409,7 @@ Accept: application/scim+json ### Update a repository invitation -## Update a repository invitation +## Example request body PATCH https://api.github.com/repos/{{owner}}/{{repo}}/invitations/{{invitation_id}} Content-Type: application/json Accept: application/json @@ -1403,7 +1420,6 @@ Accept: application/json ### Update an organization repository ruleset -## Update an organization repository ruleset PUT https://api.github.com/orgs/{{org}}/rulesets/{{ruleset_id}} Content-Type: application/json Accept: application/json @@ -1439,7 +1455,6 @@ Accept: application/json ### Update pull request review protection -## Update pull request review protection PATCH https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_pull_request_reviews Content-Type: application/json Accept: application/json @@ -1463,7 +1478,6 @@ Accept: application/json ### Update a release -## Update a release PATCH https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}} Content-Type: application/json Accept: application/json @@ -1479,7 +1493,6 @@ Accept: application/json ### Update a release asset -## Update a release asset PATCH https://api.github.com/repos/{{owner}}/{{repo}}/releases/assets/{{asset_id}} Content-Type: application/json Accept: application/json @@ -1491,7 +1504,6 @@ Accept: application/json ### Update a repository ruleset -## Update a repository ruleset PUT https://api.github.com/repos/{{owner}}/{{repo}}/rulesets/{{ruleset_id}} Content-Type: application/json Accept: application/json @@ -1522,7 +1534,6 @@ Accept: application/json ### Update status check protection -## Update status check protection PATCH https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks Content-Type: application/json Accept: application/json @@ -1534,7 +1545,6 @@ Accept: application/json ### Update a repository webhook -## Update a repository webhook PATCH https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}} Content-Type: application/json Accept: application/json @@ -1546,7 +1556,7 @@ Accept: application/json ### Update a webhook configuration for a repository -## Update a webhook configuration for a repository +## Example of updating content type and URL PATCH https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/config Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http b/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http index c5e53d7561f2..744ea772f8d0 100644 --- a/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http @@ -26,7 +26,6 @@ GET https://api.github.com/repos/{{owner}}/{{repo}}/secret-scanning/alerts/{{ale Accept: application/json ### Update a secret scanning alert -## Update a secret scanning alert PATCH https://api.github.com/repos/{{owner}}/{{repo}}/secret-scanning/alerts/{{alert_number}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http b/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http index 549d5ce6c194..2a2d0f99464c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http @@ -7,7 +7,6 @@ Accept: application/json Accept: application/scim+json ### Privately report a security vulnerability -## Privately report a security vulnerability POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/reports Content-Type: application/json Accept: application/json @@ -30,7 +29,6 @@ Accept: application/json ### Create a repository security advisory -## Create a repository security advisory POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories Content-Type: application/json Accept: application/json @@ -59,6 +57,50 @@ Accept: application/json } ] } +### Create a repository security advisory +POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories +Content-Type: application/json +Accept: application/json + +{ + "summary" : "A new important advisory", + "description" : "A more in-depth description of what the problem is.", + "cvss_vector_string" : "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L", + "cve_id" : null, + "vulnerabilities" : [ { + "package" : { + "name" : "a-package", + "ecosystem" : "npm" + }, + "vulnerable_version_range" : "< 1.0.0", + "patched_versions" : "1.0.0", + "vulnerable_functions" : [ "important_function" ] + } ], + "cwe_ids" : [ "CWE-1101", "CWE-20" ], + "credits" : [ { + "login" : "monalisa", + "type" : "reporter" + }, { + "login" : "octocat", + "type" : "analyst" + } ] +} + +### Create a repository security advisory +POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories +Content-Type: application/json +Accept: application/json + +{ + "summary" : "A new important advisory", + "description" : "A more in-depth description of what the problem is.", + "vulnerabilities" : [ { + "package" : { + "ecosystem" : "npm" + } + } ] +} + ### Request a CVE for a repository security advisory ## Request a CVE for a repository security advisory @@ -94,7 +136,7 @@ Accept: application/json Accept: application/scim+json ### Update a repository security advisory -## Update a repository security advisory +## Updating the severity and state. PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} Content-Type: application/json Accept: application/json @@ -104,3 +146,44 @@ Accept: application/json "state" : "published" } +### Update a repository security advisory +## To add a credit to an advisory, send the whole array of values. +PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} +Content-Type: application/json +Accept: application/json + +{ + "credits" : [ { + "login" : "monauser", + "type" : "remediation_developer" + } ] +} + +### Update a repository security advisory +## To add vulnerable versions, include existing versions in the array. +PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} +Content-Type: application/json +Accept: application/json + + + +### Update a repository security advisory +## Example of an invalid state transition, from `published` to `draft`. +PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} +Content-Type: application/json +Accept: application/json + +{ + "state" : "draft" +} + +### Update a repository security advisory +## Severity cannot be updated when the CVSS is already set. +PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} +Content-Type: application/json +Accept: application/json + +{ + "severity" : "low" +} + diff --git a/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http b/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http index 2bcc6f1296f4..21a156075d92 100644 --- a/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http @@ -6,7 +6,7 @@ PUT https://api.github.com/teams/{{team_id}}/members/{{username}} Accept: application/json ### Add or update team membership for a user -## Add or update team membership for a user +## Add or update team membership for an organization member PUT https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/memberships/{{username}} Content-Type: application/json Accept: application/json @@ -17,7 +17,7 @@ Accept: application/json ### Add or update team membership for a user (Legacy) -## Add or update team membership for a user (Legacy) +## Assign the member role for a user in a team PUT https://api.github.com/teams/{{team_id}}/memberships/{{username}} Content-Type: application/json Accept: application/json @@ -28,7 +28,7 @@ Accept: application/json ### Add or update team project permissions -## Add or update team project permissions +## Updates the permissions for the team to write for the project PUT https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/projects/{{project_id}} Content-Type: application/json Accept: application/json @@ -39,7 +39,7 @@ Accept: application/json ### Add or update team project permissions (Legacy) -## Add or update team project permissions (Legacy) +## Example of setting permission to read PUT https://api.github.com/teams/{{team_id}}/projects/{{project_id}} Content-Type: application/json Accept: application/json @@ -50,7 +50,7 @@ Accept: application/json ### Add or update team repository permissions -## Add or update team repository permissions +## Adding a team to an organization repository with the write role PUT https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/repos/{{owner}}/{{repo}} Content-Type: application/json @@ -60,7 +60,7 @@ Content-Type: application/json ### Add or update team repository permissions (Legacy) -## Add or update team repository permissions (Legacy) +## Example of setting permission to pull PUT https://api.github.com/teams/{{team_id}}/repos/{{owner}}/{{repo}} Content-Type: application/json Accept: application/json @@ -91,7 +91,6 @@ GET https://api.github.com/teams/{{team_id}}/repos/{{owner}}/{{repo}} Accept: application/json ### Create a team -## Create a team POST https://api.github.com/orgs/{{org}}/teams Content-Type: application/json Accept: application/json @@ -106,7 +105,6 @@ Accept: application/json ### Create a discussion comment -## Create a discussion comment POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments Content-Type: application/json Accept: application/json @@ -117,7 +115,6 @@ Accept: application/json ### Create a discussion comment (Legacy) -## Create a discussion comment (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments Content-Type: application/json Accept: application/json @@ -128,7 +125,6 @@ Accept: application/json ### Create a discussion -## Create a discussion POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions Content-Type: application/json Accept: application/json @@ -140,7 +136,6 @@ Accept: application/json ### Create a discussion (Legacy) -## Create a discussion (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions Content-Type: application/json Accept: application/json @@ -330,7 +325,6 @@ DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/repos/{{owner}}/{ DELETE https://api.github.com/teams/{{team_id}}/repos/{{owner}}/{{repo}} ### Update a discussion comment -## Update a discussion comment PATCH https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}} Content-Type: application/json Accept: application/json @@ -341,7 +335,6 @@ Accept: application/json ### Update a discussion comment (Legacy) -## Update a discussion comment (Legacy) PATCH https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}} Content-Type: application/json Accept: application/json @@ -352,7 +345,6 @@ Accept: application/json ### Update a discussion -## Update a discussion PATCH https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}} Content-Type: application/json Accept: application/json @@ -363,7 +355,6 @@ Accept: application/json ### Update a discussion (Legacy) -## Update a discussion (Legacy) PATCH https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}} Content-Type: application/json Accept: application/json @@ -374,7 +365,6 @@ Accept: application/json ### Update a team -## Update a team PATCH https://api.github.com/orgs/{{org}}/teams/{{team_slug}} Content-Type: application/json Accept: application/json @@ -388,7 +378,6 @@ Accept: application/json ### Update a team (Legacy) -## Update a team (Legacy) PATCH https://api.github.com/teams/{{team_id}} Content-Type: application/json Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/UsersApi.http b/samples/client/github/jetbrains/http/client/Apis/UsersApi.http index 1c88c3596063..3ba4cbc648c0 100644 --- a/samples/client/github/jetbrains/http/client/Apis/UsersApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/UsersApi.http @@ -1,7 +1,7 @@ ## UsersApi ### Add an email address for the authenticated user -## Add an email address for the authenticated user +## Example adding multiple email addresses POST https://api.github.com/user/emails Content-Type: application/json Accept: application/json @@ -12,7 +12,7 @@ Accept: application/json ### Add social accounts for the authenticated user -## Add social accounts for the authenticated user +## Adding multiple social accounts POST https://api.github.com/user/social_accounts Content-Type: application/json Accept: application/json @@ -42,7 +42,6 @@ GET https://api.github.com/user/following/{{username}} Accept: application/json ### Create a GPG key for the authenticated user -## Create a GPG key for the authenticated user POST https://api.github.com/user/gpg_keys Content-Type: application/json Accept: application/json @@ -54,7 +53,6 @@ Accept: application/json ### Create a public SSH key for the authenticated user -## Create a public SSH key for the authenticated user POST https://api.github.com/user/keys Content-Type: application/json Accept: application/json @@ -66,7 +64,6 @@ Accept: application/json ### Create a SSH signing key for the authenticated user -## Create a SSH signing key for the authenticated user POST https://api.github.com/user/ssh_signing_keys Content-Type: application/json Accept: application/json @@ -78,7 +75,7 @@ Accept: application/json ### Delete an email address for the authenticated user -## Delete an email address for the authenticated user +## Example deleting multiple email accounts DELETE https://api.github.com/user/emails Content-Type: application/json Accept: application/json @@ -99,7 +96,7 @@ DELETE https://api.github.com/user/keys/{{key_id}} Accept: application/json ### Delete social accounts for the authenticated user -## Delete social accounts for the authenticated user +## Deleting multiple social accounts DELETE https://api.github.com/user/social_accounts Content-Type: application/json Accept: application/json @@ -230,7 +227,7 @@ GET https://api.github.com/users/{{username}}/ssh_signing_keys?perPage={{perPage Accept: application/json ### Set primary email visibility for the authenticated user -## Set primary email visibility for the authenticated user +## Example setting the primary email address to private PATCH https://api.github.com/user/email/visibility Content-Type: application/json Accept: application/json @@ -251,7 +248,7 @@ DELETE https://api.github.com/user/following/{{username}} Accept: application/json ### Update the authenticated user -## Update the authenticated user +## Example of updating blog and name PATCH https://api.github.com/user Content-Type: application/json Accept: application/json diff --git a/samples/server/petstore/rust-server/output/openapi-v3/examples/client/main.rs b/samples/server/petstore/rust-server/output/openapi-v3/examples/client/main.rs index 32655c7bb120..5c9a0f0b4c14 100644 --- a/samples/server/petstore/rust-server/output/openapi-v3/examples/client/main.rs +++ b/samples/server/petstore/rust-server/output/openapi-v3/examples/client/main.rs @@ -206,7 +206,7 @@ fn main() { }, Some("ExamplesTest") => { let result = rt.block_on(client.examples_test( - Some(&vec!["foo".to_string()]) + Some(&serde_json::from_str::>(r#"[ "foo" ]"#).expect("Failed to parse JSON example")) )); info!("{:?} (X-Span-ID: {:?})", result, (client.context() as &dyn Has).get().clone()); }, @@ -379,7 +379,9 @@ fn main() { */ Some("CreateRepo") => { let result = rt.block_on(client.create_repo( - serde_json::from_str::(r#"{"requiredParam":true}"#).expect("Failed to parse JSON example") + serde_json::from_str::(r#"{ + "requiredParam" : true +}"#).expect("Failed to parse JSON example") )); info!("{:?} (X-Span-ID: {:?})", result, (client.context() as &dyn Has).get().clone()); }, From 260d7fb2a1ec683b4d98f6e0ccdb65ef9279d3ff Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 19:42:56 +0200 Subject: [PATCH 07/42] Use example lambda in remaining templates --- .../codegen/CodegenParameter.java | 4 +++ .../openapitools/codegen/CodegenProperty.java | 31 ++++++++++++++++++- .../openapitools/codegen/DefaultCodegen.java | 7 +++-- .../resources/C-libcurl/model_test.mustache | 8 ++--- .../Java/libraries/feign/pojo.mustache | 2 +- .../Java/libraries/jersey2/pojo.mustache | 4 +-- .../Java/libraries/jersey3/pojo.mustache | 4 +-- .../Java/libraries/native/pojo.mustache | 4 +-- .../Java/libraries/okhttp-gson/pojo.mustache | 4 +-- .../Java/libraries/restclient/pojo.mustache | 4 +-- .../Java/libraries/resttemplate/pojo.mustache | 4 +-- .../Java/libraries/webclient/pojo.mustache | 4 +-- .../src/main/resources/Java/pojo.mustache | 4 +-- .../resources/JavaInflector/pojo.mustache | 2 +- .../resources/JavaJaxRS/cxf-cdi/pojo.mustache | 2 +- .../resources/JavaJaxRS/cxf-ext/pojo.mustache | 2 +- .../resources/JavaJaxRS/cxf/pojo.mustache | 4 +-- .../JavaJaxRS/libraries/jersey3/pojo.mustache | 2 +- .../main/resources/JavaJaxRS/pojo.mustache | 2 +- .../JavaJaxRS/resteasy/eap/pojo.mustache | 2 +- .../JavaJaxRS/resteasy/pojo.mustache | 2 +- .../resources/JavaJaxRS/spec/pojo.mustache | 6 ++-- .../JavaSpring/lombokAnnotation.mustache | 2 +- .../main/resources/JavaSpring/pojo.mustache | 4 +-- .../src/main/resources/apex/pojo.mustache | 2 +- .../resources/aspnetcore/2.0/model.mustache | 6 ++-- .../resources/aspnetcore/2.1/model.mustache | 4 +-- .../resources/aspnetcore/3.0/model.mustache | 4 +-- .../confluenceWikiDocs/index.mustache | 2 +- .../csharp-functions/modelGeneric.mustache | 12 +++---- .../generichost/modelGeneric.mustache | 30 +++++++++--------- .../resources/csharp/modelGeneric.mustache | 12 +++---- .../resources/htmlDocs2/sample_curl.mustache | 2 +- .../resources/java-camel-server/pojo.mustache | 4 +-- .../java-micronaut/common/model/pojo.mustache | 4 +-- .../resources/java-msf4j-server/pojo.mustache | 2 +- .../main/resources/java-pkmst/pojo.mustache | 2 +- .../java-undertow-server/pojo.mustache | 2 +- .../kotlin-spring/dataClassOptVar.mustache | 4 +-- .../kotlin-spring/dataClassReqVar.mustache | 4 +-- .../kotlin-spring/interfaceOptVar.mustache | 4 +-- .../kotlin-spring/interfaceReqVar.mustache | 4 +-- .../postman-collection/request.mustache | 2 +- .../resources/powershell/model_doc.mustache | 2 +- .../python-fastapi/model_test.mustache | 4 +-- .../python-pydantic-v1/model_test.mustache | 4 +-- .../main/resources/python/model_test.mustache | 4 +-- .../partial_model_generic_doc.mustache | 2 +- .../scala-akka-http-server/model.mustache | 2 +- .../resources/scala-cask/modelTest.mustache | 4 +-- .../typescript-fetch/model_doc.mustache | 2 +- .../resources/xojo-client/api_mock.mustache | 2 +- 52 files changed, 140 insertions(+), 106 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java index eacbe0d107d3..a6c0864676e6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java @@ -558,6 +558,10 @@ public Mustache.Lambda getLambdaExample() { return null; } + public boolean getHasExample() { + return exampleJsonNode != null || example != null; + } + public void setExample(String example) { this.example = example; this.exampleJsonNode = null; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java index c854389be7b2..482a3bff3846 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java @@ -17,8 +17,11 @@ package org.openapitools.codegen; +import com.fasterxml.jackson.databind.JsonNode; +import com.samskivert.mustache.Mustache; import lombok.Getter; import lombok.Setter; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import java.util.*; @@ -96,8 +99,9 @@ public class CodegenProperty implements Cloneable, IJsonSchemaValidationProperti /** * A free-form property to include an example of an instance for this schema. */ - @Getter @Setter + @Getter public String example; + private JsonNode exampleJsonNode; @Getter @Setter public String jsonSchema; @@ -605,6 +609,30 @@ public String getRef() { return ref; } + public Mustache.Lambda getLambdaExample() { + if (exampleJsonNode != null) { + return new JsonOutputLambda(exampleJsonNode); + } + if (example != null) { + return new JsonOutputLambda(example); + } + return null; + } + + public boolean getHasExample() { + return exampleJsonNode != null || example != null; + } + + public void setExample(String example) { + this.example = example; + this.exampleJsonNode = null; + } + + public void setExample(JsonNode exampleJsonNode) { + this.exampleJsonNode = exampleJsonNode; + this.example = exampleJsonNode != null && exampleJsonNode.isValueNode() ? exampleJsonNode.asText() : null; + } + @Override public CodegenProperty clone() { try { @@ -651,6 +679,7 @@ public CodegenProperty clone() { if (this.contains != null) { cp.setContains(this.contains); } + cp.exampleJsonNode = this.exampleJsonNode; return cp; } catch (CloneNotSupportedException e) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index bb4e9311e06c..2b6a78050ae0 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -4026,11 +4026,11 @@ public CodegenProperty fromProperty(String name, Schema p, boolean required, boo property.setter = toSetter(name); // put toExampleValue in a try-catch block to log the error as example values are not critical try { - property.example = toExampleValue(p); + property.setExample(toExampleValue(p)); } catch (Exception e) { LOGGER.error("Error in generating `example` for the property {}. Default to ERROR_TO_EXAMPLE_VALUE. Enable debugging for more info.", property.baseName); LOGGER.debug("Exception from toExampleValue: {}", e.getMessage()); - property.example = "ERROR_TO_EXAMPLE_VALUE"; + property.setExample("ERROR_TO_EXAMPLE_VALUE"); } property.jsonSchema = Json.pretty(Json.mapper().convertValue(p, TreeMap.class)); @@ -4259,7 +4259,7 @@ public CodegenProperty fromProperty(String name, Schema p, boolean required, boo // that e.g. `allOf: [ $ref ]` with a sibling `example` keeps the declared example // instead of falling back to the literal "null". if (original.getExample() != null) { - property.example = toExampleValue(original); + property.setExample(toExampleValue(original)); } } @@ -5858,6 +5858,7 @@ protected List> toExamples(Map examples) { final Map kv = new HashMap<>(); kv.put("contentType", entry.getKey()); kv.put("example", entry.getValue()); + kv.put("lambdaExample", new JsonOutputLambda(entry.getValue())); output.add(kv); } return output; diff --git a/modules/openapi-generator/src/main/resources/C-libcurl/model_test.mustache b/modules/openapi-generator/src/main/resources/C-libcurl/model_test.mustache index 827e59c35cdd..bca6ce4d6fe5 100644 --- a/modules/openapi-generator/src/main/resources/C-libcurl/model_test.mustache +++ b/modules/openapi-generator/src/main/resources/C-libcurl/model_test.mustache @@ -27,15 +27,15 @@ {{classname}}_t* {{classname}} = NULL; if (include_optional) { {{classname}} = {{classname}}_create( -{{#vars}} {{#isEnum}}{{^isContainer}}{{#example}}{{projectName}}_{{classVarName}}_{{enumName}}_{{{.}}}{{/example}}{{/isContainer}}{{#isContainer}}{{{example}}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{example}}}{{/isEnum}}{{^example}}{{#isModel}}{{#isEnum}}// enum {{datatypeWithEnum}}_e Work in Progress +{{#vars}} {{#isEnum}}{{^isContainer}}{{#hasExample}}{{projectName}}_{{classVarName}}_{{enumName}}_{{#lambdaExample}}{{/lambdaExample}}{{/hasExample}}{{/isContainer}}{{#isContainer}}{{#lambdaExample}}{{/lambdaExample}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{#lambdaExample}}{{/lambdaExample}}{{/isEnum}}{{^hasExample}}{{#isModel}}{{#isEnum}}// enum {{datatypeWithEnum}}_e Work in Progress {{/isEnum}}{{^isEnum}} // false, not to have infinite recursion - instantiate_{{{dataType}}}(0){{/isEnum}}{{/isModel}}{{^isModel}}0{{/isModel}}{{/example}}{{^-last}},{{/-last}} + instantiate_{{{dataType}}}(0){{/isEnum}}{{/isModel}}{{^isModel}}0{{/isModel}}{{/hasExample}}{{^-last}},{{/-last}} {{/vars}} ); } else { {{classname}} = {{classname}}_create( -{{#vars}} {{#isEnum}}{{^isContainer}}{{#example}}{{projectName}}_{{classVarName}}_{{enumName}}_{{{.}}}{{/example}}{{/isContainer}}{{#isContainer}}{{{example}}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{example}}}{{/isEnum}}{{^example}}{{#isModel}}{{#isEnum}}// enum {{datatypeWithEnum}}_e Work in Progress -{{/isEnum}}{{^isEnum}}NULL{{/isEnum}}{{/isModel}}{{^isModel}}0{{/isModel}}{{/example}}{{^-last}},{{/-last}} +{{#vars}} {{#isEnum}}{{^isContainer}}{{#hasExample}}{{projectName}}_{{classVarName}}_{{enumName}}_{{#lambdaExample}}{{/lambdaExample}}{{/hasExample}}{{/isContainer}}{{#isContainer}}{{#lambdaExample}}{{/lambdaExample}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{#lambdaExample}}{{/lambdaExample}}{{/isEnum}}{{^hasExample}}{{#isModel}}{{#isEnum}}// enum {{datatypeWithEnum}}_e Work in Progress +{{/isEnum}}{{^isEnum}}NULL{{/isEnum}}{{/isModel}}{{^isModel}}0{{/isModel}}{{/hasExample}}{{^-last}},{{/-last}} {{/vars}} ); } diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache index 27d2c3b9eea3..94762e3d96ca 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache @@ -201,7 +201,7 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache index 57f01e0b731a..c773a321fe17 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache @@ -206,10 +206,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache index 57f01e0b731a..c773a321fe17 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache @@ -206,10 +206,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache index d46bd1e38f7b..e58d8b0c4ad3 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache @@ -197,10 +197,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache index 9961208a32bf..794a9f0beee3 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache @@ -167,10 +167,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache index e4e1115bb81e..6d6ae3ed425e 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache @@ -227,10 +227,10 @@ public {{>sealed}}class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#v {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache index e9cb30b15220..01ed5911a789 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache @@ -227,10 +227,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache index f13da87167ab..a8fba6b35e02 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache @@ -227,10 +227,10 @@ public {{>sealed}}class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#v {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/pojo.mustache index e09c78fa90f2..bd25b3f1120c 100644 --- a/modules/openapi-generator/src/main/resources/Java/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/pojo.mustache @@ -230,10 +230,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache index e77d34e19ca5..3c6ded3ddcdb 100644 --- a/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache @@ -40,7 +40,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens } {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache index 2c28a90cebb1..7a1f51362a88 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache @@ -39,7 +39,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens } {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache index 693ededbb717..66e832a6c41c 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache @@ -40,7 +40,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}}{{#vendorExtensi {{#withXml}} @XmlElement(name="{{baseName}}"{{#required}}, required = {{required}}{{/required}}) {{/withXml}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}}{{#useBeanValidation}} + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}}{{#useBeanValidation}} @Valid{{/useBeanValidation}}{{/isFile}}{{/isString}}{{/isDateTime}}{{/isDate}}{{/isPrimitiveType}} {{#isDate}} @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache index 5d5e99435702..37bded611249 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache @@ -47,10 +47,10 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}}{{#vendorExtensi @XmlElement(name="{{baseName}}"{{#required}}, required = {{required}}{{/required}}) {{/withXml}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema(description = "{{{description}}}"{{#example}}, example = "{{{example}}}"{{/example}}{{#required}}, requiredMode = Schema.RequiredMode.REQUIRED{{/required}}) + @Schema(description = "{{{description}}}"{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#required}}, requiredMode = Schema.RequiredMode.REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}}{{#useBeanValidation}} @Valid diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache index fc9f6f1032c1..293c80d461d6 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache @@ -88,7 +88,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#jackson}} @JsonProperty(value = "{{baseName}}"{{#isReadOnly}}, access = JsonProperty.Access.READ_ONLY{{/isReadOnly}}{{#isWriteOnly}}, access = JsonProperty.Access.WRITE_ONLY{{/isWriteOnly}}) {{/jackson}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache index c4475aba4270..3d94eb8f2faa 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache @@ -88,7 +88,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#jackson}} @JsonProperty(value = "{{baseName}}"{{#isReadOnly}}, access = JsonProperty.Access.READ_ONLY{{/isReadOnly}}{{#isWriteOnly}}, access = JsonProperty.Access.WRITE_ONLY{{/isWriteOnly}}) {{/jackson}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache index 63e775410d70..b708549e2836 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache @@ -31,7 +31,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{/maximum}} **/ {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache index cb1ce4039951..5aa59ecb66b3 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache @@ -31,7 +31,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{/maximum}} **/ {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") {{#useBeanValidation}}{{>beanValidation}}{{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}} @Valid {{/isFile}}{{/isString}}{{/isDateTime}}{{/isDate}}{{/isPrimitiveType}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache index d39597fad10d..0b611a58e378 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache @@ -164,9 +164,9 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens @Deprecated {{/deprecated}} {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}}{{#useSwaggerAnnotations}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{/useSwaggerAnnotations}}{{#useSwaggerV3Annotations}} - @Schema({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useSwaggerV3Annotations}}{{#useMicroProfileOpenAPIAnnotations}} - @org.eclipse.microprofile.openapi.annotations.media.Schema({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useMicroProfileOpenAPIAnnotations}} + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{/useSwaggerAnnotations}}{{#useSwaggerV3Annotations}} + @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useSwaggerV3Annotations}}{{#useMicroProfileOpenAPIAnnotations}} + @org.eclipse.microprofile.openapi.annotations.media.Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useMicroProfileOpenAPIAnnotations}} {{#jackson}}@JsonProperty({{#required}}required = {{required}}, value = {{/required}}"{{baseName}}"){{/jackson}} {{#vendorExtensions.x-is-jackson-optional-nullable}} public JsonNullable<{{{datatypeWithEnum}}}> {{getter}}() { diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache index 6b09b602fe2a..658e7935e14d 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache @@ -21,7 +21,7 @@ {{/required}} {{/useBeanValidation}} {{#swagger2AnnotationLibrary}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#example}}, example = "{{{.}}}"{{/example}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{#jackson}}{{>jackson_annotations}}{{/jackson}} {{/lombok.Data}} diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache index 6bb9480a8df4..519f41e92c69 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache @@ -227,10 +227,10 @@ public {{>sealed}}class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}} {{#required}}@NotNull{{/required}} {{/useBeanValidation}} {{#swagger2AnnotationLibrary}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#example}}, example = "{{{.}}}"{{/example}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#deprecated}} @Deprecated diff --git a/modules/openapi-generator/src/main/resources/apex/pojo.mustache b/modules/openapi-generator/src/main/resources/apex/pojo.mustache index 3c1a6e80bd0d..50557e053136 100644 --- a/modules/openapi-generator/src/main/resources/apex/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/apex/pojo.mustache @@ -62,7 +62,7 @@ public class {{classname}}{{#parent}} extends {{{.}}}{{/parent}}{{#interfaces}}{ public static {{classname}} getExample() { {{classname}} {{classVarName}} = new {{classname}}(); {{#vars}} - {{#example}}{{classVarName}}.{{name}} = {{{example}}};{{/example}} + {{#hasExample}}{{classVarName}}.{{name}} = {{#lambdaExample}}{{/lambdaExample}};{{/hasExample}} {{/vars}} return {{classVarName}}; } diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache index b84df25a19c1..31627a094844 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache @@ -38,9 +38,9 @@ namespace {{packageName}}.Models {{#description}} /// {{.}} {{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} {{#required}} [Required] {{/required}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache index a8a2ac62ea8c..02ce557efff8 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache @@ -37,8 +37,8 @@ namespace {{modelPackage}} /// /// {{description}}{{^description}}Gets or Sets {{{name}}}{{/description}} /// {{#description}} - /// {{.}}{{/description}}{{#example}} - /* {{.}} */{{/example}}{{#required}} + /// {{.}}{{/description}}{{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */{{/hasExample}}{{#required}} [Required]{{/required}}{{#pattern}} [RegularExpression("{{{.}}}")]{{/pattern}}{{#minLength}}{{#maxLength}} [StringLength({{maxLength}}, MinimumLength={{minLength}})]{{/maxLength}}{{/minLength}}{{#minLength}}{{^maxLength}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache index 40b3c057c1ff..42b5438fb18d 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/model.mustache @@ -68,8 +68,8 @@ namespace {{modelPackage}} /// /// {{description}}{{^description}}Gets or Sets {{{name}}}{{/description}} /// {{#description}} - /// {{.}}{{/description}}{{#example}} - /* {{.}} */{{/example}}{{#required}} + /// {{.}}{{/description}}{{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */{{/hasExample}}{{#required}} [Required]{{/required}}{{#pattern}} [RegularExpression("{{{.}}}")]{{/pattern}}{{#minLength}}{{#maxLength}} [StringLength({{maxLength}}, MinimumLength={{minLength}})]{{/maxLength}}{{/minLength}}{{#minLength}}{{^maxLength}} diff --git a/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache b/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache index b0a6b77ab93c..4abeb938e230 100644 --- a/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache +++ b/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache @@ -82,7 +82,7 @@ h2. Models {{/enumVars}} {{/allowableValues}} {{/isEnum}} {{^isEnum}}||Field Name||Required||Type||Description||Enum||Example|| - {{#vars}} |{{baseName}} |{{#required}}(/){{/required}}{{^required}}(x){{/required}} |{noformat:nopanel=true}{{{dataType}}}{noformat} | {{description}} | {{#isEnum}} {{_enum}} {{/isEnum}} | {{example}} + {{#vars}} |{{baseName}} |{{#required}}(/){{/required}}{{^required}}(x){{/required}} |{noformat:nopanel=true}{{{dataType}}}{noformat} | {{description}} | {{#isEnum}} {{_enum}} {{/isEnum}} | {{#lambdaExample}}{{/lambdaExample}} {{/vars}} {{/isEnum}} {{/model}} {{/models}} diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache index f7a2abe8ebed..3d4f1ef291f0 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/modelGeneric.mustache @@ -35,9 +35,9 @@ {{#description}} /// {{description}} {{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} {{^conditionalSerialization}} [DataMember(Name = "{{baseName}}"{{#required}}, IsRequired = true{{/required}}, EmitDefaultValue = {{#vendorExtensions.x-emit-default-value}}true{{/vendorExtensions.x-emit-default-value}}{{^vendorExtensions.x-emit-default-value}}{{#required}}true{{/required}}{{^required}}{{#isBoolean}}true{{/isBoolean}}{{^isBoolean}}{{#isNullable}}true{{/isNullable}}{{^isNullable}}false{{/isNullable}}{{/isBoolean}}{{/required}}{{/vendorExtensions.x-emit-default-value}})] public {{#complexType}}{{{complexType}}}{{/complexType}}{{^complexType}}{{{datatypeWithEnum}}}{{/complexType}}{{^isContainer}}{{^required}}?{{/required}}{{/isContainer}} {{name}} { get; set; } @@ -186,9 +186,9 @@ /// {{^description}}Gets or Sets {{{name}}}{{/description}}{{#description}}{{description}}{{/description}} /// {{#description}} /// {{description}}{{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} {{^conditionalSerialization}} [DataMember(Name = "{{baseName}}"{{#required}}, IsRequired = true{{/required}}, EmitDefaultValue = {{#vendorExtensions.x-emit-default-value}}true{{/vendorExtensions.x-emit-default-value}}{{^vendorExtensions.x-emit-default-value}}{{#required}}true{{/required}}{{^required}}{{#isBoolean}}true{{/isBoolean}}{{^isBoolean}}{{#isNullable}}true{{/isNullable}}{{^isNullable}}false{{/isNullable}}{{/isBoolean}}{{/required}}{{/vendorExtensions.x-emit-default-value}})] {{#isDate}} diff --git a/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache index da018d3c7bf2..0351bee289d4 100644 --- a/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache @@ -124,9 +124,9 @@ {{#description}} /// {{.}} {{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} [JsonPropertyName("{{baseName}}")] {{#deprecated}} [Obsolete] @@ -151,9 +151,9 @@ /// {{description}}{{^description}}Gets or Sets {{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}{{/description}} /// {{#description}} /// {{.}}{{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} {{#deprecated}} [Obsolete] {{/deprecated}} @@ -167,9 +167,9 @@ /// {{description}}{{^description}}Gets or Sets {{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}{{/description}} /// {{#description}} /// {{.}}{{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} {{#deprecated}} [Obsolete] {{/deprecated}} @@ -208,9 +208,9 @@ /// {{description}}{{^description}}Gets or Sets {{{name}}}{{/description}} /// {{#description}} /// {{.}}{{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} [JsonPropertyName("{{baseName}}")] {{#deprecated}} [Obsolete] @@ -233,9 +233,9 @@ /// {{description}}{{^description}}Gets or Sets {{{name}}}{{/description}} /// {{#description}} /// {{.}}{{/description}} - {{#example}} - /* {{.}} */ - {{/example}} + {{#hasExample}} + /* {{#lambdaExample}}{{/lambdaExample}} */ + {{/hasExample}} [JsonPropertyName("{{baseName}}")] {{#deprecated}} [Obsolete] diff --git a/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache index 5a95adaa11fd..794f1348933e 100644 --- a/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/modelGeneric.mustache @@ -43,11 +43,11 @@ {{#description}} /// {{.}} {{/description}} - {{#example}} + {{#hasExample}} /* - {{.}} + {{#lambdaExample}}{{/lambdaExample}} */ - {{/example}} + {{/hasExample}} {{^conditionalSerialization}} [DataMember(Name = "{{baseName}}"{{#required}}, IsRequired = true{{/required}}, EmitDefaultValue = {{#vendorExtensions.x-emit-default-value}}true{{/vendorExtensions.x-emit-default-value}}{{^vendorExtensions.x-emit-default-value}}{{#required}}true{{/required}}{{^required}}{{#isBoolean}}true{{/isBoolean}}{{^isBoolean}}{{#isNullable}}true{{/isNullable}}{{^isNullable}}false{{/isNullable}}{{/isBoolean}}{{/required}}{{/vendorExtensions.x-emit-default-value}})] {{#deprecated}} @@ -219,11 +219,11 @@ /// {{description}}{{^description}}Gets or Sets {{{name}}}{{/description}} /// {{#description}} /// {{.}}{{/description}} - {{#example}} + {{#hasExample}} /* - {{.}} + {{#lambdaExample}}{{/lambdaExample}} */ - {{/example}} + {{/hasExample}} {{^conditionalSerialization}} [DataMember(Name = "{{baseName}}"{{#required}}, IsRequired = true{{/required}}, EmitDefaultValue = {{#vendorExtensions.x-emit-default-value}}true{{/vendorExtensions.x-emit-default-value}}{{^vendorExtensions.x-emit-default-value}}{{#required}}true{{/required}}{{^required}}{{#isBoolean}}true{{/isBoolean}}{{^isBoolean}}{{#isNullable}}true{{/isNullable}}{{^isNullable}}false{{/isNullable}}{{/isBoolean}}{{/required}}{{/vendorExtensions.x-emit-default-value}})] {{#isDate}} diff --git a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache index 42c18a2deeb2..b8ff3e9effea 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs2/sample_curl.mustache @@ -2,5 +2,5 @@ curl -X {{vendorExtensions.x-codegen-http-method-upper-case}}{{#authMethods}} \ {{#isApiKey}}{{#isKeyInHeader}}-H "{{keyParamName}}: [[apiKey]]"{{/isKeyInHeader}}{{/isApiKey}}{{#isBasicBasic}} -H "Authorization: Basic [[basicHash]]"{{/isBasicBasic}}{{#isBasicBearer}} -H "Authorization: Bearer [[accessToken]]"{{/isBasicBearer}}{{/authMethods}}{{#hasProduces}} \ -H "Accept: {{#produces}}{{{mediaType}}}{{^-last}},{{/-last}}{{/produces}}"{{/hasProduces}}{{#hasConsumes}} \ -H "Content-Type: {{#consumes}}{{{mediaType}}}{{^-last}},{{/-last}}{{/consumes}}"{{/hasConsumes}} \ - "{{basePath}}{{path}}{{#hasQueryParams}}?{{#queryParams}}{{^-first}}&{{/-first}}{{baseName}}={{{example}}}{{/queryParams}}{{/hasQueryParams}}"{{#requestBodyExamples}} \ + "{{basePath}}{{path}}{{#hasQueryParams}}?{{#queryParams}}{{^-first}}&{{/-first}}{{baseName}}={{#lambdaExample}}{{/lambdaExample}}{{/queryParams}}{{/hasQueryParams}}"{{#requestBodyExamples}} \ -d '{{#lambdaEscapeHtml}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeHtml}}'{{/requestBodyExamples}} diff --git a/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache b/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache index 29b24f808e96..d274421f121c 100644 --- a/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache @@ -232,10 +232,10 @@ public class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}}{{^parent}} {{#required}}@NotNull{{/required}} {{/useBeanValidation}} {{#swagger2AnnotationLibrary}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#example}}, example = "{{{.}}}"{{/example}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#jackson}} @JsonProperty("{{baseName}}") diff --git a/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache b/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache index 27a07f4cc768..375584405645 100644 --- a/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache @@ -174,10 +174,10 @@ Declare the class with extends and implements */ {{>common/model/beanValidation}}{{! }}{{#generateSwagger1Annotations}} - @ApiModelProperty({{#example}}example = "{{{example}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/generateSwagger1Annotations}} {{#generateSwagger2Annotations}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#example}}, example = "{{{.}}}"{{/example}}{{#description}}, description = "{{{.}}}"{{/description}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/generateSwagger2Annotations}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache b/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache index 671296b11293..0774cecbdfc6 100644 --- a/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache @@ -81,7 +81,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} {{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; } diff --git a/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache b/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache index 61092b6b02db..8d2eb233f090 100644 --- a/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache @@ -87,7 +87,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} {{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; } diff --git a/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache b/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache index 7a31a1121306..3b89395f2cf5 100644 --- a/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache @@ -20,7 +20,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens } {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{{required}}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{{required}}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassOptVar.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassOptVar.mustache index 3b0c94ced845..f49ba5b49617 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassOptVar.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassOptVar.mustache @@ -1,6 +1,6 @@ {{#useBeanValidation}}{{>beanValidation}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{{.}}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/example}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{{.}}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/example}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#deprecated}} + @Schema({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} + @ApiModelProperty({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#deprecated}} @Deprecated(message = ""){{/deprecated}}{{#vendorExtensions.x-field-extra-annotation}} {{{.}}}{{/vendorExtensions.x-field-extra-annotation}}{{^isNullable}} @field:JsonInclude(JsonInclude.Include.NON_NULL){{/isNullable}}{{#vendorExtensions.x-has-json-setter-nulls-skip}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassReqVar.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassReqVar.mustache index 2f07705c6dd0..ec69f6eb5711 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassReqVar.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/dataClassReqVar.mustache @@ -1,6 +1,6 @@ {{#useBeanValidation}}{{>beanValidation}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swagger2AnnotationLibrary}} - @Schema({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{{.}}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/example}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{{.}}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/example}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} + @Schema({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} + @ApiModelProperty({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} {{{.}}}{{/vendorExtensions.x-field-extra-annotation}} @param:JsonProperty("{{{baseName}}}") @get:JsonProperty("{{{baseName}}}", required = true){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{{nameInPascalCase}}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{#isNullable}}?{{/isNullable}}{{#defaultValue}} = {{^isNumber}}{{{defaultValue}}}{{/isNumber}}{{#isNumber}}{{{dataType}}}("{{{defaultValue}}}"){{/isNumber}}{{/defaultValue}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache index 3fa63ad64876..44a29830b6c0 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache @@ -1,5 +1,5 @@ {{#swagger2AnnotationLibrary}} - @get:Schema({{#example}}example = "{{{.}}}", {{/example}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} - @get:ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} + @get:Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} + @get:ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} {{{.}}}{{/vendorExtensions.x-field-extra-annotation}} {{#isInherited}}override {{/isInherited}}{{>modelMutable}} {{{name}}}: {{#isEnum}}{{classname}}.{{nameInPascalCase}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}? {{^discriminator}}= {{{defaultValue}}}{{^defaultValue}}null{{/defaultValue}}{{/discriminator}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache index 8f0fb71ba319..a020587fd28b 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache @@ -1,5 +1,5 @@ {{#swagger2AnnotationLibrary}} - @get:Schema({{#example}}example = "{{{.}}}", {{/example}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} - @get:ApiModelProperty({{#example}}example = "{{{.}}}", {{/example}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} + @get:Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} + @get:ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} {{{.}}}{{/vendorExtensions.x-field-extra-annotation}} {{#isInherited}}override {{/isInherited}}{{>modelMutable}} {{{name}}}: {{#isEnum}}{{classname}}.{{nameInPascalCase}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}} diff --git a/modules/openapi-generator/src/main/resources/postman-collection/request.mustache b/modules/openapi-generator/src/main/resources/postman-collection/request.mustache index e5757c065a70..897c5d2843e1 100644 --- a/modules/openapi-generator/src/main/resources/postman-collection/request.mustache +++ b/modules/openapi-generator/src/main/resources/postman-collection/request.mustache @@ -42,7 +42,7 @@ {{#queryParams}} { "key": "{{paramName}}", - "value": "{{example}}", + "value": "{{#lambdaExample}}{{/lambdaExample}}", "description": "{{{description}}}", "disabled": {{#required}}false{{/required}}{{^required}}true{{/required}} }{{^-last}},{{/-last}} diff --git a/modules/openapi-generator/src/main/resources/powershell/model_doc.mustache b/modules/openapi-generator/src/main/resources/powershell/model_doc.mustache index 3cb7cd72c7c4..e81a140c8f66 100644 --- a/modules/openapi-generator/src/main/resources/powershell/model_doc.mustache +++ b/modules/openapi-generator/src/main/resources/powershell/model_doc.mustache @@ -12,7 +12,7 @@ Name | Type | Description | Notes - Prepare the resource ```powershell -${{{classname}}} = Initialize-{{{packageName}}}{{{classname}}} {{#vars}} -{{name}} {{example}}{{^-last}} ` +${{{classname}}} = Initialize-{{{packageName}}}{{{classname}}} {{#vars}} -{{name}} {{#lambdaExample}}{{/lambdaExample}}{{^-last}} ` {{/-last}} {{/vars}} diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/model_test.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/model_test.mustache index 8dec3b4ced42..428cfde818b0 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/model_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/model_test.mustache @@ -31,14 +31,14 @@ class Test{{classname}}(unittest.TestCase): if include_optional: return {{classname}}( {{#vars}} - {{name}} = {{{example}}}{{^example}}None{{/example}}{{^-last}},{{/-last}} + {{name}} = {{#lambdaExample}}{{/lambdaExample}}{{^hasExample}}None{{/hasExample}}{{^-last}},{{/-last}} {{/vars}} ) else: return {{classname}}( {{#vars}} {{#required}} - {{name}} = {{{example}}}{{^example}}None{{/example}}, + {{name}} = {{#lambdaExample}}{{/lambdaExample}}{{^hasExample}}None{{/hasExample}}, {{/required}} {{/vars}} ) diff --git a/modules/openapi-generator/src/main/resources/python-pydantic-v1/model_test.mustache b/modules/openapi-generator/src/main/resources/python-pydantic-v1/model_test.mustache index 58035d9d01c4..1d2f52fb372e 100644 --- a/modules/openapi-generator/src/main/resources/python-pydantic-v1/model_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-pydantic-v1/model_test.mustache @@ -31,14 +31,14 @@ class Test{{classname}}(unittest.TestCase): if include_optional: return {{classname}}( {{#vars}} - {{name}} = {{{example}}}{{^example}}None{{/example}}{{^-last}},{{/-last}} + {{name}} = {{#lambdaExample}}{{/lambdaExample}}{{^hasExample}}None{{/hasExample}}{{^-last}},{{/-last}} {{/vars}} ) else: return {{classname}}( {{#vars}} {{#required}} - {{name}} = {{{example}}}{{^example}}None{{/example}}, + {{name}} = {{#lambdaExample}}{{/lambdaExample}}{{^hasExample}}None{{/hasExample}}, {{/required}} {{/vars}} ) diff --git a/modules/openapi-generator/src/main/resources/python/model_test.mustache b/modules/openapi-generator/src/main/resources/python/model_test.mustache index a74c9aa02641..99aa21bef804 100644 --- a/modules/openapi-generator/src/main/resources/python/model_test.mustache +++ b/modules/openapi-generator/src/main/resources/python/model_test.mustache @@ -30,14 +30,14 @@ class Test{{classname}}(unittest.TestCase): if include_optional: return {{classname}}( {{#vars}} - {{name}} = {{{example}}}{{^example}}None{{/example}}{{^-last}},{{/-last}} + {{name}} = {{#lambdaExample}}{{/lambdaExample}}{{^hasExample}}None{{/hasExample}}{{^-last}},{{/-last}} {{/vars}} ) else: return {{classname}}( {{#vars}} {{#required}} - {{name}} = {{{example}}}{{^example}}None{{/example}}, + {{name}} = {{#lambdaExample}}{{/lambdaExample}}{{^hasExample}}None{{/hasExample}}, {{/required}} {{/vars}} ) diff --git a/modules/openapi-generator/src/main/resources/ruby-client/partial_model_generic_doc.mustache b/modules/openapi-generator/src/main/resources/ruby-client/partial_model_generic_doc.mustache index 95bdb7107c22..1bbbdffa0d85 100644 --- a/modules/openapi-generator/src/main/resources/ruby-client/partial_model_generic_doc.mustache +++ b/modules/openapi-generator/src/main/resources/ruby-client/partial_model_generic_doc.mustache @@ -20,7 +20,7 @@ instance = {{moduleName}}::{{classname}}.new() {{#-first}} instance = {{moduleName}}::{{classname}}.new( {{/-first}} - {{name}}: {{example}}{{^-last}},{{/-last}} + {{name}}: {{#lambdaExample}}{{/lambdaExample}}{{^-last}},{{/-last}} {{#-last}} ) {{/-last}} diff --git a/modules/openapi-generator/src/main/resources/scala-akka-http-server/model.mustache b/modules/openapi-generator/src/main/resources/scala-akka-http-server/model.mustache index 68cafc5f2c0c..7de96a0c9d75 100644 --- a/modules/openapi-generator/src/main/resources/scala-akka-http-server/model.mustache +++ b/modules/openapi-generator/src/main/resources/scala-akka-http-server/model.mustache @@ -14,7 +14,7 @@ import {{import}} * {{/description}} {{#vars}} - * @param {{{name}}} {{{description}}}{{#example}} for example: ''{{{.}}}''{{/example}} + * @param {{{name}}} {{{description}}}{{#hasExample}} for example: ''{{#lambdaExample}}{{/lambdaExample}}''{{/hasExample}} {{/vars}} */ final case class {{classname}} ( diff --git a/modules/openapi-generator/src/main/resources/scala-cask/modelTest.mustache b/modules/openapi-generator/src/main/resources/scala-cask/modelTest.mustache index bed1a908d2ea..1cb3bf4ea4f4 100644 --- a/modules/openapi-generator/src/main/resources/scala-cask/modelTest.mustache +++ b/modules/openapi-generator/src/main/resources/scala-cask/modelTest.mustache @@ -27,8 +27,8 @@ class {{classname}}Test extends AnyWordSpec with Matchers { val Failure(err) = Try({{classname}}Data.fromJsonString("invalid jason")) err.getMessage should startWith ("Error parsing json 'invalid jason'") } - """parse {{example}}""" ignore { - val d8a = {{classname}}Data.fromJsonString("""{{example}}""") + """parse {{#lambdaExample}}{{/lambdaExample}}""" ignore { + val d8a = {{classname}}Data.fromJsonString("""{{#lambdaExample}}{{/lambdaExample}}""") val Failure(err : ValidationErrors) = {{classname}}Data.validated(d8a, true) sys.error("TODO") diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/model_doc.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/model_doc.mustache index b2f77d5244bd..719af7c3d2c6 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/model_doc.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/model_doc.mustache @@ -20,7 +20,7 @@ import type { {{classname}} } from '{{npmName}}' // TODO: Update the object below with actual values const example = { {{#vars}} - "{{name}}": {{{example}}}, + "{{name}}": {{#lambdaExample}}{{/lambdaExample}}, {{/vars}} } satisfies {{classname}} diff --git a/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache b/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache index e2e7e0617c09..98b40d56fb5c 100644 --- a/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache +++ b/modules/openapi-generator/src/main/resources/xojo-client/api_mock.mustache @@ -30,7 +30,7 @@ Public Class Mock // - responseHeaders: [{{#responseHeaders}}{{{baseName}}}({{{dataType}}}){{^-last}}, {{/-last}}{{/responseHeaders}}]{{/hasResponseHeaders}}{{#allParams}}{{#isArray}} Dim {{operationId}}{{paramName}}Array() As {{#items}}{{#isModel}}{{> prefixModel}}{{/isModel}}{{{dataType}}}{{/items}}{{/isArray}}{{#isModel}} Dim {{operationId}}{{paramName}}Model As New {{> prefixModel}}{{{dataType}}} - {{#requiredVars}}{{^isArray}}{{^isEnum}}{{^isEnumOrRef}}{{operationId}}{{paramName}}Model.{{{name}}} = {{#isString}}"{{{example}}}"{{/isString}}{{#isDate}}FromRFC3339("{{{example}}}"){{/isDate}}{{#isDateTime}}FromRFC3339("{{{example}}}"){{/isDateTime}}{{^isString}}{{^isDate}}{{^isDateTime}}{{{example}}}{{/isDateTime}}{{/isDate}}{{/isString}} + {{#requiredVars}}{{^isArray}}{{^isEnum}}{{^isEnumOrRef}}{{operationId}}{{paramName}}Model.{{{name}}} = {{#isString}}"{{#lambdaExample}}{{/lambdaExample}}"{{/isString}}{{#isDate}}FromRFC3339("{{#lambdaExample}}{{/lambdaExample}}"){{/isDate}}{{#isDateTime}}FromRFC3339("{{#lambdaExample}}{{/lambdaExample}}"){{/isDateTime}}{{^isString}}{{^isDate}}{{^isDateTime}}{{#lambdaExample}}{{/lambdaExample}}{{/isDateTime}}{{/isDate}}{{/isString}} {{/isEnumOrRef}}{{/isEnum}}{{/isArray}}{{#isEnum}}// TODO: generating in-model enums is not supported. Issue something like: {{> prefixModel}}MODEL_NAME.{{enumName}}ToString({{> prefixModel}}MODEL_NAME.{{enumName}}.SOMETHING){{/isEnum}}{{/requiredVars}}{{/isModel}}{{/allParams}}{{#returnProperty}}{{^isBinary}} Dim {{operationId}}Data{{#isArray}}(){{/isArray}} As {{#isModel}}{{> prefixModel}}{{/isModel}}{{#isArray}}{{#items}}{{#isModel}}{{> prefixModel}}{{/isModel}}{{{dataType}}}{{/items}}{{/isArray}}{{^isArray}}{{{dataType}}}{{/isArray}}{{/isBinary}}{{/returnProperty}} If api.{{operationId}}(error{{#returnProperty}}, {{^isBinary}}{{operationId}}Data{{/isBinary}}{{#isBinary}}tmpDownloadFile{{/isBinary}}{{/returnProperty}}{{#hasParams}}, {{/hasParams}}{{#allParams}}{{#isModel}}{{operationId}}{{paramName}}Model{{/isModel}}{{^isModel}}{{#isEnum}}{{projectName}}.{{apiPackage}}.{{classname}}.{{enumName}}_{{operationId}}.{{#allowableValues}}{{#enumVars}}{{#-first}}{{{name}}}{{/-first}}{{/enumVars}}{{/allowableValues}}{{/isEnum}}{{^isEnum}}{{#isArray}}{{operationId}}{{paramName}}Array{{/isArray}}{{^isArray}}{{#isString}}"{{/isString}}{{#lambdaExample}}{{/lambdaExample}}{{#isString}}"{{/isString}}{{/isArray}}{{#schema}}{{#isEnumRef}}{{projectName}}.{{apiPackage}}.{{classname}}.{{dataType}}.{{#allowableValues}}{{#enumVars}}{{#-first}}{{{name}}}{{/-first}}{{/enumVars}}{{/allowableValues}}{{/isEnumRef}}{{/schema}}{{/isEnum}}{{/isModel}}{{^-last}}, {{/-last}}{{/allParams}}) Then From 85d73f9af2853ecf78b78d6004a68325badc2da7 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 19:49:51 +0200 Subject: [PATCH 08/42] Regenerate index.html. --- samples/documentation/html/index.html | 430 +++++++++++++------------- 1 file changed, 215 insertions(+), 215 deletions(-) diff --git a/samples/documentation/html/index.html b/samples/documentation/html/index.html index d2cf9d683377..525473374206 100644 --- a/samples/documentation/html/index.html +++ b/samples/documentation/html/index.html @@ -266,42 +266,42 @@

Return type

Example data

Content-Type: application/json
{
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 }

Example data

Content-Type: application/xml
-

-  123456789
-  
-    123456789
-    aeiou
-  
-  doggie
-  
-    aeiou
-  
-  
-    
-      123456789
-      aeiou
-    
-  
-  aeiou
-
+
<Pet>
+  <id>123456789</id>
+  <Category>
+    <id>123456789</id>
+    <name>aeiou</name>
+  </Category>
+  <name>doggie</name>
+  <photoUrls>
+    <photoUrls>aeiou</photoUrls>
+  </photoUrls>
+  <tags>
+    <Tag>
+      <id>123456789</id>
+      <name>aeiou</name>
+    </Tag>
+  </tags>
+  <status>aeiou</status>
+</Pet>

Produces

This API call produces the following media types according to the Accept request header; @@ -387,58 +387,58 @@

Return type

Example data

Content-Type: application/json
[ {
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 }, {
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 } ]

Example data

Content-Type: application/xml
-

-  123456789
-  
-    123456789
-    aeiou
-  
-  doggie
-  
-    aeiou
-  
-  
-    
-      123456789
-      aeiou
-    
-  
-  aeiou
-
+
<Pet>
+  <id>123456789</id>
+  <Category>
+    <id>123456789</id>
+    <name>aeiou</name>
+  </Category>
+  <name>doggie</name>
+  <photoUrls>
+    <photoUrls>aeiou</photoUrls>
+  </photoUrls>
+  <tags>
+    <Tag>
+      <id>123456789</id>
+      <name>aeiou</name>
+    </Tag>
+  </tags>
+  <status>aeiou</status>
+</Pet>

Produces

This API call produces the following media types according to the Accept request header; @@ -487,58 +487,58 @@

Return type

Example data

Content-Type: application/json
[ {
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 }, {
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 } ]

Example data

Content-Type: application/xml
-

-  123456789
-  
-    123456789
-    aeiou
-  
-  doggie
-  
-    aeiou
-  
-  
-    
-      123456789
-      aeiou
-    
-  
-  aeiou
-
+
<Pet>
+  <id>123456789</id>
+  <Category>
+    <id>123456789</id>
+    <name>aeiou</name>
+  </Category>
+  <name>doggie</name>
+  <photoUrls>
+    <photoUrls>aeiou</photoUrls>
+  </photoUrls>
+  <tags>
+    <Tag>
+      <id>123456789</id>
+      <name>aeiou</name>
+    </Tag>
+  </tags>
+  <status>aeiou</status>
+</Pet>

Produces

This API call produces the following media types according to the Accept request header; @@ -587,42 +587,42 @@

Return type

Example data

Content-Type: application/json
{
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 }

Example data

Content-Type: application/xml
-

-  123456789
-  
-    123456789
-    aeiou
-  
-  doggie
-  
-    aeiou
-  
-  
-    
-      123456789
-      aeiou
-    
-  
-  aeiou
-
+
<Pet>
+  <id>123456789</id>
+  <Category>
+    <id>123456789</id>
+    <name>aeiou</name>
+  </Category>
+  <name>doggie</name>
+  <photoUrls>
+    <photoUrls>aeiou</photoUrls>
+  </photoUrls>
+  <tags>
+    <Tag>
+      <id>123456789</id>
+      <name>aeiou</name>
+    </Tag>
+  </tags>
+  <status>aeiou</status>
+</Pet>

Produces

This API call produces the following media types according to the Accept request header; @@ -681,34 +681,34 @@

Return type

Example data

Content-Type: application/json
{
-  "id" : 0,
-  "category" : {
-    "id" : 6,
-    "name" : "name"
+  "id" : 0,
+  "category" : {
+    "id" : 6,
+    "name" : "name"
   },
-  "name" : "doggie",
-  "photoUrls" : [ "photoUrls", "photoUrls" ],
-  "tags" : [ {
-    "id" : 1,
-    "name" : "name"
+  "name" : "doggie",
+  "photoUrls" : [ "photoUrls", "photoUrls" ],
+  "tags" : [ {
+    "id" : 1,
+    "name" : "name"
   }, {
-    "id" : 1,
-    "name" : "name"
+    "id" : 1,
+    "name" : "name"
   } ],
-  "status" : "available"
+  "status" : "available"
 }

Example data

Content-Type: application/xml
-

-  123456789
-  doggie
-  
-    aeiou
-  
-  
-  
-  aeiou
-
+
<Pet>
+  <id>123456789</id>
+  <name>doggie</name>
+  <photoUrls>
+    <photoUrls>aeiou</photoUrls>
+  </photoUrls>
+  <tags>
+  </tags>
+  <status>aeiou</status>
+</Pet>

Produces

This API call produces the following media types according to the Accept request header; @@ -819,9 +819,9 @@

Return type

Example data

Content-Type: application/json
{
-  "code" : 0,
-  "type" : "type",
-  "message" : "message"
+  "code" : 0,
+  "type" : "type",
+  "message" : "message"
 }

Produces

@@ -936,23 +936,23 @@

Return type

Example data

Content-Type: application/json
{
-  "id" : 0,
-  "petId" : 6,
-  "quantity" : 1,
-  "shipDate" : "2000-01-23T04:56:07.000+00:00",
-  "status" : "placed",
-  "complete" : false
+  "id" : 0,
+  "petId" : 6,
+  "quantity" : 1,
+  "shipDate" : "2000-01-23T04:56:07.000+00:00",
+  "status" : "placed",
+  "complete" : false
 }

Example data

Content-Type: application/xml
-

-  123456789
-  123456789
-  123
-  2000-01-23T04:56:07.000Z
-  aeiou
-  true
-
+
<Order>
+  <id>123456789</id>
+  <petId>123456789</petId>
+  <quantity>123</quantity>
+  <shipDate>2000-01-23T04:56:07.000Z</shipDate>
+  <status>aeiou</status>
+  <complete>true</complete>
+</Order>

Produces

This API call produces the following media types according to the Accept request header; @@ -1010,23 +1010,23 @@

Return type

Example data

Content-Type: application/json
{
-  "id" : 0,
-  "petId" : 6,
-  "quantity" : 1,
-  "shipDate" : "2000-01-23T04:56:07.000+00:00",
-  "status" : "placed",
-  "complete" : false
+  "id" : 0,
+  "petId" : 6,
+  "quantity" : 1,
+  "shipDate" : "2000-01-23T04:56:07.000+00:00",
+  "status" : "placed",
+  "complete" : false
 }

Example data

Content-Type: application/xml
-

-  123456789
-  123456789
-  123
-  2000-01-23T04:56:07.000Z
-  aeiou
-  true
-
+
<Order>
+  <id>123456789</id>
+  <petId>123456789</petId>
+  <quantity>123</quantity>
+  <shipDate>2000-01-23T04:56:07.000Z</shipDate>
+  <status>aeiou</status>
+  <complete>true</complete>
+</Order>

Produces

This API call produces the following media types according to the Accept request header; @@ -1217,27 +1217,27 @@

Return type

Example data

Content-Type: application/json
{
-  "id" : 0,
-  "username" : "username",
-  "firstName" : "firstName",
-  "lastName" : "lastName",
-  "email" : "email",
-  "password" : "password",
-  "phone" : "phone",
-  "userStatus" : 6
+  "id" : 0,
+  "username" : "username",
+  "firstName" : "firstName",
+  "lastName" : "lastName",
+  "email" : "email",
+  "password" : "password",
+  "phone" : "phone",
+  "userStatus" : 6
 }

Example data

Content-Type: application/xml
-

-  123456789
-  aeiou
-  aeiou
-  aeiou
-  aeiou
-  aeiou
-  aeiou
-  123
-
+
<User>
+  <id>123456789</id>
+  <username>aeiou</username>
+  <firstName>aeiou</firstName>
+  <lastName>aeiou</lastName>
+  <email>aeiou</email>
+  <password>aeiou</password>
+  <phone>aeiou</phone>
+  <userStatus>123</userStatus>
+</User>

Produces

This API call produces the following media types according to the Accept request header; From e53384df866522378d8662bcaca67a4ab7c305ea Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 20:20:21 +0200 Subject: [PATCH 09/42] Refine JetBrains HTTP request examples --- .../JetbrainsHttpClientClientCodegen.java | 73 +++++++-- .../jetbrains-http-client/api.mustache | 5 +- .../JetbrainsHttpClientClientCodegenTest.java | 103 +++++++++++-- .../http/client/Apis/ActionsApi.http | 96 ------------ .../http/client/Apis/ActivityApi.http | 28 ---- .../jetbrains/http/client/Apis/AppsApi.http | 31 ---- .../http/client/Apis/BillingApi.http | 6 - .../jetbrains/http/client/Apis/ChecksApi.http | 9 -- .../http/client/Apis/ClassroomApi.http | 6 - .../http/client/Apis/CodeScanningApi.http | 12 -- .../http/client/Apis/CodesOfConductApi.http | 2 - .../http/client/Apis/CodespacesApi.http | 36 ----- .../http/client/Apis/CopilotApi.http | 3 - .../http/client/Apis/DependabotApi.http | 16 -- .../http/client/Apis/DependencyGraphApi.http | 2 - .../jetbrains/http/client/Apis/EmojisApi.http | 1 - .../jetbrains/http/client/Apis/GistsApi.http | 17 --- .../jetbrains/http/client/Apis/GitApi.http | 8 - .../http/client/Apis/GitignoreApi.http | 2 - .../http/client/Apis/InteractionsApi.http | 7 - .../jetbrains/http/client/Apis/IssuesApi.http | 28 ---- .../http/client/Apis/LicensesApi.http | 3 - .../http/client/Apis/MarkdownApi.http | 1 - .../jetbrains/http/client/Apis/MetaApi.http | 5 - .../http/client/Apis/MigrationsApi.http | 17 --- .../jetbrains/http/client/Apis/OidcApi.http | 2 - .../jetbrains/http/client/Apis/OrgsApi.http | 60 -------- .../http/client/Apis/PackagesApi.http | 27 ---- .../http/client/Apis/ProjectsApi.http | 15 -- .../jetbrains/http/client/Apis/PullsApi.http | 15 -- .../http/client/Apis/RateLimitApi.http | 1 - .../http/client/Apis/ReactionsApi.http | 16 -- .../jetbrains/http/client/Apis/ReposApi.http | 142 ------------------ .../jetbrains/http/client/Apis/SearchApi.http | 7 - .../http/client/Apis/SecretScanningApi.http | 6 - .../client/Apis/SecurityAdvisoriesApi.http | 8 - .../jetbrains/http/client/Apis/TeamsApi.http | 44 ------ .../jetbrains/http/client/Apis/UsersApi.http | 33 ---- .../client/Apis/ClassicCheckoutSDKApi.http | 1 - .../adyen/http/client/Apis/DonationsApi.http | 1 - .../http/client/Apis/ModificationsApi.http | 2 - .../adyen/http/client/Apis/OrdersApi.http | 3 - .../http/client/Apis/PaymentLinksApi.http | 4 - .../adyen/http/client/Apis/PaymentsApi.http | 3 - .../adyen/http/client/Apis/RecurringApi.http | 2 - .../adyen/http/client/Apis/UtilityApi.http | 1 - .../http/client/Apis/PaymentsApi.http | 3 - .../http/client/Apis/BenchmarksApi.http | 1 - .../http/client/Apis/ConstantsApi.http | 2 - .../http/client/Apis/DistributionsApi.http | 1 - .../http/client/Apis/ExplorerApi.http | 1 - .../http/client/Apis/FindMatchesApi.http | 1 - .../jetbrains/http/client/Apis/HealthApi.http | 1 - .../http/client/Apis/HeroStatsApi.http | 1 - .../jetbrains/http/client/Apis/HeroesApi.http | 6 - .../http/client/Apis/LeaguesApi.http | 4 - .../jetbrains/http/client/Apis/LiveApi.http | 1 - .../http/client/Apis/MatchesApi.http | 1 - .../http/client/Apis/MetadataApi.http | 1 - .../http/client/Apis/ParsedMatchesApi.http | 1 - .../http/client/Apis/PlayersApi.http | 15 -- .../http/client/Apis/PlayersByRankApi.http | 1 - .../http/client/Apis/ProMatchesApi.http | 1 - .../http/client/Apis/ProPlayersApi.http | 1 - .../http/client/Apis/PublicMatchesApi.http | 1 - .../http/client/Apis/RankingsApi.http | 1 - .../http/client/Apis/RecordsApi.http | 1 - .../http/client/Apis/ReplaysApi.http | 1 - .../http/client/Apis/RequestApi.http | 2 - .../http/client/Apis/ScenariosApi.http | 3 - .../jetbrains/http/client/Apis/SchemaApi.http | 1 - .../jetbrains/http/client/Apis/SearchApi.http | 1 - .../jetbrains/http/client/Apis/StatusApi.http | 1 - .../jetbrains/http/client/Apis/TeamsApi.http | 5 - .../jetbrains/http/client/Apis/PetApi.http | 12 +- .../jetbrains/http/client/Apis/StoreApi.http | 5 - .../jetbrains/http/client/Apis/UserApi.http | 9 -- 77 files changed, 157 insertions(+), 839 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java index a46911633b2d..7bd366f3801d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java @@ -191,28 +191,28 @@ List getRequests(CodegenOperation codegenOperation) { // operation with bodyParam if (requestParameterGeneration.equalsIgnoreCase("Schema")) { // get from schema - items.add(new RequestItem(codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam), getDefaultContentType(codegenOperation))); + addRequestForContentTypes(items, codegenOperation, codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam)); } else { // get from examples if (codegenOperation.bodyParam.example != null) { // find in bodyParam example - items.add(new RequestItem(codegenOperation.summary, formatJson(codegenOperation.bodyParam.example), getDefaultContentType(codegenOperation))); + addRequestForContentTypes(items, codegenOperation, codegenOperation.summary, formatJson(codegenOperation.bodyParam.example)); } else if (addRequestsFromMediaTypeExamples(items, codegenOperation)) { // request examples found in media type examples } else if (codegenOperation.bodyParam.getSchema() != null) { // find in schema example String exampleAsString = (codegenOperation.bodyParam.getSchema().getExample()); - items.add(new RequestItem(codegenOperation.summary, exampleAsString, getDefaultContentType(codegenOperation))); + addRequestForContentTypes(items, codegenOperation, codegenOperation.summary, exampleAsString); } else { // example not found // get from schema - items.add(new RequestItem(codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam), getDefaultContentType(codegenOperation))); + addRequestForContentTypes(items, codegenOperation, codegenOperation.summary, getJsonFromSchema(codegenOperation.bodyParam)); } } } else { // operation without bodyParam - items.add(new RequestItem(codegenOperation.summary, null)); + addRequestForContentTypes(items, codegenOperation, codegenOperation.summary, null); } codegenOperation.headerParams.forEach(param -> customVariables.put(param.baseName, "")); @@ -222,10 +222,60 @@ List getRequests(CodegenOperation codegenOperation) { List pathVariables = extractSingleCurlyBraces(codegenOperation.path); pathVariables.forEach(pv -> customVariables.put(pv, "")); + items.forEach(item -> { + if (Objects.equals(item.getName(), codegenOperation.summary)) { + item.setName(null); + } + }); + // Handling custom variables now return handleCustomVariablesInRequests(items); } + private void addRequestForContentTypes(List items, CodegenOperation codegenOperation, String name, String body) { + List contentTypes = getContentTypes(codegenOperation); + if (contentTypes.isEmpty()) { + items.add(new RequestItem(name, body)); + return; + } + + String primaryContentType = getPreferredContentType(contentTypes); + List commentedContentTypes = new ArrayList<>(contentTypes); + commentedContentTypes.remove(primaryContentType); + + String requestBody = null; + if (body != null && isJsonContentType(primaryContentType)) { + requestBody = body; + } + items.add(new RequestItem(name, requestBody, primaryContentType, commentedContentTypes)); + } + + private List getContentTypes(CodegenOperation codegenOperation) { + if (codegenOperation.consumes == null || codegenOperation.consumes.isEmpty()) { + return Collections.emptyList(); + } + + Set contentTypes = new LinkedHashSet<>(); + for (Map mediaType : codegenOperation.consumes) { + String contentType = mediaType.get("mediaType"); + if (contentType != null) { + contentTypes.add(contentType); + } + } + return new ArrayList<>(contentTypes); + } + + private String getPreferredContentType(List contentTypes) { + return contentTypes.stream() + .filter(this::isJsonContentType) + .findFirst() + .orElse(contentTypes.get(0)); + } + + private boolean isJsonContentType(String contentType) { + return contentType != null && contentType.toLowerCase(Locale.ROOT).contains("json"); + } + private boolean addRequestsFromMediaTypeExamples(List items, CodegenOperation codegenOperation) { LinkedHashMap content = codegenOperation.bodyParam.getContent(); if (content == null || content.isEmpty()) { @@ -255,13 +305,6 @@ private boolean addRequestsFromMediaTypeExamples(List items, Codege return !items.isEmpty(); } - private String getDefaultContentType(CodegenOperation codegenOperation) { - if (codegenOperation.consumes == null || codegenOperation.consumes.isEmpty()) { - return null; - } - return codegenOperation.consumes.get(0).get("mediaType"); - } - public static List extractDoubleCurlyBraces(String input) { List result = new ArrayList<>(); Pattern pattern = Pattern.compile("\\{\\{([^}]+)\\}\\}"); @@ -324,15 +367,21 @@ public class RequestItem { private String name; private String body; private String contentType; + private List commentedContentTypes; public RequestItem(String name, String body) { this(name, body, null); } public RequestItem(String name, String body, String contentType) { + this(name, body, contentType, Collections.emptyList()); + } + + public RequestItem(String name, String body, String contentType, List commentedContentTypes) { this.name = name; this.body = body; this.contentType = contentType; + this.commentedContentTypes = commentedContentTypes; } } diff --git a/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache b/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache index 40785fab83b9..34c940596c30 100644 --- a/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache +++ b/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache @@ -11,6 +11,9 @@ {{#contentType}} Content-Type: {{{.}}} {{/contentType}} +{{#commentedContentTypes}} +# Content-Type: {{{.}}} +{{/commentedContentTypes}} {{#produces}} Accept: {{{mediaType}}} {{/produces}} @@ -39,4 +42,4 @@ Authorization: Bearer {{#lambda.doubleMustache}}{bearerToken}{{/lambda.doubleMus {{{.}}} {{/body}} -{{/vendorExtensions.requests}}{{/operation}}{{/operations}} \ No newline at end of file +{{/vendorExtensions.requests}}{{/operation}}{{/operations}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java index a86aecc06334..3e9796d40e70 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java @@ -40,7 +40,6 @@ public void testBasicGenerationYaml() throws IOException { TestUtils.assertFileContains(path, "## BasicApi\n" + "\n" + "### Get User\n" + - "## Get User\n" + "GET http://localhost:5001/users/{{userId}}\n" + "Accept: application/json\n" + "Accept: application/xml"); @@ -68,7 +67,6 @@ public void testBasicGenerationJson() throws IOException { TestUtils.assertFileContains(path, "## BasicApi\n" + "\n" + "### Get User\n" + - "## Get User\n" + "GET http://localhost:5000/v1/users/{{userId}}\n" + "Accept: application/json\n" + "Accept: application/xml"); @@ -309,6 +307,96 @@ public void testInlineRequestBodyExamplesAreRenderedForNonJsonMediaTypes() throw TestUtils.assertFileNotContains(path, "Summary-only example"); } + @Test + public void testSchemaRequestBodyUsesJsonContentTypeAndCommentsAlternates() throws IOException { + File output = Files.createTempDirectory("jetbrainstest_").toFile(); + output.deleteOnExit(); + Path spec = Files.createTempFile("jetbrains-multiple-content-types_", ".yaml"); + spec.toFile().deleteOnExit(); + + Files.writeString(spec, String.join("\n", + "openapi: 3.0.3", + "info:", + " title: Multiple request body content types", + " version: '1.0'", + "servers:", + " - url: http://localhost:5000/v1", + "paths:", + " /pets:", + " post:", + " summary: Add pet", + " operationId: add-pet", + " requestBody:", + " content:", + " application/json:", + " schema:", + " $ref: '#/components/schemas/Pet'", + " application/xml:", + " schema:", + " $ref: '#/components/schemas/Pet'", + " responses:", + " '200':", + " description: OK", + " /pets/xml:", + " post:", + " summary: Add XML pet", + " operationId: add-xml-pet", + " requestBody:", + " content:", + " application/xml:", + " schema:", + " $ref: '#/components/schemas/Pet'", + " text/plain:", + " schema:", + " type: string", + " responses:", + " '200':", + " description: OK", + "components:", + " schemas:", + " Pet:", + " type: object", + " properties:", + " id:", + " type: integer", + " name:", + " type: string", + "")); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("jetbrains-http-client") + .setInputSpec(spec.toString()) + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + + final ClientOptInput clientOptInput = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + List files = generator.opts(clientOptInput).generate(); + + files.forEach(File::deleteOnExit); + + Path path = Paths.get(output + "/Apis/DefaultApi.http"); + assertFileExists(path); + TestUtils.assertFileContains(path, "### Add pet\n" + + "POST http://localhost:5000/v1/pets\n" + + "Content-Type: application/json\n" + + "# Content-Type: application/xml\n" + + "\n" + + "{\n" + + " \"id\": \"\",\n" + + " \"name\": \"\"\n" + + "}"); + TestUtils.assertFileContains(path, "### Add XML pet\n" + + "POST http://localhost:5000/v1/pets/xml\n" + + "Content-Type: application/xml\n" + + "# Content-Type: text/plain"); + TestUtils.assertFileNotContains(path, "Content-Type: application/json\nContent-Type: application/xml"); + TestUtils.assertFileNotContains(path, "POST http://localhost:5000/v1/pets/xml\n" + + "Content-Type: application/xml\n" + + "# Content-Type: text/plain\n" + + "\n" + + "{"); + } + @Test public void testBasicGenerationWithCustomHeaders() throws IOException { @@ -362,7 +450,6 @@ public void testBasicGenerationAuthBearer() throws IOException { TestUtils.assertFileContains(path, "## PaymentsApi\n" + "\n" + "### Get payment method by id\n" + - "## Get payment method by id\n" + "GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}}\n" + "Accept: application/json\n" + "Authorization: Bearer {{bearerToken}}"); @@ -399,7 +486,6 @@ public void testBasicGenerationAuthCookie() throws IOException { TestUtils.assertFileContains(path, "## PaymentsApi\n" + "\n" + "### Get payment method by id\n" + - "## Get payment method by id\n" + "GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}}\n" + "Accept: application/json\n" + "Cookie: X-API-Key={{cookieKey}}"); @@ -436,7 +522,6 @@ public void testBasicGenerationAuthQuery() throws IOException { TestUtils.assertFileContains(path, "## PaymentsApi\n" + "\n" + "### Get payment method by id\n" + - "## Get payment method by id\n" + "GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}}?api_key={{queryKey}}"); TestUtils.assertFileContains(path, "### Make a payment\n" + @@ -482,7 +567,6 @@ public void testBasicGenerationAuthBasic() throws IOException { TestUtils.assertFileContains(path, "## PaymentsApi\n" + "\n" + "### Get payment method by id\n" + - "## Get payment method by id\n" + "GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}}\n" + "Accept: application/json\n" + "Authorization: Basic: {{username-password}}"); @@ -511,7 +595,6 @@ public void testBasicGenerationAuthHeader() throws IOException { TestUtils.assertFileContains(path, "## PaymentsApi\n" + "\n" + "### Get payment method by id\n" + - "## Get payment method by id\n" + "GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}}\n" + "Accept: application/json\n" + "X-API-Key: {{apiKey}}"); @@ -538,7 +621,6 @@ public void testBasicGenerationManyAuths() throws IOException { assertFileExists(path); TestUtils.assertFileContains(path, "### Get payment method by id\n" + - "## Get payment method by id\n" + "GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}}?api_key={{queryKey}}\n" + "Accept: application/json\n" + "Authorization: Bearer {{bearerToken}}"); @@ -661,7 +743,6 @@ public void testBasicGenerationQueryParams() throws IOException { // Checking with extra params TestUtils.assertFileContains(path, "### Get User Info by Query Param\n" + - "## Get User Info by Query Param\n" + "GET http://localhost:5000/v1/users/?page={{page}}&pUserId={{pUserId}}&api_key={{queryKey}}\n" + "Accept: application/json\n" + "Custom-Header: {{customHeader}}\n" + @@ -669,7 +750,6 @@ public void testBasicGenerationQueryParams() throws IOException { // Checking without extra params TestUtils.assertFileContains(path, "### Get User Info by User ID\n" + - "## Get User Info by User ID\n" + "GET http://localhost:5000/v1/users/{{userId}}?api_key={{queryKey}}\n" + "Accept: application/json\n" + "strCode: {{strCode}}\n" + @@ -677,7 +757,6 @@ public void testBasicGenerationQueryParams() throws IOException { // Checking with only auth TestUtils.assertFileContains(path, "### Get User Info by User ID\n" + - "## Get User Info by User ID\n" + "GET http://localhost:5000/v1/users/{{userId}}?api_key={{queryKey}}\n" + "Accept: application/json\n" + "strCode: {{strCode}}\n" + @@ -735,7 +814,6 @@ public void testBasicGenerationHeaderParams() throws IOException { // Checking with extra headers and header security TestUtils.assertFileContains(path, "### Get User Info by Query Param\n" + - "## Get User Info by Query Param\n" + "GET http://localhost:5000/v1/users/?page={{page}}&pUserId={{pUserId}}\n" + "Accept: application/json\n" + "Custom-Header: {{customHeader}}\n" + @@ -753,7 +831,6 @@ public void testBasicGenerationHeaderParams() throws IOException { // Checking with only extra headers TestUtils.assertFileContains(path, "### Get group by ID\n" + - "## Get group by ID\n" + "GET http://localhost:5000/v1/groups/{{groupId}}\n" + "Accept: application/json\n" + "Custom-Header: {{customHeader}}\n" + diff --git a/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http b/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http index 76df8e01311d..c08ccf8a0128 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http @@ -21,20 +21,16 @@ Accept: application/json ### Add selected repository to an organization secret -## Add selected repository to an organization secret PUT https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repositories/{{repository_id}} ### Add selected repository to an organization variable -## Add selected repository to an organization variable PUT https://api.github.com/orgs/{{org}}/actions/variables/{{name}}/repositories/{{repository_id}} ### Approve a workflow run for a fork pull request -## Approve a workflow run for a fork pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/approve Accept: application/json ### Cancel a workflow run -## Cancel a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/cancel Accept: application/json @@ -98,22 +94,18 @@ Accept: application/json ### Create a registration token for an organization -## Create a registration token for an organization POST https://api.github.com/orgs/{{org}}/actions/runners/registration-token Accept: application/json ### Create a registration token for a repository -## Create a registration token for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/registration-token Accept: application/json ### Create a remove token for an organization -## Create a remove token for an organization POST https://api.github.com/orgs/{{org}}/actions/runners/remove-token Accept: application/json ### Create a remove token for a repository -## Create a remove token for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/remove-token Accept: application/json @@ -142,94 +134,72 @@ Content-Type: application/json ### Delete a GitHub Actions cache for a repository (using a cache ID) -## Delete a GitHub Actions cache for a repository (using a cache ID) DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/caches/{{cache_id}} ### Delete GitHub Actions caches for a repository (using a cache key) -## Delete GitHub Actions caches for a repository (using a cache key) DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/caches?key={{key}}&ref={{ref}} Accept: application/json ### Delete an artifact -## Delete an artifact DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/artifacts/{{artifact_id}} ### Delete an environment secret -## Delete an environment secret DELETE https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/secrets/{{secret_name}} ### Delete an environment variable -## Delete an environment variable DELETE https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/variables/{{name}} ### Delete an organization secret -## Delete an organization secret DELETE https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}} ### Delete an organization variable -## Delete an organization variable DELETE https://api.github.com/orgs/{{org}}/actions/variables/{{name}} ### Delete a repository secret -## Delete a repository secret DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/secrets/{{secret_name}} ### Delete a repository variable -## Delete a repository variable DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/variables/{{name}} ### Delete a self-hosted runner from an organization -## Delete a self-hosted runner from an organization DELETE https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}} ### Delete a self-hosted runner from a repository -## Delete a self-hosted runner from a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}} ### Delete a workflow run -## Delete a workflow run DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}} ### Delete workflow run logs -## Delete workflow run logs DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/logs Accept: application/json ### Disable a selected repository for GitHub Actions in an organization -## Disable a selected repository for GitHub Actions in an organization DELETE https://api.github.com/orgs/{{org}}/actions/permissions/repositories/{{repository_id}} ### Disable a workflow -## Disable a workflow PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}}/disable ### Download an artifact -## Download an artifact GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/artifacts/{{artifact_id}}/{{archive_format}} Accept: application/json ### Download job logs for a workflow run -## Download job logs for a workflow run GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/jobs/{{job_id}}/logs ### Download workflow run attempt logs -## Download workflow run attempt logs GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/attempts/{{attempt_number}}/logs ### Download workflow run logs -## Download workflow run logs GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/logs ### Enable a selected repository for GitHub Actions in an organization -## Enable a selected repository for GitHub Actions in an organization PUT https://api.github.com/orgs/{{org}}/actions/permissions/repositories/{{repository_id}} ### Enable a workflow -## Enable a workflow PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}}/enable ### Force cancel a workflow run -## Force cancel a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/force-cancel Accept: application/json @@ -260,288 +230,231 @@ Accept: application/json ### List GitHub Actions caches for a repository -## List GitHub Actions caches for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/caches?perPage={{perPage}}&page={{page}}&ref={{ref}}&key={{key}}&sort={{sort}}&direction={{direction}} Accept: application/json ### Get GitHub Actions cache usage for a repository -## Get GitHub Actions cache usage for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/cache/usage Accept: application/json ### List repositories with GitHub Actions cache usage for an organization -## List repositories with GitHub Actions cache usage for an organization GET https://api.github.com/orgs/{{org}}/actions/cache/usage-by-repository?perPage={{perPage}}&page={{page}} Accept: application/json ### Get GitHub Actions cache usage for an organization -## Get GitHub Actions cache usage for an organization GET https://api.github.com/orgs/{{org}}/actions/cache/usage Accept: application/json ### Get allowed actions and reusable workflows for an organization -## Get allowed actions and reusable workflows for an organization GET https://api.github.com/orgs/{{org}}/actions/permissions/selected-actions Accept: application/json ### Get allowed actions and reusable workflows for a repository -## Get allowed actions and reusable workflows for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/selected-actions Accept: application/json ### Get an artifact -## Get an artifact GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/artifacts/{{artifact_id}} Accept: application/json ### Get the customization template for an OIDC subject claim for a repository -## Get the customization template for an OIDC subject claim for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/oidc/customization/sub Accept: application/json Accept: application/scim+json ### Get an environment public key -## Get an environment public key GET https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/secrets/public-key Accept: application/json ### Get an environment secret -## Get an environment secret GET https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/secrets/{{secret_name}} Accept: application/json ### Get an environment variable -## Get an environment variable GET https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/variables/{{name}} Accept: application/json ### Get default workflow permissions for an organization -## Get default workflow permissions for an organization GET https://api.github.com/orgs/{{org}}/actions/permissions/workflow Accept: application/json ### Get default workflow permissions for a repository -## Get default workflow permissions for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/workflow Accept: application/json ### Get GitHub Actions permissions for an organization -## Get GitHub Actions permissions for an organization GET https://api.github.com/orgs/{{org}}/actions/permissions Accept: application/json ### Get GitHub Actions permissions for a repository -## Get GitHub Actions permissions for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions Accept: application/json ### Get a job for a workflow run -## Get a job for a workflow run GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/jobs/{{job_id}} Accept: application/json ### Get an organization public key -## Get an organization public key GET https://api.github.com/orgs/{{org}}/actions/secrets/public-key Accept: application/json ### Get an organization secret -## Get an organization secret GET https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}} Accept: application/json ### Get an organization variable -## Get an organization variable GET https://api.github.com/orgs/{{org}}/actions/variables/{{name}} Accept: application/json ### Get pending deployments for a workflow run -## Get pending deployments for a workflow run GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/pending_deployments Accept: application/json ### Get a repository public key -## Get a repository public key GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/secrets/public-key Accept: application/json ### Get a repository secret -## Get a repository secret GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/secrets/{{secret_name}} Accept: application/json ### Get a repository variable -## Get a repository variable GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/variables/{{name}} Accept: application/json ### Get the review history for a workflow run -## Get the review history for a workflow run GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/approvals Accept: application/json ### Get a self-hosted runner for an organization -## Get a self-hosted runner for an organization GET https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}} Accept: application/json ### Get a self-hosted runner for a repository -## Get a self-hosted runner for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}} Accept: application/json ### Get a workflow -## Get a workflow GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}} Accept: application/json ### Get the level of access for workflows outside of the repository -## Get the level of access for workflows outside of the repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/access Accept: application/json ### Get a workflow run -## Get a workflow run GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}?excludePullRequests={{excludePullRequests}} Accept: application/json ### Get a workflow run attempt -## Get a workflow run attempt GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/attempts/{{attempt_number}}?excludePullRequests={{excludePullRequests}} Accept: application/json ### Get workflow run usage -## Get workflow run usage GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/timing Accept: application/json ### Get workflow usage -## Get workflow usage GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}}/timing Accept: application/json ### List artifacts for a repository -## List artifacts for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/artifacts?perPage={{perPage}}&page={{page}}&name={{name}} Accept: application/json ### List environment secrets -## List environment secrets GET https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List environment variables -## List environment variables GET https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/variables?perPage={{perPage}}&page={{page}} Accept: application/json ### List jobs for a workflow run -## List jobs for a workflow run GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/jobs?filter={{filter}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List jobs for a workflow run attempt -## List jobs for a workflow run attempt GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/attempts/{{attempt_number}}/jobs?perPage={{perPage}}&page={{page}} Accept: application/json ### List labels for a self-hosted runner for an organization -## List labels for a self-hosted runner for an organization GET https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels Accept: application/json ### List labels for a self-hosted runner for a repository -## List labels for a self-hosted runner for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels Accept: application/json ### List organization secrets -## List organization secrets GET https://api.github.com/orgs/{{org}}/actions/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List organization variables -## List organization variables GET https://api.github.com/orgs/{{org}}/actions/variables?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository organization secrets -## List repository organization secrets GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/organization-secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository organization variables -## List repository organization variables GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/organization-variables?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository secrets -## List repository secrets GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository variables -## List repository variables GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/variables?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository workflows -## List repository workflows GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows?perPage={{perPage}}&page={{page}} Accept: application/json ### List runner applications for an organization -## List runner applications for an organization GET https://api.github.com/orgs/{{org}}/actions/runners/downloads Accept: application/json ### List runner applications for a repository -## List runner applications for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/downloads Accept: application/json ### List selected repositories for an organization secret -## List selected repositories for an organization secret GET https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repositories?page={{page}}&perPage={{perPage}} Accept: application/json ### List selected repositories for an organization variable -## List selected repositories for an organization variable GET https://api.github.com/orgs/{{org}}/actions/variables/{{name}}/repositories?page={{page}}&perPage={{perPage}} Accept: application/json ### List selected repositories enabled for GitHub Actions in an organization -## List selected repositories enabled for GitHub Actions in an organization GET https://api.github.com/orgs/{{org}}/actions/permissions/repositories?perPage={{perPage}}&page={{page}} Accept: application/json ### List self-hosted runners for an organization -## List self-hosted runners for an organization GET https://api.github.com/orgs/{{org}}/actions/runners?name={{name}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List self-hosted runners for a repository -## List self-hosted runners for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners?name={{name}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List workflow run artifacts -## List workflow run artifacts GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/artifacts?perPage={{perPage}}&page={{page}}&name={{name}} Accept: application/json ### List workflow runs for a workflow -## List workflow runs for a workflow GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}}/runs?actor={{actor}}&branch={{branch}}&event={{event}}&status={{status}}&perPage={{perPage}}&page={{page}}&created={{created}}&excludePullRequests={{excludePullRequests}}&checkSuiteId={{checkSuiteId}}&headSha={{headSha}} Accept: application/json ### List workflow runs for a repository -## List workflow runs for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs?actor={{actor}}&branch={{branch}}&event={{event}}&status={{status}}&perPage={{perPage}}&page={{page}}&created={{created}}&excludePullRequests={{excludePullRequests}}&checkSuiteId={{checkSuiteId}}&headSha={{headSha}} Accept: application/json ### Re-run a job from a workflow run -## Re-run a job from a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/jobs/{{job_id}}/rerun Content-Type: application/json Accept: application/json @@ -552,7 +465,6 @@ Accept: application/json ### Re-run a workflow -## Re-run a workflow POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/rerun Content-Type: application/json Accept: application/json @@ -563,7 +475,6 @@ Accept: application/json ### Re-run failed jobs from a workflow run -## Re-run failed jobs from a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/rerun-failed-jobs Content-Type: application/json Accept: application/json @@ -574,31 +485,25 @@ Accept: application/json ### Remove all custom labels from a self-hosted runner for an organization -## Remove all custom labels from a self-hosted runner for an organization DELETE https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels Accept: application/json ### Remove all custom labels from a self-hosted runner for a repository -## Remove all custom labels from a self-hosted runner for a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels Accept: application/json ### Remove a custom label from a self-hosted runner for an organization -## Remove a custom label from a self-hosted runner for an organization DELETE https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels/{{name}} Accept: application/json ### Remove a custom label from a self-hosted runner for a repository -## Remove a custom label from a self-hosted runner for a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels/{{name}} Accept: application/json ### Remove selected repository from an organization secret -## Remove selected repository from an organization secret DELETE https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repositories/{{repository_id}} ### Remove selected repository from an organization variable -## Remove selected repository from an organization variable DELETE https://api.github.com/orgs/{{org}}/actions/variables/{{name}}/repositories/{{repository_id}} ### Review custom deployment protection rules for a workflow run @@ -786,4 +691,3 @@ Content-Type: application/json "name" : "USERNAME", "value" : "octocat" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http b/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http index b7f930b08182..ccceb78d4dd6 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http @@ -1,122 +1,98 @@ ## ActivityApi ### Check if a repository is starred by the authenticated user -## Check if a repository is starred by the authenticated user GET https://api.github.com/user/starred/{{owner}}/{{repo}} Accept: application/json ### Delete a repository subscription -## Delete a repository subscription DELETE https://api.github.com/repos/{{owner}}/{{repo}}/subscription ### Delete a thread subscription -## Delete a thread subscription DELETE https://api.github.com/notifications/threads/{{thread_id}}/subscription Accept: application/json ### Get feeds -## Get feeds GET https://api.github.com/feeds Accept: application/json ### Get a repository subscription -## Get a repository subscription GET https://api.github.com/repos/{{owner}}/{{repo}}/subscription Accept: application/json ### Get a thread -## Get a thread GET https://api.github.com/notifications/threads/{{thread_id}} Accept: application/json ### Get a thread subscription for the authenticated user -## Get a thread subscription for the authenticated user GET https://api.github.com/notifications/threads/{{thread_id}}/subscription Accept: application/json ### List events for the authenticated user -## List events for the authenticated user GET https://api.github.com/users/{{username}}/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List notifications for the authenticated user -## List notifications for the authenticated user GET https://api.github.com/notifications?all={{all}}&participating={{participating}}&since={{since}}&before={{before}}&page={{page}}&perPage={{perPage}} Accept: application/json ### List organization events for the authenticated user -## List organization events for the authenticated user GET https://api.github.com/users/{{username}}/events/orgs/{{org}}?perPage={{perPage}}&page={{page}} Accept: application/json ### List public events -## List public events GET https://api.github.com/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List public events for a network of repositories -## List public events for a network of repositories GET https://api.github.com/networks/{{owner}}/{{repo}}/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List public events for a user -## List public events for a user GET https://api.github.com/users/{{username}}/events/public?perPage={{perPage}}&page={{page}} Accept: application/json ### List public organization events -## List public organization events GET https://api.github.com/orgs/{{org}}/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List events received by the authenticated user -## List events received by the authenticated user GET https://api.github.com/users/{{username}}/received_events?perPage={{perPage}}&page={{page}} Accept: application/json ### List public events received by a user -## List public events received by a user GET https://api.github.com/users/{{username}}/received_events/public?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository events -## List repository events GET https://api.github.com/repos/{{owner}}/{{repo}}/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository notifications for the authenticated user -## List repository notifications for the authenticated user GET https://api.github.com/repos/{{owner}}/{{repo}}/notifications?all={{all}}&participating={{participating}}&since={{since}}&before={{before}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories starred by the authenticated user -## List repositories starred by the authenticated user GET https://api.github.com/user/starred?sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json Accept: application/vnd.github.v3.star+json ### List repositories starred by a user -## List repositories starred by a user GET https://api.github.com/users/{{username}}/starred?sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories watched by a user -## List repositories watched by a user GET https://api.github.com/users/{{username}}/subscriptions?perPage={{perPage}}&page={{page}} Accept: application/json ### List stargazers -## List stargazers GET https://api.github.com/repos/{{owner}}/{{repo}}/stargazers?perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories watched by the authenticated user -## List repositories watched by the authenticated user GET https://api.github.com/user/subscriptions?perPage={{perPage}}&page={{page}} Accept: application/json ### List watchers -## List watchers GET https://api.github.com/repos/{{owner}}/{{repo}}/subscribers?perPage={{perPage}}&page={{page}} Accept: application/json @@ -142,11 +118,9 @@ Accept: application/json ### Mark a thread as done -## Mark a thread as done DELETE https://api.github.com/notifications/threads/{{thread_id}} ### Mark a thread as read -## Mark a thread as read PATCH https://api.github.com/notifications/threads/{{thread_id}} Accept: application/json @@ -172,11 +146,9 @@ Accept: application/json ### Star a repository for the authenticated user -## Star a repository for the authenticated user PUT https://api.github.com/user/starred/{{owner}}/{{repo}} Accept: application/json ### Unstar a repository for the authenticated user -## Unstar a repository for the authenticated user DELETE https://api.github.com/user/starred/{{owner}}/{{repo}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/AppsApi.http b/samples/client/github/jetbrains/http/client/Apis/AppsApi.http index 616b1530fd0c..85399754f90c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/AppsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/AppsApi.http @@ -1,7 +1,6 @@ ## AppsApi ### Add a repository to an app installation -## Add a repository to an app installation PUT https://api.github.com/user/installations/{{installation_id}}/repositories/{{repository_id}} Accept: application/json @@ -16,7 +15,6 @@ Accept: application/json ### Create a GitHub App from a manifest -## Create a GitHub App from a manifest POST https://api.github.com/app-manifests/{{code}}/conversions Accept: application/json @@ -45,7 +43,6 @@ Accept: application/json ### Delete an installation for the authenticated app -## Delete an installation for the authenticated app DELETE https://api.github.com/app/installations/{{installation_id}} Accept: application/json @@ -60,125 +57,101 @@ Accept: application/json ### Get the authenticated app -## Get the authenticated app GET https://api.github.com/app Accept: application/json ### Get an app -## Get an app GET https://api.github.com/apps/{{app_slug}} Accept: application/json ### Get an installation for the authenticated app -## Get an installation for the authenticated app GET https://api.github.com/app/installations/{{installation_id}} Accept: application/json ### Get an organization installation for the authenticated app -## Get an organization installation for the authenticated app GET https://api.github.com/orgs/{{org}}/installation Accept: application/json ### Get a repository installation for the authenticated app -## Get a repository installation for the authenticated app GET https://api.github.com/repos/{{owner}}/{{repo}}/installation Accept: application/json ### Get a subscription plan for an account -## Get a subscription plan for an account GET https://api.github.com/marketplace_listing/accounts/{{account_id}} Accept: application/json ### Get a subscription plan for an account (stubbed) -## Get a subscription plan for an account (stubbed) GET https://api.github.com/marketplace_listing/stubbed/accounts/{{account_id}} Accept: application/json ### Get a user installation for the authenticated app -## Get a user installation for the authenticated app GET https://api.github.com/users/{{username}}/installation Accept: application/json ### Get a webhook configuration for an app -## Get a webhook configuration for an app GET https://api.github.com/app/hook/config Accept: application/json ### Get a delivery for an app webhook -## Get a delivery for an app webhook GET https://api.github.com/app/hook/deliveries/{{delivery_id}} Accept: application/json Accept: application/scim+json ### List accounts for a plan -## List accounts for a plan GET https://api.github.com/marketplace_listing/plans/{{plan_id}}/accounts?sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List accounts for a plan (stubbed) -## List accounts for a plan (stubbed) GET https://api.github.com/marketplace_listing/stubbed/plans/{{plan_id}}/accounts?sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories accessible to the user access token -## List repositories accessible to the user access token GET https://api.github.com/user/installations/{{installation_id}}/repositories?perPage={{perPage}}&page={{page}} Accept: application/json ### List installation requests for the authenticated app -## List installation requests for the authenticated app GET https://api.github.com/app/installation-requests?perPage={{perPage}}&page={{page}} Accept: application/json ### List installations for the authenticated app -## List installations for the authenticated app GET https://api.github.com/app/installations?perPage={{perPage}}&page={{page}}&since={{since}}&outdated={{outdated}} Accept: application/json ### List app installations accessible to the user access token -## List app installations accessible to the user access token GET https://api.github.com/user/installations?perPage={{perPage}}&page={{page}} Accept: application/json ### List plans -## List plans GET https://api.github.com/marketplace_listing/plans?perPage={{perPage}}&page={{page}} Accept: application/json ### List plans (stubbed) -## List plans (stubbed) GET https://api.github.com/marketplace_listing/stubbed/plans?perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories accessible to the app installation -## List repositories accessible to the app installation GET https://api.github.com/installation/repositories?perPage={{perPage}}&page={{page}} Accept: application/json ### List subscriptions for the authenticated user -## List subscriptions for the authenticated user GET https://api.github.com/user/marketplace_purchases?perPage={{perPage}}&page={{page}} Accept: application/json ### List subscriptions for the authenticated user (stubbed) -## List subscriptions for the authenticated user (stubbed) GET https://api.github.com/user/marketplace_purchases/stubbed?perPage={{perPage}}&page={{page}} Accept: application/json ### List deliveries for an app webhook -## List deliveries for an app webhook GET https://api.github.com/app/hook/deliveries?perPage={{perPage}}&cursor={{cursor}}&redelivery={{redelivery}} Accept: application/json Accept: application/scim+json ### Redeliver a delivery for an app webhook -## Redeliver a delivery for an app webhook POST https://api.github.com/app/hook/deliveries/{{delivery_id}}/attempts Accept: application/json Accept: application/scim+json ### Remove a repository from an app installation -## Remove a repository from an app installation DELETE https://api.github.com/user/installations/{{installation_id}}/repositories/{{repository_id}} Accept: application/json @@ -193,7 +166,6 @@ Accept: application/json ### Revoke an installation access token -## Revoke an installation access token DELETE https://api.github.com/installation/token ### Create a scoped access token @@ -213,12 +185,10 @@ Accept: application/json ### Suspend an app installation -## Suspend an app installation PUT https://api.github.com/app/installations/{{installation_id}}/suspended Accept: application/json ### Unsuspend an app installation -## Unsuspend an app installation DELETE https://api.github.com/app/installations/{{installation_id}}/suspended Accept: application/json @@ -233,4 +203,3 @@ Accept: application/json "secret" : "********", "url" : "https://example.com/webhook" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/BillingApi.http b/samples/client/github/jetbrains/http/client/Apis/BillingApi.http index 58f85466fda4..70ab4359005b 100644 --- a/samples/client/github/jetbrains/http/client/Apis/BillingApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/BillingApi.http @@ -1,31 +1,25 @@ ## BillingApi ### Get GitHub Actions billing for an organization -## Get GitHub Actions billing for an organization GET https://api.github.com/orgs/{{org}}/settings/billing/actions Accept: application/json ### Get GitHub Actions billing for a user -## Get GitHub Actions billing for a user GET https://api.github.com/users/{{username}}/settings/billing/actions Accept: application/json ### Get GitHub Packages billing for an organization -## Get GitHub Packages billing for an organization GET https://api.github.com/orgs/{{org}}/settings/billing/packages Accept: application/json ### Get GitHub Packages billing for a user -## Get GitHub Packages billing for a user GET https://api.github.com/users/{{username}}/settings/billing/packages Accept: application/json ### Get shared storage billing for an organization -## Get shared storage billing for an organization GET https://api.github.com/orgs/{{org}}/settings/billing/shared-storage Accept: application/json ### Get shared storage billing for a user -## Get shared storage billing for a user GET https://api.github.com/users/{{username}}/settings/billing/shared-storage Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http b/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http index 99230794425c..0e9fc03d0e50 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http @@ -77,42 +77,34 @@ Accept: application/json ### Get a check run -## Get a check run GET https://api.github.com/repos/{{owner}}/{{repo}}/check-runs/{{check_run_id}} Accept: application/json ### Get a check suite -## Get a check suite GET https://api.github.com/repos/{{owner}}/{{repo}}/check-suites/{{check_suite_id}} Accept: application/json ### List check run annotations -## List check run annotations GET https://api.github.com/repos/{{owner}}/{{repo}}/check-runs/{{check_run_id}}/annotations?perPage={{perPage}}&page={{page}} Accept: application/json ### List check runs for a Git reference -## List check runs for a Git reference GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{ref}}/check-runs?checkName={{checkName}}&status={{status}}&filter={{filter}}&perPage={{perPage}}&page={{page}}&appId={{appId}} Accept: application/json ### List check runs in a check suite -## List check runs in a check suite GET https://api.github.com/repos/{{owner}}/{{repo}}/check-suites/{{check_suite_id}}/check-runs?checkName={{checkName}}&status={{status}}&filter={{filter}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List check suites for a Git reference -## List check suites for a Git reference GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{ref}}/check-suites?appId={{appId}}&checkName={{checkName}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Rerequest a check run -## Rerequest a check run POST https://api.github.com/repos/{{owner}}/{{repo}}/check-runs/{{check_run_id}}/rerequest Accept: application/json ### Rerequest a check suite -## Rerequest a check suite POST https://api.github.com/repos/{{owner}}/{{repo}}/check-suites/{{check_suite_id}}/rerequest Accept: application/json @@ -167,4 +159,3 @@ Accept: application/json } ] } } - diff --git a/samples/client/github/jetbrains/http/client/Apis/ClassroomApi.http b/samples/client/github/jetbrains/http/client/Apis/ClassroomApi.http index 31ed31e4cef0..b87378f30018 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ClassroomApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ClassroomApi.http @@ -1,31 +1,25 @@ ## ClassroomApi ### Get a classroom -## Get a classroom GET https://api.github.com/classrooms/{{classroom_id}} Accept: application/json ### Get an assignment -## Get an assignment GET https://api.github.com/assignments/{{assignment_id}} Accept: application/json ### Get assignment grades -## Get assignment grades GET https://api.github.com/assignments/{{assignment_id}}/grades Accept: application/json ### List accepted assignments for an assignment -## List accepted assignments for an assignment GET https://api.github.com/assignments/{{assignment_id}}/accepted_assignments?page={{page}}&perPage={{perPage}} Accept: application/json ### List assignments for a classroom -## List assignments for a classroom GET https://api.github.com/classrooms/{{classroom_id}}/assignments?page={{page}}&perPage={{perPage}} Accept: application/json ### List classrooms -## List classrooms GET https://api.github.com/classrooms?page={{page}}&perPage={{perPage}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http b/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http index 3121707e3d12..70d1bf788f57 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http @@ -1,59 +1,48 @@ ## CodeScanningApi ### Delete a code scanning analysis from a repository -## Delete a code scanning analysis from a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/analyses/{{analysis_id}}?confirmDelete={{confirmDelete}} Accept: application/json Accept: application/scim+json ### Get a code scanning alert -## Get a code scanning alert GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/alerts/{{alert_number}} Accept: application/json ### Get a code scanning analysis for a repository -## Get a code scanning analysis for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/analyses/{{analysis_id}} Accept: application/json Accept: application/json+sarif ### Get a CodeQL database for a repository -## Get a CodeQL database for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/codeql/databases/{{language}} Accept: application/json ### Get a code scanning default setup configuration -## Get a code scanning default setup configuration GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/default-setup Accept: application/json ### Get information about a SARIF upload -## Get information about a SARIF upload GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/sarifs/{{sarif_id}} Accept: application/json ### List instances of a code scanning alert -## List instances of a code scanning alert GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/alerts/{{alert_number}}/instances?page={{page}}&perPage={{perPage}}&ref={{ref}} Accept: application/json ### List code scanning alerts for an organization -## List code scanning alerts for an organization GET https://api.github.com/orgs/{{org}}/code-scanning/alerts?toolName={{toolName}}&toolGuid={{toolGuid}}&before={{before}}&after={{after}}&page={{page}}&perPage={{perPage}}&direction={{direction}}&state={{state}}&sort={{sort}}&severity={{severity}} Accept: application/json ### List code scanning alerts for a repository -## List code scanning alerts for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/alerts?toolName={{toolName}}&toolGuid={{toolGuid}}&page={{page}}&perPage={{perPage}}&ref={{ref}}&direction={{direction}}&sort={{sort}}&state={{state}}&severity={{severity}} Accept: application/json ### List CodeQL databases for a repository -## List CodeQL databases for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/codeql/databases Accept: application/json ### List code scanning analyses for a repository -## List code scanning analyses for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/analyses?toolName={{toolName}}&toolGuid={{toolGuid}}&page={{page}}&perPage={{perPage}}&ref={{ref}}&sarifId={{sarifId}}&direction={{direction}}&sort={{sort}} Accept: application/json @@ -89,4 +78,3 @@ Accept: application/json "ref" : "refs/heads/master", "sarif" : "H4sICMLGdF4AA2V4YW1wbGUuc2FyaWYAvVjdbts2FL7PUxDCijaA/CM7iRNfLkPXYgHSNstumlzQ0pHFVCI1korjFgH2ONtr7Ul2KFmy/mOn6QIkjsjDw0/nfN85NL8dEGL9pNwAImqRObECrWM1H40kXQ2XTAfJIlEgXcE1cD10RTQSVDE10K4aKSqZP1AxuKOIKg1ydJU60jSfSh8Hk6EzHA/vlOCWbfa7B6kYPpj90rlsWCZcmbHP5Bs+4oAWIjQD2SMOeJLh2vIQDnIaQerqXHjw8YIgxohybxAyDsS4cAPKsp03K4RcUs6+Up2D+JXpd8mibKIQN9fM/aMCdbyBujGSSQgVxJtx5qX2d2qUcIweQhEuDQf3GBO6CKHkogx/N3MVCKl/AeVKFuf4y5ubsMGDTj1ep+5I7sgmLIpxtU38hLtmMRGSuCFVyip5eKzs5ydh+LztVL6f2m6oih1BkYiuyQIIJWodxVpERPj4sEiWBNNH8EWT0DMG8EAjzKVHXCrB4FkPu/F64NMk1OeC+2yZSNoBOoR7CC0EzYWGbm+xFDFIzbI011+cLjfZtyJkmMZfumAh02uL3NpV2y+MZ6RAjxibyKrNxxJcVjANSb4eBGwZ1M0KsuyR2poLr5rMl8vaDSeVn6eTWEO2j2xIEcmhwlTKNOi4GMOI8gfuZYkvJ7b4v5Tiumyz7RnHeodFzpS8ASIZCH/AYdWi2z3sG8JtFxJ6fF9yR9CdifBr9Pd6d5V2+zbJKjjCFGGmsHuYFy2ytJq9tUxcLSRSQecppOGKrpUxYfxefMEFK+wOGa4hudQByBVT0L+EKtyACxnRsABhEx1QjVDs1KNI9MbpnhqfE45B6FJvu3hRu5VRU9MhZLmK7fqkKyQSTHNoyMqUFMqXCV3CwAeqEwmVokraK8IuBaGvHjQ0gMYrKjnjyw7uk9uD8tgmsBbFMPnU1bV2ZhkJNkuolUiWys3UPWzs5aaIUz9TBe8zMb+6+nT+6fLy91dlE3xzeDDT4zYszb0bW6NjJd0Rvn2EnLvWLFSdKPpBzInzfRgu8ETyMcH8nIfMnJCeC2PyfTA+UKngcnGH7Hw2hGkVQs5YlIRCtdWZYQ4/73es2JlxkfViOEIhoWJq5Oo6UBBfiKIqFBWhiE3jJGbFwVoxBHTRSuIS67sMeplei24X20shLjG+8gqbKC/bESiNMC+wd5q5id0yeS7CJEqXzmrTWNq3k05l84P6f4/bEmXFJjI0fIt1BGQssUnUDkBYeVhE5TqPnMH3jqogDcP0zKcTgLPTMSzOjhbjuVOmW23l1fYNStulfo6sXlFsGLhbDy5RECPRYGCTgOj2bd4nUQEivEd0H7KKYxqnEhFohuur3a3UPskbH/+Yg0+M5P2MHRJu3ziHh3Z2NCrWt3XF1rWTw8Ne/pfbWYXnDSE0SNZQQt1i18q7te2vOhu7ehWuvVyeu0wbLZi24mhoo6aOOTltzG/lgdVvVoXQq5V+pewkFIzL8fjEcadT55jOjpzFzHuOTtDNrMkJPMVQDd7F09RID72O/UPZ0tmctqZ7kWX6EmSZnDpP8GU67SXM8XE3YSrxbKsx6UReZ4y6n/FVZfJjs9Z7stma75W5yQtkzjk5eSJxk1lv4o7+j8TlhaJ2lsKWZO6lruDPBLib3x5ZN/KGWzZ+pn///evv7OOf4iIBv3oY9L/l1wiJ9p0Tc+F1zZnOE9NxXWEus6IQhr5pMfoqxi8WPsuu0azsns4UC6WzNzHIzbeEx4P/AJ3SefgcFAAA" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/CodesOfConductApi.http b/samples/client/github/jetbrains/http/client/Apis/CodesOfConductApi.http index 37a0c1796386..aacd9e3bd384 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodesOfConductApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodesOfConductApi.http @@ -1,11 +1,9 @@ ## CodesOfConductApi ### Get all codes of conduct -## Get all codes of conduct GET https://api.github.com/codes_of_conduct Accept: application/json ### Get a code of conduct -## Get a code of conduct GET https://api.github.com/codes_of_conduct/{{key}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http b/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http index 9d8c007b8a21..ce32483a89da 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http @@ -1,22 +1,18 @@ ## CodespacesApi ### Add a selected repository to a user secret -## Add a selected repository to a user secret PUT https://api.github.com/user/codespaces/secrets/{{secret_name}}/repositories/{{repository_id}} Accept: application/json ### Add selected repository to an organization secret -## Add selected repository to an organization secret PUT https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}}/repositories/{{repository_id}} Accept: application/json ### Check if permissions defined by a devcontainer have been accepted by the authenticated user -## Check if permissions defined by a devcontainer have been accepted by the authenticated user GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/permissions_check?ref={{ref}}&devcontainerPath={{devcontainerPath}} Accept: application/json ### List machine types for a codespace -## List machine types for a codespace GET https://api.github.com/user/codespaces/{{codespace_name}}/machines Accept: application/json @@ -102,126 +98,101 @@ Accept: application/json ### Delete a codespace for the authenticated user -## Delete a codespace for the authenticated user DELETE https://api.github.com/user/codespaces/{{codespace_name}} Accept: application/json ### Delete a codespace from the organization -## Delete a codespace from the organization DELETE https://api.github.com/orgs/{{org}}/members/{{username}}/codespaces/{{codespace_name}} Accept: application/json ### Delete an organization secret -## Delete an organization secret DELETE https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}} Accept: application/json ### Delete a repository secret -## Delete a repository secret DELETE https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/secrets/{{secret_name}} ### Delete a secret for the authenticated user -## Delete a secret for the authenticated user DELETE https://api.github.com/user/codespaces/secrets/{{secret_name}} ### Export a codespace for the authenticated user -## Export a codespace for the authenticated user POST https://api.github.com/user/codespaces/{{codespace_name}}/exports Accept: application/json ### List codespaces for a user in organization -## List codespaces for a user in organization GET https://api.github.com/orgs/{{org}}/members/{{username}}/codespaces?perPage={{perPage}}&page={{page}} Accept: application/json ### Get details about a codespace export -## Get details about a codespace export GET https://api.github.com/user/codespaces/{{codespace_name}}/exports/{{export_id}} Accept: application/json ### Get a codespace for the authenticated user -## Get a codespace for the authenticated user GET https://api.github.com/user/codespaces/{{codespace_name}} Accept: application/json ### Get an organization public key -## Get an organization public key GET https://api.github.com/orgs/{{org}}/codespaces/secrets/public-key Accept: application/json ### Get an organization secret -## Get an organization secret GET https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}} Accept: application/json ### Get public key for the authenticated user -## Get public key for the authenticated user GET https://api.github.com/user/codespaces/secrets/public-key Accept: application/json ### Get a repository public key -## Get a repository public key GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/secrets/public-key Accept: application/json ### Get a repository secret -## Get a repository secret GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/secrets/{{secret_name}} Accept: application/json ### Get a secret for the authenticated user -## Get a secret for the authenticated user GET https://api.github.com/user/codespaces/secrets/{{secret_name}} Accept: application/json ### List devcontainer configurations in a repository for the authenticated user -## List devcontainer configurations in a repository for the authenticated user GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/devcontainers?perPage={{perPage}}&page={{page}} Accept: application/json Accept: application/scim+json ### List codespaces for the authenticated user -## List codespaces for the authenticated user GET https://api.github.com/user/codespaces?perPage={{perPage}}&page={{page}}&repositoryId={{repositoryId}} Accept: application/json ### List codespaces for the organization -## List codespaces for the organization GET https://api.github.com/orgs/{{org}}/codespaces?perPage={{perPage}}&page={{page}} Accept: application/json ### List codespaces in a repository for the authenticated user -## List codespaces in a repository for the authenticated user GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces?perPage={{perPage}}&page={{page}} Accept: application/json ### List organization secrets -## List organization secrets GET https://api.github.com/orgs/{{org}}/codespaces/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository secrets -## List repository secrets GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List selected repositories for a user secret -## List selected repositories for a user secret GET https://api.github.com/user/codespaces/secrets/{{secret_name}}/repositories Accept: application/json ### List secrets for the authenticated user -## List secrets for the authenticated user GET https://api.github.com/user/codespaces/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List selected repositories for an organization secret -## List selected repositories for an organization secret GET https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}}/repositories?page={{page}}&perPage={{perPage}} Accept: application/json ### Get default attributes for a codespace -## Get default attributes for a codespace GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/new?ref={{ref}}&clientIp={{clientIp}} Accept: application/json @@ -237,17 +208,14 @@ Accept: application/json ### Remove a selected repository from a user secret -## Remove a selected repository from a user secret DELETE https://api.github.com/user/codespaces/secrets/{{secret_name}}/repositories/{{repository_id}} Accept: application/json ### Remove selected repository from an organization secret -## Remove selected repository from an organization secret DELETE https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}}/repositories/{{repository_id}} Accept: application/json ### List available machine types for a repository -## List available machine types for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/machines?location={{location}}&clientIp={{clientIp}}&ref={{ref}} Accept: application/json @@ -293,18 +261,15 @@ Accept: application/json ### Start a codespace for the authenticated user -## Start a codespace for the authenticated user POST https://api.github.com/user/codespaces/{{codespace_name}}/start Accept: application/json Accept: application/scim+json ### Stop a codespace for the authenticated user -## Stop a codespace for the authenticated user POST https://api.github.com/user/codespaces/{{codespace_name}}/stop Accept: application/json ### Stop a codespace for an organization user -## Stop a codespace for an organization user POST https://api.github.com/orgs/{{org}}/members/{{username}}/codespaces/{{codespace_name}}/stop Accept: application/json @@ -316,4 +281,3 @@ Accept: application/json { "machine" : "standardLinux" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http b/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http index 72320f568339..3ae7b48e78a2 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http @@ -41,16 +41,13 @@ Accept: application/json ### Get Copilot seat information and settings for an organization -## Get Copilot seat information and settings for an organization GET https://api.github.com/orgs/{{org}}/copilot/billing Accept: application/json ### Get Copilot seat assignment details for a user -## Get Copilot seat assignment details for a user GET https://api.github.com/orgs/{{org}}/members/{{username}}/copilot Accept: application/json ### List all Copilot seat assignments for an organization -## List all Copilot seat assignments for an organization GET https://api.github.com/orgs/{{org}}/copilot/billing/seats?page={{page}}&perPage={{perPage}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http b/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http index e3167731b7f4..8256cac32fd8 100644 --- a/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http @@ -1,7 +1,6 @@ ## DependabotApi ### Add selected repository to an organization secret -## Add selected repository to an organization secret PUT https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}}/repositories/{{repository_id}} ### Create or update an organization secret @@ -29,72 +28,58 @@ Accept: application/json ### Delete an organization secret -## Delete an organization secret DELETE https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}} ### Delete a repository secret -## Delete a repository secret DELETE https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/secrets/{{secret_name}} ### Get a Dependabot alert -## Get a Dependabot alert GET https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/alerts/{{alert_number}} Accept: application/json ### Get an organization public key -## Get an organization public key GET https://api.github.com/orgs/{{org}}/dependabot/secrets/public-key Accept: application/json ### Get an organization secret -## Get an organization secret GET https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}} Accept: application/json ### Get a repository public key -## Get a repository public key GET https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/secrets/public-key Accept: application/json ### Get a repository secret -## Get a repository secret GET https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/secrets/{{secret_name}} Accept: application/json ### List Dependabot alerts for an enterprise -## List Dependabot alerts for an enterprise GET https://api.github.com/enterprises/{{enterprise}}/dependabot/alerts?state={{state}}&severity={{severity}}&ecosystem={{ecosystem}}&package={{package}}&scope={{scope}}&sort={{sort}}&direction={{direction}}&before={{before}}&after={{after}}&first={{first}}&last={{last}}&perPage={{perPage}} Accept: application/json ### List Dependabot alerts for an organization -## List Dependabot alerts for an organization GET https://api.github.com/orgs/{{org}}/dependabot/alerts?state={{state}}&severity={{severity}}&ecosystem={{ecosystem}}&package={{package}}&scope={{scope}}&sort={{sort}}&direction={{direction}}&before={{before}}&after={{after}}&first={{first}}&last={{last}}&perPage={{perPage}} Accept: application/json Accept: application/scim+json ### List Dependabot alerts for a repository -## List Dependabot alerts for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/alerts?state={{state}}&severity={{severity}}&ecosystem={{ecosystem}}&package={{package}}&manifest={{manifest}}&scope={{scope}}&sort={{sort}}&direction={{direction}}&page={{page}}&perPage={{perPage}}&before={{before}}&after={{after}}&first={{first}}&last={{last}} Accept: application/json Accept: application/scim+json ### List organization secrets -## List organization secrets GET https://api.github.com/orgs/{{org}}/dependabot/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository secrets -## List repository secrets GET https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/secrets?perPage={{perPage}}&page={{page}} Accept: application/json ### List selected repositories for an organization secret -## List selected repositories for an organization secret GET https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}}/repositories?page={{page}}&perPage={{perPage}} Accept: application/json ### Remove selected repository from an organization secret -## Remove selected repository from an organization secret DELETE https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}}/repositories/{{repository_id}} ### Set selected repositories for an organization secret @@ -117,4 +102,3 @@ Accept: application/scim+json "dismissed_reason" : "tolerable_risk", "dismissed_comment" : "This alert is accurate but we use a sanitizer." } - diff --git a/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http b/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http index 58b8a1deca67..589321bda143 100644 --- a/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http @@ -44,11 +44,9 @@ Accept: application/json ### Get a diff of the dependencies between commits -## Get a diff of the dependencies between commits GET https://api.github.com/repos/{{owner}}/{{repo}}/dependency-graph/compare/{{basehead}}?name={{name}} Accept: application/json ### Export a software bill of materials (SBOM) for a repository. -## Export a software bill of materials (SBOM) for a repository. GET https://api.github.com/repos/{{owner}}/{{repo}}/dependency-graph/sbom Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/EmojisApi.http b/samples/client/github/jetbrains/http/client/Apis/EmojisApi.http index 4d983898662c..13b3fe9bc92e 100644 --- a/samples/client/github/jetbrains/http/client/Apis/EmojisApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/EmojisApi.http @@ -1,6 +1,5 @@ ## EmojisApi ### Get emojis -## Get emojis GET https://api.github.com/emojis Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/GistsApi.http b/samples/client/github/jetbrains/http/client/Apis/GistsApi.http index f4681a0ce5f7..0a80f2d8457c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GistsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GistsApi.http @@ -1,7 +1,6 @@ ## GistsApi ### Check if a gist is starred -## Check if a gist is starred GET https://api.github.com/gists/{{gist_id}}/star Accept: application/json @@ -34,77 +33,62 @@ Accept: application/json ### Delete a gist -## Delete a gist DELETE https://api.github.com/gists/{{gist_id}} Accept: application/json ### Delete a gist comment -## Delete a gist comment DELETE https://api.github.com/gists/{{gist_id}}/comments/{{comment_id}} Accept: application/json ### Fork a gist -## Fork a gist POST https://api.github.com/gists/{{gist_id}}/forks Accept: application/json ### Get a gist -## Get a gist GET https://api.github.com/gists/{{gist_id}} Accept: application/json ### Get a gist comment -## Get a gist comment GET https://api.github.com/gists/{{gist_id}}/comments/{{comment_id}} Accept: application/json ### Get a gist revision -## Get a gist revision GET https://api.github.com/gists/{{gist_id}}/{{sha}} Accept: application/json ### List gists for the authenticated user -## List gists for the authenticated user GET https://api.github.com/gists?since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List gist comments -## List gist comments GET https://api.github.com/gists/{{gist_id}}/comments?perPage={{perPage}}&page={{page}} Accept: application/json ### List gist commits -## List gist commits GET https://api.github.com/gists/{{gist_id}}/commits?perPage={{perPage}}&page={{page}} Accept: application/json ### List gists for a user -## List gists for a user GET https://api.github.com/users/{{username}}/gists?since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List gist forks -## List gist forks GET https://api.github.com/gists/{{gist_id}}/forks?perPage={{perPage}}&page={{page}} Accept: application/json ### List public gists -## List public gists GET https://api.github.com/gists/public?since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List starred gists -## List starred gists GET https://api.github.com/gists/starred?since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Star a gist -## Star a gist PUT https://api.github.com/gists/{{gist_id}}/star Accept: application/json ### Unstar a gist -## Unstar a gist DELETE https://api.github.com/gists/{{gist_id}}/star Accept: application/json @@ -159,4 +143,3 @@ Accept: application/json { "body" : "This is an update to a comment in a gist" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/GitApi.http b/samples/client/github/jetbrains/http/client/Apis/GitApi.http index 81a695a39634..b8a5546493ce 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GitApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GitApi.http @@ -75,37 +75,30 @@ Accept: application/json ### Delete a reference -## Delete a reference DELETE https://api.github.com/repos/{{owner}}/{{repo}}/git/refs/{{ref}} Accept: application/json ### Get a blob -## Get a blob GET https://api.github.com/repos/{{owner}}/{{repo}}/git/blobs/{{file_sha}} Accept: application/json ### Get a commit object -## Get a commit object GET https://api.github.com/repos/{{owner}}/{{repo}}/git/commits/{{commit_sha}} Accept: application/json ### Get a reference -## Get a reference GET https://api.github.com/repos/{{owner}}/{{repo}}/git/ref/{{ref}} Accept: application/json ### Get a tag -## Get a tag GET https://api.github.com/repos/{{owner}}/{{repo}}/git/tags/{{tag_sha}} Accept: application/json ### Get a tree -## Get a tree GET https://api.github.com/repos/{{owner}}/{{repo}}/git/trees/{{tree_sha}}?recursive={{recursive}} Accept: application/json ### List matching references -## List matching references GET https://api.github.com/repos/{{owner}}/{{repo}}/git/matching-refs/{{ref}} Accept: application/json @@ -118,4 +111,3 @@ Accept: application/json "sha" : "aa218f56b14c9653891f9e74264a383fa43fefbd", "force" : true } - diff --git a/samples/client/github/jetbrains/http/client/Apis/GitignoreApi.http b/samples/client/github/jetbrains/http/client/Apis/GitignoreApi.http index afcd14c646bf..cb3b6e638daa 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GitignoreApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GitignoreApi.http @@ -1,11 +1,9 @@ ## GitignoreApi ### Get all gitignore templates -## Get all gitignore templates GET https://api.github.com/gitignore/templates Accept: application/json ### Get a gitignore template -## Get a gitignore template GET https://api.github.com/gitignore/templates/{{name}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http b/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http index bd38c130736e..9eb99ae3eb10 100644 --- a/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http @@ -1,30 +1,24 @@ ## InteractionsApi ### Get interaction restrictions for your public repositories -## Get interaction restrictions for your public repositories GET https://api.github.com/user/interaction-limits Accept: application/json ### Get interaction restrictions for an organization -## Get interaction restrictions for an organization GET https://api.github.com/orgs/{{org}}/interaction-limits Accept: application/json ### Get interaction restrictions for a repository -## Get interaction restrictions for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/interaction-limits Accept: application/json ### Remove interaction restrictions from your public repositories -## Remove interaction restrictions from your public repositories DELETE https://api.github.com/user/interaction-limits ### Remove interaction restrictions for an organization -## Remove interaction restrictions for an organization DELETE https://api.github.com/orgs/{{org}}/interaction-limits ### Remove interaction restrictions for a repository -## Remove interaction restrictions for a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/interaction-limits ### Set interaction restrictions for your public repositories @@ -59,4 +53,3 @@ Accept: application/json "limit" : "collaborators_only", "expiry" : "one_day" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http b/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http index bac4c17b0148..58c887e468b2 100644 --- a/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http @@ -21,12 +21,10 @@ Accept: application/json ### Check if a user can be assigned -## Check if a user can be assigned GET https://api.github.com/repos/{{owner}}/{{repo}}/assignees/{{assignee}} Accept: application/json ### Check if a user can be assigned to a issue -## Check if a user can be assigned to a issue GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/assignees/{{assignee}} Accept: application/json @@ -81,110 +79,88 @@ Accept: application/json ### Delete an issue comment -## Delete an issue comment DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}} ### Delete a label -## Delete a label DELETE https://api.github.com/repos/{{owner}}/{{repo}}/labels/{{name}} ### Delete a milestone -## Delete a milestone DELETE https://api.github.com/repos/{{owner}}/{{repo}}/milestones/{{milestone_number}} Accept: application/json ### Get an issue -## Get an issue GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}} Accept: application/json ### Get an issue comment -## Get an issue comment GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}} Accept: application/json ### Get an issue event -## Get an issue event GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/events/{{event_id}} Accept: application/json ### Get a label -## Get a label GET https://api.github.com/repos/{{owner}}/{{repo}}/labels/{{name}} Accept: application/json ### Get a milestone -## Get a milestone GET https://api.github.com/repos/{{owner}}/{{repo}}/milestones/{{milestone_number}} Accept: application/json ### List issues assigned to the authenticated user -## List issues assigned to the authenticated user GET https://api.github.com/issues?filter={{filter}}&state={{state}}&labels={{labels}}&sort={{sort}}&direction={{direction}}&since={{since}}&collab={{collab}}&orgs={{orgs}}&owned={{owned}}&pulls={{pulls}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List assignees -## List assignees GET https://api.github.com/repos/{{owner}}/{{repo}}/assignees?perPage={{perPage}}&page={{page}} Accept: application/json ### List issue comments -## List issue comments GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/comments?since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List issue comments for a repository -## List issue comments for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments?sort={{sort}}&direction={{direction}}&since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List issue events -## List issue events GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List issue events for a repository -## List issue events for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/events?perPage={{perPage}}&page={{page}} Accept: application/json ### List timeline events for an issue -## List timeline events for an issue GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/timeline?perPage={{perPage}}&page={{page}} Accept: application/json ### List user account issues assigned to the authenticated user -## List user account issues assigned to the authenticated user GET https://api.github.com/user/issues?filter={{filter}}&state={{state}}&labels={{labels}}&sort={{sort}}&direction={{direction}}&since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List organization issues assigned to the authenticated user -## List organization issues assigned to the authenticated user GET https://api.github.com/orgs/{{org}}/issues?filter={{filter}}&state={{state}}&labels={{labels}}&sort={{sort}}&direction={{direction}}&since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repository issues -## List repository issues GET https://api.github.com/repos/{{owner}}/{{repo}}/issues?milestone={{milestone}}&state={{state}}&assignee={{assignee}}&creator={{creator}}&mentioned={{mentioned}}&labels={{labels}}&sort={{sort}}&direction={{direction}}&since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List labels for issues in a milestone -## List labels for issues in a milestone GET https://api.github.com/repos/{{owner}}/{{repo}}/milestones/{{milestone_number}}/labels?perPage={{perPage}}&page={{page}} Accept: application/json ### List labels for a repository -## List labels for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/labels?perPage={{perPage}}&page={{page}} Accept: application/json ### List labels for an issue -## List labels for an issue GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels?perPage={{perPage}}&page={{page}} Accept: application/json ### List milestones -## List milestones GET https://api.github.com/repos/{{owner}}/{{repo}}/milestones?state={{state}}&sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json @@ -200,7 +176,6 @@ Accept: application/json ### Remove all labels from an issue -## Remove all labels from an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels Accept: application/json @@ -215,7 +190,6 @@ Accept: application/json ### Remove a label from an issue -## Remove a label from an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels/{{name}} Accept: application/json @@ -230,7 +204,6 @@ Accept: application/json ### Unlock an issue -## Unlock an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/lock Accept: application/json @@ -282,4 +255,3 @@ Accept: application/json "description" : "Tracking milestone for version 1.0", "due_on" : "2012-10-09T23:39:01Z" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/LicensesApi.http b/samples/client/github/jetbrains/http/client/Apis/LicensesApi.http index 8e2b7d9fed39..904aca57aeb5 100644 --- a/samples/client/github/jetbrains/http/client/Apis/LicensesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/LicensesApi.http @@ -1,16 +1,13 @@ ## LicensesApi ### Get a license -## Get a license GET https://api.github.com/licenses/{{license}} Accept: application/json ### Get all commonly used licenses -## Get all commonly used licenses GET https://api.github.com/licenses?featured={{featured}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Get the license for a repository -## Get the license for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/license?ref={{ref}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http b/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http index fe54c2fde0ab..0804e052da76 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http @@ -29,4 +29,3 @@ Accept: text/html { "text" : "Hello **world**" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/MetaApi.http b/samples/client/github/jetbrains/http/client/Apis/MetaApi.http index f4dcdf553bd8..5b94130bc591 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MetaApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MetaApi.http @@ -1,26 +1,21 @@ ## MetaApi ### Get GitHub meta information -## Get GitHub meta information GET https://api.github.com/meta Accept: application/json ### Get all API versions -## Get all API versions GET https://api.github.com/versions Accept: application/json ### Get Octocat -## Get Octocat GET https://api.github.com/octocat?s={{s}} Accept: application/octocat-stream ### Get the Zen of GitHub -## Get the Zen of GitHub GET https://api.github.com/zen Accept: application/json ### GitHub API Root -## GitHub API Root GET https://api.github.com/ Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http b/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http index 04c15eb34d4b..5bc824ff972b 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http @@ -1,72 +1,58 @@ ## MigrationsApi ### Cancel an import -## Cancel an import DELETE https://api.github.com/repos/{{owner}}/{{repo}}/import Accept: application/json ### Delete a user migration archive -## Delete a user migration archive DELETE https://api.github.com/user/migrations/{{migration_id}}/archive Accept: application/json ### Delete an organization migration archive -## Delete an organization migration archive DELETE https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}/archive Accept: application/json ### Download an organization migration archive -## Download an organization migration archive GET https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}/archive Accept: application/json ### Download a user migration archive -## Download a user migration archive GET https://api.github.com/user/migrations/{{migration_id}}/archive Accept: application/json ### Get commit authors -## Get commit authors GET https://api.github.com/repos/{{owner}}/{{repo}}/import/authors?since={{since}} Accept: application/json ### Get an import status -## Get an import status GET https://api.github.com/repos/{{owner}}/{{repo}}/import Accept: application/json ### Get large files -## Get large files GET https://api.github.com/repos/{{owner}}/{{repo}}/import/large_files Accept: application/json ### Get a user migration status -## Get a user migration status GET https://api.github.com/user/migrations/{{migration_id}}?exclude={{exclude}} Accept: application/json ### Get an organization migration status -## Get an organization migration status GET https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}?exclude={{exclude}} Accept: application/json ### List user migrations -## List user migrations GET https://api.github.com/user/migrations?perPage={{perPage}}&page={{page}} Accept: application/json ### List organization migrations -## List organization migrations GET https://api.github.com/orgs/{{org}}/migrations?perPage={{perPage}}&page={{page}}&exclude={{exclude}} Accept: application/json ### List repositories for a user migration -## List repositories for a user migration GET https://api.github.com/user/migrations/{{migration_id}}/repositories?perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories in an organization migration -## List repositories in an organization migration GET https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}/repositories?perPage={{perPage}}&page={{page}} Accept: application/json @@ -127,12 +113,10 @@ Accept: application/json ### Unlock a user repository -## Unlock a user repository DELETE https://api.github.com/user/migrations/{{migration_id}}/repos/{{repo_name}}/lock Accept: application/json ### Unlock an organization repository -## Unlock an organization repository DELETE https://api.github.com/orgs/{{org}}/migrations/{{migration_id}}/repos/{{repo_name}}/lock Accept: application/json @@ -158,4 +142,3 @@ Accept: application/json "tfvc_project" : "project1", "human_name" : "project1 (tfs)" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/OidcApi.http b/samples/client/github/jetbrains/http/client/Apis/OidcApi.http index 6a09833a6ac5..60c0200ac400 100644 --- a/samples/client/github/jetbrains/http/client/Apis/OidcApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/OidcApi.http @@ -1,7 +1,6 @@ ## OidcApi ### Get the customization template for an OIDC subject claim for an organization -## Get the customization template for an OIDC subject claim for an organization GET https://api.github.com/orgs/{{org}}/actions/oidc/customization/sub Accept: application/json @@ -13,4 +12,3 @@ Accept: application/json { "include_claim_keys" : [ "repo", "context" ] } - diff --git a/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http b/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http index 049f1b5737bf..dbc61eedb567 100644 --- a/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http @@ -1,38 +1,30 @@ ## OrgsApi ### Add a security manager team -## Add a security manager team PUT https://api.github.com/orgs/{{org}}/security-managers/teams/{{team_slug}} ### Assign an organization role to a team -## Assign an organization role to a team PUT https://api.github.com/orgs/{{org}}/organization-roles/teams/{{team_slug}}/{{role_id}} ### Assign an organization role to a user -## Assign an organization role to a user PUT https://api.github.com/orgs/{{org}}/organization-roles/users/{{username}}/{{role_id}} ### Block a user from an organization -## Block a user from an organization PUT https://api.github.com/orgs/{{org}}/blocks/{{username}} Accept: application/json ### Cancel an organization invitation -## Cancel an organization invitation DELETE https://api.github.com/orgs/{{org}}/invitations/{{invitation_id}} Accept: application/json ### Check if a user is blocked by an organization -## Check if a user is blocked by an organization GET https://api.github.com/orgs/{{org}}/blocks/{{username}} Accept: application/json ### Check organization membership for a user -## Check organization membership for a user GET https://api.github.com/orgs/{{org}}/members/{{username}} ### Check public organization membership for a user -## Check public organization membership for a user GET https://api.github.com/orgs/{{org}}/public_members/{{username}} ### Convert an organization member to outside collaborator @@ -146,21 +138,17 @@ Accept: application/json ### Delete an organization -## Delete an organization DELETE https://api.github.com/orgs/{{org}} Accept: application/json ### Delete a custom organization role. -## Delete a custom organization role. DELETE https://api.github.com/orgs/{{org}}/organization-roles/{{role_id}} ### Delete an organization webhook -## Delete an organization webhook DELETE https://api.github.com/orgs/{{org}}/hooks/{{hook_id}} Accept: application/json ### Enable or disable a security feature for an organization -## Enable or disable a security feature for an organization POST https://api.github.com/orgs/{{org}}/{{security_product}}/{{enablement}} Content-Type: application/json @@ -170,169 +158,136 @@ Content-Type: application/json ### Get an organization -## Get an organization GET https://api.github.com/orgs/{{org}} Accept: application/json ### Get all custom properties for an organization -## Get all custom properties for an organization GET https://api.github.com/orgs/{{org}}/properties/schema Accept: application/json ### Get a custom property for an organization -## Get a custom property for an organization GET https://api.github.com/orgs/{{org}}/properties/schema/{{custom_property_name}} Accept: application/json ### Get an organization membership for the authenticated user -## Get an organization membership for the authenticated user GET https://api.github.com/user/memberships/orgs/{{org}} Accept: application/json ### Get organization membership for a user -## Get organization membership for a user GET https://api.github.com/orgs/{{org}}/memberships/{{username}} Accept: application/json ### Get an organization role -## Get an organization role GET https://api.github.com/orgs/{{org}}/organization-roles/{{role_id}} Accept: application/json ### Get an organization webhook -## Get an organization webhook GET https://api.github.com/orgs/{{org}}/hooks/{{hook_id}} Accept: application/json ### Get a webhook configuration for an organization -## Get a webhook configuration for an organization GET https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/config Accept: application/json ### Get a webhook delivery for an organization webhook -## Get a webhook delivery for an organization webhook GET https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/deliveries/{{delivery_id}} Accept: application/json Accept: application/scim+json ### List organizations -## List organizations GET https://api.github.com/organizations?since={{since}}&perPage={{perPage}} Accept: application/json ### List app installations for an organization -## List app installations for an organization GET https://api.github.com/orgs/{{org}}/installations?perPage={{perPage}}&page={{page}} Accept: application/json ### List users blocked by an organization -## List users blocked by an organization GET https://api.github.com/orgs/{{org}}/blocks?perPage={{perPage}}&page={{page}} Accept: application/json ### List custom property values for organization repositories -## List custom property values for organization repositories GET https://api.github.com/orgs/{{org}}/properties/values?perPage={{perPage}}&page={{page}}&repositoryQuery={{repositoryQuery}} Accept: application/json ### List failed organization invitations -## List failed organization invitations GET https://api.github.com/orgs/{{org}}/failed_invitations?perPage={{perPage}}&page={{page}} Accept: application/json ### List organizations for the authenticated user -## List organizations for the authenticated user GET https://api.github.com/user/orgs?perPage={{perPage}}&page={{page}} Accept: application/json ### List organizations for a user -## List organizations for a user GET https://api.github.com/users/{{username}}/orgs?perPage={{perPage}}&page={{page}} Accept: application/json ### List organization invitation teams -## List organization invitation teams GET https://api.github.com/orgs/{{org}}/invitations/{{invitation_id}}/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List organization members -## List organization members GET https://api.github.com/orgs/{{org}}/members?filter={{filter}}&role={{role}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List organization memberships for the authenticated user -## List organization memberships for the authenticated user GET https://api.github.com/user/memberships/orgs?state={{state}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List teams that are assigned to an organization role -## List teams that are assigned to an organization role GET https://api.github.com/orgs/{{org}}/organization-roles/{{role_id}}/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List users that are assigned to an organization role -## List users that are assigned to an organization role GET https://api.github.com/orgs/{{org}}/organization-roles/{{role_id}}/users?perPage={{perPage}}&page={{page}} Accept: application/json ### Get all organization roles for an organization -## Get all organization roles for an organization GET https://api.github.com/orgs/{{org}}/organization-roles Accept: application/json ### List organization fine-grained permissions for an organization -## List organization fine-grained permissions for an organization GET https://api.github.com/orgs/{{org}}/organization-fine-grained-permissions Accept: application/json ### List outside collaborators for an organization -## List outside collaborators for an organization GET https://api.github.com/orgs/{{org}}/outside_collaborators?filter={{filter}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories a fine-grained personal access token has access to -## List repositories a fine-grained personal access token has access to GET https://api.github.com/orgs/{{org}}/personal-access-tokens/{{pat_id}}/repositories?perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories requested to be accessed by a fine-grained personal access token -## List repositories requested to be accessed by a fine-grained personal access token GET https://api.github.com/orgs/{{org}}/personal-access-token-requests/{{pat_request_id}}/repositories?perPage={{perPage}}&page={{page}} Accept: application/json ### List requests to access organization resources with fine-grained personal access tokens -## List requests to access organization resources with fine-grained personal access tokens GET https://api.github.com/orgs/{{org}}/personal-access-token-requests?perPage={{perPage}}&page={{page}}&sort={{sort}}&direction={{direction}}&owner={{owner}}&repository={{repository}}&permission={{permission}}&lastUsedBefore={{lastUsedBefore}}&lastUsedAfter={{lastUsedAfter}} Accept: application/json ### List fine-grained personal access tokens with access to organization resources -## List fine-grained personal access tokens with access to organization resources GET https://api.github.com/orgs/{{org}}/personal-access-tokens?perPage={{perPage}}&page={{page}}&sort={{sort}}&direction={{direction}}&owner={{owner}}&repository={{repository}}&permission={{permission}}&lastUsedBefore={{lastUsedBefore}}&lastUsedAfter={{lastUsedAfter}} Accept: application/json ### List pending organization invitations -## List pending organization invitations GET https://api.github.com/orgs/{{org}}/invitations?perPage={{perPage}}&page={{page}}&role={{role}}&invitationSource={{invitationSource}} Accept: application/json ### List public organization members -## List public organization members GET https://api.github.com/orgs/{{org}}/public_members?perPage={{perPage}}&page={{page}} Accept: application/json ### List security manager teams -## List security manager teams GET https://api.github.com/orgs/{{org}}/security-managers Accept: application/json ### List deliveries for an organization webhook -## List deliveries for an organization webhook GET https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/deliveries?perPage={{perPage}}&cursor={{cursor}}&redelivery={{redelivery}} Accept: application/json Accept: application/scim+json ### List organization webhooks -## List organization webhooks GET https://api.github.com/orgs/{{org}}/hooks?perPage={{perPage}}&page={{page}} Accept: application/json @@ -347,42 +302,34 @@ Accept: application/json ### Ping an organization webhook -## Ping an organization webhook POST https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/pings Accept: application/json ### Redeliver a delivery for an organization webhook -## Redeliver a delivery for an organization webhook POST https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/deliveries/{{delivery_id}}/attempts Accept: application/json Accept: application/scim+json ### Remove a custom property for an organization -## Remove a custom property for an organization DELETE https://api.github.com/orgs/{{org}}/properties/schema/{{custom_property_name}} Accept: application/json ### Remove an organization member -## Remove an organization member DELETE https://api.github.com/orgs/{{org}}/members/{{username}} Accept: application/json ### Remove organization membership for a user -## Remove organization membership for a user DELETE https://api.github.com/orgs/{{org}}/memberships/{{username}} Accept: application/json ### Remove outside collaborator from an organization -## Remove outside collaborator from an organization DELETE https://api.github.com/orgs/{{org}}/outside_collaborators/{{username}} Accept: application/json ### Remove public organization membership for the authenticated user -## Remove public organization membership for the authenticated user DELETE https://api.github.com/orgs/{{org}}/public_members/{{username}} ### Remove a security manager team -## Remove a security manager team DELETE https://api.github.com/orgs/{{org}}/security-managers/teams/{{team_slug}} ### Review a request to access organization resources with a fine-grained personal access token @@ -411,19 +358,15 @@ Accept: application/json ### Remove all organization roles for a team -## Remove all organization roles for a team DELETE https://api.github.com/orgs/{{org}}/organization-roles/teams/{{team_slug}} ### Remove all organization roles for a user -## Remove all organization roles for a user DELETE https://api.github.com/orgs/{{org}}/organization-roles/users/{{username}} ### Remove an organization role from a team -## Remove an organization role from a team DELETE https://api.github.com/orgs/{{org}}/organization-roles/teams/{{team_slug}}/{{role_id}} ### Remove an organization role from a user -## Remove an organization role from a user DELETE https://api.github.com/orgs/{{org}}/organization-roles/users/{{username}}/{{role_id}} ### Set organization membership for a user @@ -438,12 +381,10 @@ Accept: application/json ### Set public organization membership for the authenticated user -## Set public organization membership for the authenticated user PUT https://api.github.com/orgs/{{org}}/public_members/{{username}} Accept: application/json ### Unblock a user from an organization -## Unblock a user from an organization DELETE https://api.github.com/orgs/{{org}}/blocks/{{username}} ### Update an organization @@ -521,4 +462,3 @@ Accept: application/json "insecure_ssl" : "0", "secret" : "********" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/PackagesApi.http b/samples/client/github/jetbrains/http/client/Apis/PackagesApi.http index dc12017e5014..baec062dd032 100644 --- a/samples/client/github/jetbrains/http/client/Apis/PackagesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/PackagesApi.http @@ -1,136 +1,109 @@ ## PackagesApi ### Delete a package for the authenticated user -## Delete a package for the authenticated user DELETE https://api.github.com/user/packages/{{package_type}}/{{package_name}} Accept: application/json ### Delete a package for an organization -## Delete a package for an organization DELETE https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}} Accept: application/json ### Delete a package for a user -## Delete a package for a user DELETE https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}} Accept: application/json ### Delete a package version for the authenticated user -## Delete a package version for the authenticated user DELETE https://api.github.com/user/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}} Accept: application/json ### Delete package version for an organization -## Delete package version for an organization DELETE https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}} Accept: application/json ### Delete package version for a user -## Delete package version for a user DELETE https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}} Accept: application/json ### List package versions for a package owned by the authenticated user -## List package versions for a package owned by the authenticated user GET https://api.github.com/user/packages/{{package_type}}/{{package_name}}/versions?page={{page}}&perPage={{perPage}}&state={{state}} Accept: application/json ### List package versions for a package owned by an organization -## List package versions for a package owned by an organization GET https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}}/versions?page={{page}}&perPage={{perPage}}&state={{state}} Accept: application/json ### List package versions for a package owned by a user -## List package versions for a package owned by a user GET https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}}/versions Accept: application/json ### Get a package for the authenticated user -## Get a package for the authenticated user GET https://api.github.com/user/packages/{{package_type}}/{{package_name}} Accept: application/json ### Get a package for an organization -## Get a package for an organization GET https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}} Accept: application/json ### Get a package for a user -## Get a package for a user GET https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}} Accept: application/json ### Get a package version for the authenticated user -## Get a package version for the authenticated user GET https://api.github.com/user/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}} Accept: application/json ### Get a package version for an organization -## Get a package version for an organization GET https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}} Accept: application/json ### Get a package version for a user -## Get a package version for a user GET https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}} Accept: application/json ### Get list of conflicting packages during Docker migration for authenticated-user -## Get list of conflicting packages during Docker migration for authenticated-user GET https://api.github.com/user/docker/conflicts Accept: application/json ### Get list of conflicting packages during Docker migration for organization -## Get list of conflicting packages during Docker migration for organization GET https://api.github.com/orgs/{{org}}/docker/conflicts Accept: application/json ### Get list of conflicting packages during Docker migration for user -## Get list of conflicting packages during Docker migration for user GET https://api.github.com/users/{{username}}/docker/conflicts Accept: application/json ### List packages for the authenticated user's namespace -## List packages for the authenticated user's namespace GET https://api.github.com/user/packages?packageType={{packageType}}&visibility={{visibility}}&page={{page}}&perPage={{perPage}} Accept: application/json ### List packages for an organization -## List packages for an organization GET https://api.github.com/orgs/{{org}}/packages?packageType={{packageType}}&visibility={{visibility}}&page={{page}}&perPage={{perPage}} Accept: application/json ### List packages for a user -## List packages for a user GET https://api.github.com/users/{{username}}/packages?packageType={{packageType}}&visibility={{visibility}}&page={{page}}&perPage={{perPage}} Accept: application/json ### Restore a package for the authenticated user -## Restore a package for the authenticated user POST https://api.github.com/user/packages/{{package_type}}/{{package_name}}/restore?token={{token}} Accept: application/json ### Restore a package for an organization -## Restore a package for an organization POST https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}}/restore?token={{token}} Accept: application/json ### Restore a package for a user -## Restore a package for a user POST https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}}/restore?token={{token}} Accept: application/json ### Restore a package version for the authenticated user -## Restore a package version for the authenticated user POST https://api.github.com/user/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}}/restore Accept: application/json ### Restore package version for an organization -## Restore package version for an organization POST https://api.github.com/orgs/{{org}}/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}}/restore Accept: application/json ### Restore package version for a user -## Restore package version for a user POST https://api.github.com/users/{{username}}/packages/{{package_type}}/{{package_name}}/versions/{{package_version_id}}/restore Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http b/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http index 345fd67c815a..e292eba33e7d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http @@ -67,67 +67,54 @@ Accept: application/json ### Delete a project -## Delete a project DELETE https://api.github.com/projects/{{project_id}} Accept: application/json ### Delete a project card -## Delete a project card DELETE https://api.github.com/projects/columns/cards/{{card_id}} Accept: application/json ### Delete a project column -## Delete a project column DELETE https://api.github.com/projects/columns/{{column_id}} Accept: application/json ### Get a project -## Get a project GET https://api.github.com/projects/{{project_id}} Accept: application/json ### Get a project card -## Get a project card GET https://api.github.com/projects/columns/cards/{{card_id}} Accept: application/json ### Get a project column -## Get a project column GET https://api.github.com/projects/columns/{{column_id}} Accept: application/json ### Get project permission for a user -## Get project permission for a user GET https://api.github.com/projects/{{project_id}}/collaborators/{{username}}/permission Accept: application/json ### List project cards -## List project cards GET https://api.github.com/projects/columns/{{column_id}}/cards?archivedState={{archivedState}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List project collaborators -## List project collaborators GET https://api.github.com/projects/{{project_id}}/collaborators?affiliation={{affiliation}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List project columns -## List project columns GET https://api.github.com/projects/{{project_id}}/columns?perPage={{perPage}}&page={{page}} Accept: application/json ### List organization projects -## List organization projects GET https://api.github.com/orgs/{{org}}/projects?state={{state}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repository projects -## List repository projects GET https://api.github.com/repos/{{owner}}/{{repo}}/projects?state={{state}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List user projects -## List user projects GET https://api.github.com/users/{{username}}/projects?state={{state}}&perPage={{perPage}}&page={{page}} Accept: application/json @@ -155,7 +142,6 @@ Accept: application/json ### Remove user as a collaborator -## Remove user as a collaborator DELETE https://api.github.com/projects/{{project_id}}/collaborators/{{username}} Accept: application/json @@ -192,4 +178,3 @@ Accept: application/json { "name" : "To Do" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/PullsApi.http b/samples/client/github/jetbrains/http/client/Apis/PullsApi.http index 9ab2969c2a62..771f91e2c4cc 100644 --- a/samples/client/github/jetbrains/http/client/Apis/PullsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/PullsApi.http @@ -1,7 +1,6 @@ ## PullsApi ### Check if a pull request has been merged -## Check if a pull request has been merged GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/merge ### Create a pull request @@ -62,12 +61,10 @@ Accept: application/json ### Delete a pending review for a pull request -## Delete a pending review for a pull request DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}} Accept: application/json ### Delete a review comment for a pull request -## Delete a review comment for a pull request DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}} Accept: application/json @@ -83,57 +80,46 @@ Accept: application/json ### Get a pull request -## Get a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}} Accept: application/json ### Get a review for a pull request -## Get a review for a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}} Accept: application/json ### Get a review comment for a pull request -## Get a review comment for a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}} Accept: application/json ### List pull requests -## List pull requests GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls?state={{state}}&head={{head}}&base={{base}}&sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List comments for a pull request review -## List comments for a pull request review GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}}/comments?perPage={{perPage}}&page={{page}} Accept: application/json ### List commits on a pull request -## List commits on a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/commits?perPage={{perPage}}&page={{page}} Accept: application/json ### List pull requests files -## List pull requests files GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/files?perPage={{perPage}}&page={{page}} Accept: application/json ### Get all requested reviewers for a pull request -## Get all requested reviewers for a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/requested_reviewers Accept: application/json ### List review comments on a pull request -## List review comments on a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/comments?sort={{sort}}&direction={{direction}}&since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List review comments in a repository -## List review comments in a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments?sort={{sort}}&direction={{direction}}&since={{since}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reviews for a pull request -## List reviews for a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews?perPage={{perPage}}&page={{page}} Accept: application/json @@ -222,4 +208,3 @@ Accept: application/json { "body" : "I like this too!" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/RateLimitApi.http b/samples/client/github/jetbrains/http/client/Apis/RateLimitApi.http index d72d91ee94f7..1ee1b2dca747 100644 --- a/samples/client/github/jetbrains/http/client/Apis/RateLimitApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/RateLimitApi.http @@ -1,6 +1,5 @@ ## RateLimitApi ### Get rate limit status for the authenticated user -## Get rate limit status for the authenticated user GET https://api.github.com/rate_limit Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http b/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http index 4e2f0b51f171..ee8988b6f6e5 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http @@ -91,74 +91,58 @@ Accept: application/json ### Delete a commit comment reaction -## Delete a commit comment reaction DELETE https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}}/reactions/{{reaction_id}} ### Delete an issue reaction -## Delete an issue reaction DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/reactions/{{reaction_id}} ### Delete an issue comment reaction -## Delete an issue comment reaction DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}}/reactions/{{reaction_id}} ### Delete a pull request comment reaction -## Delete a pull request comment reaction DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}}/reactions/{{reaction_id}} ### Delete a release reaction -## Delete a release reaction DELETE https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/reactions/{{reaction_id}} ### Delete team discussion reaction -## Delete team discussion reaction DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/reactions/{{reaction_id}} ### Delete team discussion comment reaction -## Delete team discussion comment reaction DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions/{{reaction_id}} ### List reactions for a commit comment -## List reactions for a commit comment GET https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for an issue -## List reactions for an issue GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for an issue comment -## List reactions for an issue comment GET https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for a pull request review comment -## List reactions for a pull request review comment GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for a release -## List reactions for a release GET https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for a team discussion comment -## List reactions for a team discussion comment GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for a team discussion comment (Legacy) -## List reactions for a team discussion comment (Legacy) GET https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for a team discussion -## List reactions for a team discussion GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List reactions for a team discussion (Legacy) -## List reactions for a team discussion (Legacy) GET https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/reactions?content={{content}}&perPage={{perPage}}&page={{page}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ReposApi.http b/samples/client/github/jetbrains/http/client/Apis/ReposApi.http index eb4e3c2819d3..b716053bf20c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ReposApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ReposApi.http @@ -1,7 +1,6 @@ ## ReposApi ### Accept a repository invitation -## Accept a repository invitation PATCH https://api.github.com/user/repository_invitations/{{invitation_id}} Accept: application/json @@ -60,30 +59,24 @@ Accept: application/json ### Cancel a GitHub Pages deployment -## Cancel a GitHub Pages deployment POST https://api.github.com/repos/{{owner}}/{{repo}}/pages/deployments/{{pages_deployment_id}}/cancel Accept: application/json ### Check if automated security fixes are enabled for a repository -## Check if automated security fixes are enabled for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/automated-security-fixes Accept: application/json ### Check if a user is a repository collaborator -## Check if a user is a repository collaborator GET https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username}} ### Check if vulnerability alerts are enabled for a repository -## Check if vulnerability alerts are enabled for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/vulnerability-alerts ### List CODEOWNERS errors -## List CODEOWNERS errors GET https://api.github.com/repos/{{owner}}/{{repo}}/codeowners/errors?ref={{ref}} Accept: application/json ### Compare two commits -## Compare two commits GET https://api.github.com/repos/{{owner}}/{{repo}}/compare/{{basehead}}?page={{page}}&perPage={{perPage}} Accept: application/json @@ -113,7 +106,6 @@ Accept: application/json ### Create commit signature protection -## Create commit signature protection POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_signatures Accept: application/json @@ -507,59 +499,47 @@ Accept: application/json ### Decline a repository invitation -## Decline a repository invitation DELETE https://api.github.com/user/repository_invitations/{{invitation_id}} Accept: application/json ### Delete a repository -## Delete a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}} Accept: application/json ### Delete access restrictions -## Delete access restrictions DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions ### Delete admin branch protection -## Delete admin branch protection DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/enforce_admins Accept: application/json ### Delete an environment -## Delete an environment DELETE https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}} ### Delete an autolink reference from a repository -## Delete an autolink reference from a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/autolinks/{{autolink_id}} Accept: application/json ### Delete branch protection -## Delete branch protection DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection Accept: application/json ### Delete a commit comment -## Delete a commit comment DELETE https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}} Accept: application/json ### Delete commit signature protection -## Delete commit signature protection DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_signatures Accept: application/json ### Delete a deploy key -## Delete a deploy key DELETE https://api.github.com/repos/{{owner}}/{{repo}}/keys/{{key_id}} ### Delete a deployment -## Delete a deployment DELETE https://api.github.com/repos/{{owner}}/{{repo}}/deployments/{{deployment_id}} Accept: application/json ### Delete a deployment branch policy -## Delete a deployment branch policy DELETE https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies/{{branch_policy_id}} ### Delete a file @@ -578,85 +558,67 @@ Accept: application/json ### Delete a repository invitation -## Delete a repository invitation DELETE https://api.github.com/repos/{{owner}}/{{repo}}/invitations/{{invitation_id}} ### Delete an organization repository ruleset -## Delete an organization repository ruleset DELETE https://api.github.com/orgs/{{org}}/rulesets/{{ruleset_id}} Accept: application/json ### Delete a GitHub Pages site -## Delete a GitHub Pages site DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pages Accept: application/json ### Delete pull request review protection -## Delete pull request review protection DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_pull_request_reviews Accept: application/json ### Delete a release -## Delete a release DELETE https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}} ### Delete a release asset -## Delete a release asset DELETE https://api.github.com/repos/{{owner}}/{{repo}}/releases/assets/{{asset_id}} ### Delete a repository ruleset -## Delete a repository ruleset DELETE https://api.github.com/repos/{{owner}}/{{repo}}/rulesets/{{ruleset_id}} Accept: application/json ### Delete a tag protection state for a repository -## Delete a tag protection state for a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/tags/protection/{{tag_protection_id}} Accept: application/json ### Delete a repository webhook -## Delete a repository webhook DELETE https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}} Accept: application/json ### Disable automated security fixes -## Disable automated security fixes DELETE https://api.github.com/repos/{{owner}}/{{repo}}/automated-security-fixes ### Disable a custom protection rule for an environment -## Disable a custom protection rule for an environment DELETE https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment_protection_rules/{{protection_rule_id}} ### Disable private vulnerability reporting for a repository -## Disable private vulnerability reporting for a repository DELETE https://api.github.com/repos/{{owner}}/{{repo}}/private-vulnerability-reporting Accept: application/json Accept: application/scim+json ### Disable vulnerability alerts -## Disable vulnerability alerts DELETE https://api.github.com/repos/{{owner}}/{{repo}}/vulnerability-alerts ### Download a repository archive (tar) -## Download a repository archive (tar) GET https://api.github.com/repos/{{owner}}/{{repo}}/tarball/{{ref}} ### Download a repository archive (zip) -## Download a repository archive (zip) GET https://api.github.com/repos/{{owner}}/{{repo}}/zipball/{{ref}} ### Enable automated security fixes -## Enable automated security fixes PUT https://api.github.com/repos/{{owner}}/{{repo}}/automated-security-fixes ### Enable private vulnerability reporting for a repository -## Enable private vulnerability reporting for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/private-vulnerability-reporting Accept: application/json Accept: application/scim+json ### Enable vulnerability alerts -## Enable vulnerability alerts PUT https://api.github.com/repos/{{owner}}/{{repo}}/vulnerability-alerts ### Generate release notes content for a release @@ -673,472 +635,379 @@ Accept: application/json ### Get a repository -## Get a repository GET https://api.github.com/repos/{{owner}}/{{repo}} Accept: application/json ### Get access restrictions -## Get access restrictions GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions Accept: application/json ### Get admin branch protection -## Get admin branch protection GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/enforce_admins Accept: application/json ### Get all deployment protection rules for an environment -## Get all deployment protection rules for an environment GET https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment_protection_rules Accept: application/json ### List environments -## List environments GET https://api.github.com/repos/{{owner}}/{{repo}}/environments?perPage={{perPage}}&page={{page}} Accept: application/json ### Get all status check contexts -## Get all status check contexts GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks/contexts Accept: application/json ### Get all repository topics -## Get all repository topics GET https://api.github.com/repos/{{owner}}/{{repo}}/topics?page={{page}}&perPage={{perPage}} Accept: application/json ### Get apps with access to the protected branch -## Get apps with access to the protected branch GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/apps Accept: application/json ### Get an autolink reference of a repository -## Get an autolink reference of a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/autolinks/{{autolink_id}} Accept: application/json ### Get a branch -## Get a branch GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}} Accept: application/json ### Get branch protection -## Get branch protection GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection Accept: application/json ### Get rules for a branch -## Get rules for a branch GET https://api.github.com/repos/{{owner}}/{{repo}}/rules/branches/{{branch}}?perPage={{perPage}}&page={{page}} Accept: application/json ### Get repository clones -## Get repository clones GET https://api.github.com/repos/{{owner}}/{{repo}}/traffic/clones?per={{per}} Accept: application/json ### Get the weekly commit activity -## Get the weekly commit activity GET https://api.github.com/repos/{{owner}}/{{repo}}/stats/code_frequency Accept: application/json ### Get repository permissions for a user -## Get repository permissions for a user GET https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username}}/permission Accept: application/json ### Get the combined status for a specific reference -## Get the combined status for a specific reference GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{ref}}/status?perPage={{perPage}}&page={{page}} Accept: application/json ### Get a commit -## Get a commit GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{ref}}?page={{page}}&perPage={{perPage}} Accept: application/json ### Get the last year of commit activity -## Get the last year of commit activity GET https://api.github.com/repos/{{owner}}/{{repo}}/stats/commit_activity Accept: application/json ### Get a commit comment -## Get a commit comment GET https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}} Accept: application/json ### Get commit signature protection -## Get commit signature protection GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_signatures Accept: application/json ### Get community profile metrics -## Get community profile metrics GET https://api.github.com/repos/{{owner}}/{{repo}}/community/profile Accept: application/json ### Get repository content -## Get repository content GET https://api.github.com/repos/{{owner}}/{{repo}}/contents/{{path}}?ref={{ref}} Accept: application/vnd.github.object Accept: application/json ### Get all contributor commit activity -## Get all contributor commit activity GET https://api.github.com/repos/{{owner}}/{{repo}}/stats/contributors Accept: application/json ### Get a custom deployment protection rule -## Get a custom deployment protection rule GET https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment_protection_rules/{{protection_rule_id}} Accept: application/json ### Get all custom property values for a repository -## Get all custom property values for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/properties/values Accept: application/json ### Get a deploy key -## Get a deploy key GET https://api.github.com/repos/{{owner}}/{{repo}}/keys/{{key_id}} Accept: application/json ### Get a deployment -## Get a deployment GET https://api.github.com/repos/{{owner}}/{{repo}}/deployments/{{deployment_id}} Accept: application/json ### Get a deployment branch policy -## Get a deployment branch policy GET https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies/{{branch_policy_id}} Accept: application/json ### Get a deployment status -## Get a deployment status GET https://api.github.com/repos/{{owner}}/{{repo}}/deployments/{{deployment_id}}/statuses/{{status_id}} Accept: application/json ### Get an environment -## Get an environment GET https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}} Accept: application/json ### Get latest Pages build -## Get latest Pages build GET https://api.github.com/repos/{{owner}}/{{repo}}/pages/builds/latest Accept: application/json ### Get the latest release -## Get the latest release GET https://api.github.com/repos/{{owner}}/{{repo}}/releases/latest Accept: application/json ### Get an organization rule suite -## Get an organization rule suite GET https://api.github.com/orgs/{{org}}/rulesets/rule-suites/{{rule_suite_id}} Accept: application/json ### List organization rule suites -## List organization rule suites GET https://api.github.com/orgs/{{org}}/rulesets/rule-suites?repositoryName={{repositoryName}}&timePeriod={{timePeriod}}&actorName={{actorName}}&ruleSuiteResult={{ruleSuiteResult}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Get an organization repository ruleset -## Get an organization repository ruleset GET https://api.github.com/orgs/{{org}}/rulesets/{{ruleset_id}} Accept: application/json ### Get all organization repository rulesets -## Get all organization repository rulesets GET https://api.github.com/orgs/{{org}}/rulesets?perPage={{perPage}}&page={{page}} Accept: application/json ### Get a GitHub Pages site -## Get a GitHub Pages site GET https://api.github.com/repos/{{owner}}/{{repo}}/pages Accept: application/json ### Get GitHub Pages build -## Get GitHub Pages build GET https://api.github.com/repos/{{owner}}/{{repo}}/pages/builds/{{build_id}} Accept: application/json ### Get the status of a GitHub Pages deployment -## Get the status of a GitHub Pages deployment GET https://api.github.com/repos/{{owner}}/{{repo}}/pages/deployments/{{pages_deployment_id}} Accept: application/json ### Get a DNS health check for GitHub Pages -## Get a DNS health check for GitHub Pages GET https://api.github.com/repos/{{owner}}/{{repo}}/pages/health Accept: application/json ### Get the weekly commit count -## Get the weekly commit count GET https://api.github.com/repos/{{owner}}/{{repo}}/stats/participation Accept: application/json ### Get pull request review protection -## Get pull request review protection GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_pull_request_reviews Accept: application/json ### Get the hourly commit count for each day -## Get the hourly commit count for each day GET https://api.github.com/repos/{{owner}}/{{repo}}/stats/punch_card Accept: application/json ### Get a repository README -## Get a repository README GET https://api.github.com/repos/{{owner}}/{{repo}}/readme?ref={{ref}} Accept: application/json ### Get a repository README for a directory -## Get a repository README for a directory GET https://api.github.com/repos/{{owner}}/{{repo}}/readme/{{dir}}?ref={{ref}} Accept: application/json ### Get a release -## Get a release GET https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}} Accept: application/json ### Get a release asset -## Get a release asset GET https://api.github.com/repos/{{owner}}/{{repo}}/releases/assets/{{asset_id}} Accept: application/json ### Get a release by tag name -## Get a release by tag name GET https://api.github.com/repos/{{owner}}/{{repo}}/releases/tags/{{tag}} Accept: application/json ### Get a repository rule suite -## Get a repository rule suite GET https://api.github.com/repos/{{owner}}/{{repo}}/rulesets/rule-suites/{{rule_suite_id}} Accept: application/json ### List repository rule suites -## List repository rule suites GET https://api.github.com/repos/{{owner}}/{{repo}}/rulesets/rule-suites?ref={{ref}}&timePeriod={{timePeriod}}&actorName={{actorName}}&ruleSuiteResult={{ruleSuiteResult}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Get a repository ruleset -## Get a repository ruleset GET https://api.github.com/repos/{{owner}}/{{repo}}/rulesets/{{ruleset_id}}?includesParents={{includesParents}} Accept: application/json ### Get all repository rulesets -## Get all repository rulesets GET https://api.github.com/repos/{{owner}}/{{repo}}/rulesets?perPage={{perPage}}&page={{page}}&includesParents={{includesParents}} Accept: application/json ### Get status checks protection -## Get status checks protection GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks Accept: application/json ### Get teams with access to the protected branch -## Get teams with access to the protected branch GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/teams Accept: application/json ### Get top referral paths -## Get top referral paths GET https://api.github.com/repos/{{owner}}/{{repo}}/traffic/popular/paths Accept: application/json ### Get top referral sources -## Get top referral sources GET https://api.github.com/repos/{{owner}}/{{repo}}/traffic/popular/referrers Accept: application/json ### Get users with access to the protected branch -## Get users with access to the protected branch GET https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users Accept: application/json ### Get page views -## Get page views GET https://api.github.com/repos/{{owner}}/{{repo}}/traffic/views?per={{per}} Accept: application/json ### Get a repository webhook -## Get a repository webhook GET https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}} Accept: application/json ### Get a webhook configuration for a repository -## Get a webhook configuration for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/config Accept: application/json ### Get a delivery for a repository webhook -## Get a delivery for a repository webhook GET https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/deliveries/{{delivery_id}} Accept: application/json Accept: application/scim+json ### List repository activities -## List repository activities GET https://api.github.com/repos/{{owner}}/{{repo}}/activity?direction={{direction}}&perPage={{perPage}}&before={{before}}&after={{after}}&ref={{ref}}&actor={{actor}}&timePeriod={{timePeriod}}&activityType={{activityType}} Accept: application/json ### Get all autolinks of a repository -## Get all autolinks of a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/autolinks Accept: application/json ### List branches -## List branches GET https://api.github.com/repos/{{owner}}/{{repo}}/branches?protected={{protected}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List branches for HEAD commit -## List branches for HEAD commit GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{commit_sha}}/branches-where-head Accept: application/json ### List repository collaborators -## List repository collaborators GET https://api.github.com/repos/{{owner}}/{{repo}}/collaborators?affiliation={{affiliation}}&permission={{permission}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List commit comments -## List commit comments GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{commit_sha}}/comments?perPage={{perPage}}&page={{page}} Accept: application/json ### List commit comments for a repository -## List commit comments for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/comments?perPage={{perPage}}&page={{page}} Accept: application/json ### List commit statuses for a reference -## List commit statuses for a reference GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{ref}}/statuses?perPage={{perPage}}&page={{page}} Accept: application/json ### List commits -## List commits GET https://api.github.com/repos/{{owner}}/{{repo}}/commits?sha={{sha}}&path={{path}}&author={{author}}&committer={{committer}}&since={{since}}&until={{until}}&perPage={{perPage}}&page={{page}} Accept: application/json Accept: application/scim+json ### List repository contributors -## List repository contributors GET https://api.github.com/repos/{{owner}}/{{repo}}/contributors?anon={{anon}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List custom deployment rule integrations available for an environment -## List custom deployment rule integrations available for an environment GET https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment_protection_rules/apps?page={{page}}&perPage={{perPage}} Accept: application/json ### List deploy keys -## List deploy keys GET https://api.github.com/repos/{{owner}}/{{repo}}/keys?perPage={{perPage}}&page={{page}} Accept: application/json ### List deployment branch policies -## List deployment branch policies GET https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies?perPage={{perPage}}&page={{page}} Accept: application/json ### List deployment statuses -## List deployment statuses GET https://api.github.com/repos/{{owner}}/{{repo}}/deployments/{{deployment_id}}/statuses?perPage={{perPage}}&page={{page}} Accept: application/json ### List deployments -## List deployments GET https://api.github.com/repos/{{owner}}/{{repo}}/deployments?sha={{sha}}&ref={{ref}}&task={{task}}&environment={{environment}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories for the authenticated user -## List repositories for the authenticated user GET https://api.github.com/user/repos?visibility={{visibility}}&affiliation={{affiliation}}&type={{type}}&sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}}&since={{since}}&before={{before}} Accept: application/json ### List organization repositories -## List organization repositories GET https://api.github.com/orgs/{{org}}/repos?type={{type}}&sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List repositories for a user -## List repositories for a user GET https://api.github.com/users/{{username}}/repos?type={{type}}&sort={{sort}}&direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List forks -## List forks GET https://api.github.com/repos/{{owner}}/{{repo}}/forks?sort={{sort}}&perPage={{perPage}}&page={{page}} Accept: application/json Accept: application/scim+json ### List repository invitations -## List repository invitations GET https://api.github.com/repos/{{owner}}/{{repo}}/invitations?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository invitations for the authenticated user -## List repository invitations for the authenticated user GET https://api.github.com/user/repository_invitations?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository languages -## List repository languages GET https://api.github.com/repos/{{owner}}/{{repo}}/languages Accept: application/json ### List GitHub Pages builds -## List GitHub Pages builds GET https://api.github.com/repos/{{owner}}/{{repo}}/pages/builds?perPage={{perPage}}&page={{page}} Accept: application/json ### List public repositories -## List public repositories GET https://api.github.com/repositories?since={{since}} Accept: application/json ### List pull requests associated with a commit -## List pull requests associated with a commit GET https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{commit_sha}}/pulls?perPage={{perPage}}&page={{page}} Accept: application/json ### List release assets -## List release assets GET https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/assets?perPage={{perPage}}&page={{page}} Accept: application/json ### List releases -## List releases GET https://api.github.com/repos/{{owner}}/{{repo}}/releases?perPage={{perPage}}&page={{page}} Accept: application/json ### List tag protection states for a repository -## List tag protection states for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/tags/protection Accept: application/json ### List repository tags -## List repository tags GET https://api.github.com/repos/{{owner}}/{{repo}}/tags?perPage={{perPage}}&page={{page}} Accept: application/json ### List repository teams -## List repository teams GET https://api.github.com/repos/{{owner}}/{{repo}}/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List deliveries for a repository webhook -## List deliveries for a repository webhook GET https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/deliveries?perPage={{perPage}}&cursor={{cursor}}&redelivery={{redelivery}} Accept: application/json Accept: application/scim+json ### List repository webhooks -## List repository webhooks GET https://api.github.com/repos/{{owner}}/{{repo}}/hooks?perPage={{perPage}}&page={{page}} Accept: application/json @@ -1165,12 +1034,10 @@ Accept: application/json ### Ping a repository webhook -## Ping a repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/pings Accept: application/json ### Redeliver a delivery for a repository webhook -## Redeliver a delivery for a repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/deliveries/{{delivery_id}}/attempts Accept: application/json Accept: application/scim+json @@ -1186,7 +1053,6 @@ Accept: application/json ### Remove a repository collaborator -## Remove a repository collaborator DELETE https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username}} Accept: application/json @@ -1202,7 +1068,6 @@ Accept: application/json ### Remove status check protection -## Remove status check protection DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks ### Remove team access restrictions @@ -1248,12 +1113,10 @@ Accept: application/json ### Request a GitHub Pages build -## Request a GitHub Pages build POST https://api.github.com/repos/{{owner}}/{{repo}}/pages/builds Accept: application/json ### Set admin branch protection -## Set admin branch protection POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/enforce_admins Accept: application/json @@ -1301,7 +1164,6 @@ Accept: application/json ### Test the push repository webhook -## Test the push repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/tests Accept: application/json @@ -1568,10 +1430,6 @@ Accept: application/json ### Upload a release asset -## Upload a release asset POST https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/assets?name={{name}}&label={{label}} Content-Type: application/octet-stream Accept: application/json - - - diff --git a/samples/client/github/jetbrains/http/client/Apis/SearchApi.http b/samples/client/github/jetbrains/http/client/Apis/SearchApi.http index 64cda158bf66..867e38a84c97 100644 --- a/samples/client/github/jetbrains/http/client/Apis/SearchApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/SearchApi.http @@ -1,36 +1,29 @@ ## SearchApi ### Search code -## Search code GET https://api.github.com/search/code?q={{q}}&sort={{sort}}&order={{order}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Search commits -## Search commits GET https://api.github.com/search/commits?q={{q}}&sort={{sort}}&order={{order}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Search issues and pull requests -## Search issues and pull requests GET https://api.github.com/search/issues?q={{q}}&sort={{sort}}&order={{order}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Search labels -## Search labels GET https://api.github.com/search/labels?repositoryId={{repositoryId}}&q={{q}}&sort={{sort}}&order={{order}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Search repositories -## Search repositories GET https://api.github.com/search/repositories?q={{q}}&sort={{sort}}&order={{order}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Search topics -## Search topics GET https://api.github.com/search/topics?q={{q}}&perPage={{perPage}}&page={{page}} Accept: application/json ### Search users -## Search users GET https://api.github.com/search/users?q={{q}}&sort={{sort}}&order={{order}}&perPage={{perPage}}&page={{page}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http b/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http index 744ea772f8d0..c006a508b666 100644 --- a/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/SecretScanningApi.http @@ -1,27 +1,22 @@ ## SecretScanningApi ### Get a secret scanning alert -## Get a secret scanning alert GET https://api.github.com/repos/{{owner}}/{{repo}}/secret-scanning/alerts/{{alert_number}} Accept: application/json ### List secret scanning alerts for an enterprise -## List secret scanning alerts for an enterprise GET https://api.github.com/enterprises/{{enterprise}}/secret-scanning/alerts?state={{state}}&secretType={{secretType}}&resolution={{resolution}}&sort={{sort}}&direction={{direction}}&perPage={{perPage}}&before={{before}}&after={{after}}&validity={{validity}} Accept: application/json ### List secret scanning alerts for an organization -## List secret scanning alerts for an organization GET https://api.github.com/orgs/{{org}}/secret-scanning/alerts?state={{state}}&secretType={{secretType}}&resolution={{resolution}}&sort={{sort}}&direction={{direction}}&page={{page}}&perPage={{perPage}}&before={{before}}&after={{after}}&validity={{validity}} Accept: application/json ### List secret scanning alerts for a repository -## List secret scanning alerts for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/secret-scanning/alerts?state={{state}}&secretType={{secretType}}&resolution={{resolution}}&sort={{sort}}&direction={{direction}}&page={{page}}&perPage={{perPage}}&before={{before}}&after={{after}}&validity={{validity}} Accept: application/json ### List locations for a secret scanning alert -## List locations for a secret scanning alert GET https://api.github.com/repos/{{owner}}/{{repo}}/secret-scanning/alerts/{{alert_number}}/locations?page={{page}}&perPage={{perPage}} Accept: application/json @@ -34,4 +29,3 @@ Accept: application/json "state" : "resolved", "resolution" : "false_positive" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http b/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http index 2a2d0f99464c..42ccfe0f7b4d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http @@ -1,7 +1,6 @@ ## SecurityAdvisoriesApi ### Create a temporary private fork -## Create a temporary private fork POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}}/forks Accept: application/json Accept: application/scim+json @@ -103,34 +102,28 @@ Accept: application/json ### Request a CVE for a repository security advisory -## Request a CVE for a repository security advisory POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}}/cve Accept: application/json Accept: application/scim+json ### Get a global security advisory -## Get a global security advisory GET https://api.github.com/advisories/{{ghsa_id}} Accept: application/json ### Get a repository security advisory -## Get a repository security advisory GET https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} Accept: application/json ### List global security advisories -## List global security advisories GET https://api.github.com/advisories?ghsaId={{ghsaId}}&type={{type}}&cveId={{cveId}}&ecosystem={{ecosystem}}&severity={{severity}}&cwes={{cwes}}&isWithdrawn={{isWithdrawn}}&affects={{affects}}&published={{published}}&updated={{updated}}&modified={{modified}}&before={{before}}&after={{after}}&direction={{direction}}&perPage={{perPage}}&sort={{sort}} Accept: application/json ### List repository security advisories for an organization -## List repository security advisories for an organization GET https://api.github.com/orgs/{{org}}/security-advisories?direction={{direction}}&sort={{sort}}&before={{before}}&after={{after}}&perPage={{perPage}}&state={{state}} Accept: application/json Accept: application/scim+json ### List repository security advisories -## List repository security advisories GET https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories?direction={{direction}}&sort={{sort}}&before={{before}}&after={{after}}&perPage={{perPage}}&state={{state}} Accept: application/json Accept: application/scim+json @@ -186,4 +179,3 @@ Accept: application/json { "severity" : "low" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http b/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http index 21a156075d92..fcd6183fbb6d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http @@ -1,7 +1,6 @@ ## TeamsApi ### Add team member (Legacy) -## Add team member (Legacy) PUT https://api.github.com/teams/{{team_id}}/members/{{username}} Accept: application/json @@ -71,22 +70,18 @@ Accept: application/json ### Check team permissions for a project -## Check team permissions for a project GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/projects/{{project_id}} Accept: application/json ### Check team permissions for a project (Legacy) -## Check team permissions for a project (Legacy) GET https://api.github.com/teams/{{team_id}}/projects/{{project_id}} Accept: application/json ### Check team permissions for a repository -## Check team permissions for a repository GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/repos/{{owner}}/{{repo}} Accept: application/json ### Check team permissions for a repository (Legacy) -## Check team permissions for a repository (Legacy) GET https://api.github.com/teams/{{team_id}}/repos/{{owner}}/{{repo}} Accept: application/json @@ -147,181 +142,143 @@ Accept: application/json ### Delete a discussion comment -## Delete a discussion comment DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}} ### Delete a discussion comment (Legacy) -## Delete a discussion comment (Legacy) DELETE https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}} ### Delete a discussion -## Delete a discussion DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}} ### Delete a discussion (Legacy) -## Delete a discussion (Legacy) DELETE https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}} ### Delete a team -## Delete a team DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}} ### Delete a team (Legacy) -## Delete a team (Legacy) DELETE https://api.github.com/teams/{{team_id}} Accept: application/json ### Get a team by name -## Get a team by name GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}} Accept: application/json ### Get a discussion comment -## Get a discussion comment GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}} Accept: application/json ### Get a discussion comment (Legacy) -## Get a discussion comment (Legacy) GET https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}} Accept: application/json ### Get a discussion -## Get a discussion GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}} Accept: application/json ### Get a discussion (Legacy) -## Get a discussion (Legacy) GET https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}} Accept: application/json ### Get a team (Legacy) -## Get a team (Legacy) GET https://api.github.com/teams/{{team_id}} Accept: application/json ### Get team member (Legacy) -## Get team member (Legacy) GET https://api.github.com/teams/{{team_id}}/members/{{username}} ### Get team membership for a user -## Get team membership for a user GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/memberships/{{username}} Accept: application/json ### Get team membership for a user (Legacy) -## Get team membership for a user (Legacy) GET https://api.github.com/teams/{{team_id}}/memberships/{{username}} Accept: application/json ### List teams -## List teams GET https://api.github.com/orgs/{{org}}/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List child teams -## List child teams GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List child teams (Legacy) -## List child teams (Legacy) GET https://api.github.com/teams/{{team_id}}/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List discussion comments -## List discussion comments GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments?direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List discussion comments (Legacy) -## List discussion comments (Legacy) GET https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments?direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List discussions -## List discussions GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions?direction={{direction}}&perPage={{perPage}}&page={{page}}&pinned={{pinned}} Accept: application/json ### List discussions (Legacy) -## List discussions (Legacy) GET https://api.github.com/teams/{{team_id}}/discussions?direction={{direction}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List teams for the authenticated user -## List teams for the authenticated user GET https://api.github.com/user/teams?perPage={{perPage}}&page={{page}} Accept: application/json ### List team members -## List team members GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/members?role={{role}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List team members (Legacy) -## List team members (Legacy) GET https://api.github.com/teams/{{team_id}}/members?role={{role}}&perPage={{perPage}}&page={{page}} Accept: application/json ### List pending team invitations -## List pending team invitations GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/invitations?perPage={{perPage}}&page={{page}} Accept: application/json ### List pending team invitations (Legacy) -## List pending team invitations (Legacy) GET https://api.github.com/teams/{{team_id}}/invitations?perPage={{perPage}}&page={{page}} Accept: application/json ### List team projects -## List team projects GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/projects?perPage={{perPage}}&page={{page}} Accept: application/json ### List team projects (Legacy) -## List team projects (Legacy) GET https://api.github.com/teams/{{team_id}}/projects?perPage={{perPage}}&page={{page}} Accept: application/json ### List team repositories -## List team repositories GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/repos?perPage={{perPage}}&page={{page}} Accept: application/json ### List team repositories (Legacy) -## List team repositories (Legacy) GET https://api.github.com/teams/{{team_id}}/repos?perPage={{perPage}}&page={{page}} Accept: application/json ### Remove team member (Legacy) -## Remove team member (Legacy) DELETE https://api.github.com/teams/{{team_id}}/members/{{username}} ### Remove team membership for a user -## Remove team membership for a user DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/memberships/{{username}} ### Remove team membership for a user (Legacy) -## Remove team membership for a user (Legacy) DELETE https://api.github.com/teams/{{team_id}}/memberships/{{username}} ### Remove a project from a team -## Remove a project from a team DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/projects/{{project_id}} ### Remove a project from a team (Legacy) -## Remove a project from a team (Legacy) DELETE https://api.github.com/teams/{{team_id}}/projects/{{project_id}} Accept: application/json ### Remove a repository from a team -## Remove a repository from a team DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/repos/{{owner}}/{{repo}} ### Remove a repository from a team (Legacy) -## Remove a repository from a team (Legacy) DELETE https://api.github.com/teams/{{team_id}}/repos/{{owner}}/{{repo}} ### Update a discussion comment @@ -388,4 +345,3 @@ Accept: application/json "privacy" : "closed", "notification_setting" : "notifications_enabled" } - diff --git a/samples/client/github/jetbrains/http/client/Apis/UsersApi.http b/samples/client/github/jetbrains/http/client/Apis/UsersApi.http index 3ba4cbc648c0..3fcb3d530a5c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/UsersApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/UsersApi.http @@ -23,21 +23,17 @@ Accept: application/json ### Block a user -## Block a user PUT https://api.github.com/user/blocks/{{username}} Accept: application/json ### Check if a user is blocked by the authenticated user -## Check if a user is blocked by the authenticated user GET https://api.github.com/user/blocks/{{username}} Accept: application/json ### Check if a user follows another user -## Check if a user follows another user GET https://api.github.com/users/{{username}}/following/{{target_user}} ### Check if a person is followed by the authenticated user -## Check if a person is followed by the authenticated user GET https://api.github.com/user/following/{{username}} Accept: application/json @@ -86,12 +82,10 @@ Accept: application/json ### Delete a GPG key for the authenticated user -## Delete a GPG key for the authenticated user DELETE https://api.github.com/user/gpg_keys/{{gpg_key_id}} Accept: application/json ### Delete a public SSH key for the authenticated user -## Delete a public SSH key for the authenticated user DELETE https://api.github.com/user/keys/{{key_id}} Accept: application/json @@ -107,122 +101,98 @@ Accept: application/json ### Delete an SSH signing key for the authenticated user -## Delete an SSH signing key for the authenticated user DELETE https://api.github.com/user/ssh_signing_keys/{{ssh_signing_key_id}} Accept: application/json ### Follow a user -## Follow a user PUT https://api.github.com/user/following/{{username}} Accept: application/json ### Get the authenticated user -## Get the authenticated user GET https://api.github.com/user Accept: application/json ### Get a user -## Get a user GET https://api.github.com/users/{{username}} Accept: application/json ### Get contextual information for a user -## Get contextual information for a user GET https://api.github.com/users/{{username}}/hovercard?subjectType={{subjectType}}&subjectId={{subjectId}} Accept: application/json ### Get a GPG key for the authenticated user -## Get a GPG key for the authenticated user GET https://api.github.com/user/gpg_keys/{{gpg_key_id}} Accept: application/json ### Get a public SSH key for the authenticated user -## Get a public SSH key for the authenticated user GET https://api.github.com/user/keys/{{key_id}} Accept: application/json ### Get an SSH signing key for the authenticated user -## Get an SSH signing key for the authenticated user GET https://api.github.com/user/ssh_signing_keys/{{ssh_signing_key_id}} Accept: application/json ### List users -## List users GET https://api.github.com/users?since={{since}}&perPage={{perPage}} Accept: application/json ### List users blocked by the authenticated user -## List users blocked by the authenticated user GET https://api.github.com/user/blocks?perPage={{perPage}}&page={{page}} Accept: application/json ### List email addresses for the authenticated user -## List email addresses for the authenticated user GET https://api.github.com/user/emails?perPage={{perPage}}&page={{page}} Accept: application/json ### List the people the authenticated user follows -## List the people the authenticated user follows GET https://api.github.com/user/following?perPage={{perPage}}&page={{page}} Accept: application/json ### List followers of the authenticated user -## List followers of the authenticated user GET https://api.github.com/user/followers?perPage={{perPage}}&page={{page}} Accept: application/json ### List followers of a user -## List followers of a user GET https://api.github.com/users/{{username}}/followers?perPage={{perPage}}&page={{page}} Accept: application/json ### List the people a user follows -## List the people a user follows GET https://api.github.com/users/{{username}}/following?perPage={{perPage}}&page={{page}} Accept: application/json ### List GPG keys for the authenticated user -## List GPG keys for the authenticated user GET https://api.github.com/user/gpg_keys?perPage={{perPage}}&page={{page}} Accept: application/json ### List GPG keys for a user -## List GPG keys for a user GET https://api.github.com/users/{{username}}/gpg_keys?perPage={{perPage}}&page={{page}} Accept: application/json ### List public email addresses for the authenticated user -## List public email addresses for the authenticated user GET https://api.github.com/user/public_emails?perPage={{perPage}}&page={{page}} Accept: application/json ### List public keys for a user -## List public keys for a user GET https://api.github.com/users/{{username}}/keys?perPage={{perPage}}&page={{page}} Accept: application/json ### List public SSH keys for the authenticated user -## List public SSH keys for the authenticated user GET https://api.github.com/user/keys?perPage={{perPage}}&page={{page}} Accept: application/json ### List social accounts for the authenticated user -## List social accounts for the authenticated user GET https://api.github.com/user/social_accounts?perPage={{perPage}}&page={{page}} Accept: application/json ### List social accounts for a user -## List social accounts for a user GET https://api.github.com/users/{{username}}/social_accounts?perPage={{perPage}}&page={{page}} Accept: application/json ### List SSH signing keys for the authenticated user -## List SSH signing keys for the authenticated user GET https://api.github.com/user/ssh_signing_keys?perPage={{perPage}}&page={{page}} Accept: application/json ### List SSH signing keys for a user -## List SSH signing keys for a user GET https://api.github.com/users/{{username}}/ssh_signing_keys?perPage={{perPage}}&page={{page}} Accept: application/json @@ -238,12 +208,10 @@ Accept: application/json ### Unblock a user -## Unblock a user DELETE https://api.github.com/user/blocks/{{username}} Accept: application/json ### Unfollow a user -## Unfollow a user DELETE https://api.github.com/user/following/{{username}} Accept: application/json @@ -257,4 +225,3 @@ Accept: application/json "blog" : "https://github.com/blog", "name" : "monalisa octocat" } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http index ffb64cea0cc1..28eaf4904564 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http @@ -154,4 +154,3 @@ X-API-Key: {{apiKey}} { "payload": "VALUE_YOU_GET_FROM_CHECKOUT_SDK" } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http index c5380ae0dca5..26baf8929985 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http @@ -52,4 +52,3 @@ X-API-Key: {{apiKey}} "shopperReference": "YOUR_SHOPPER_REFERENCE", "recurringProcessingModel": "CardOnFile" } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http index 5c9cd88b6d47..70a422d188c7 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http @@ -51,7 +51,6 @@ X-API-Key: {{apiKey}} ### Capture an authorised payment -## Capture an authorised payment POST https://checkout-test.adyen.com/v71/payments/{{paymentPspReference}}/captures Content-Type: application/json Accept: application/json @@ -106,4 +105,3 @@ X-API-Key: {{apiKey}} "reference": "YOUR_UNIQUE_REFERENCE", "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http index d41c3d3e8692..297799561459 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http @@ -1,7 +1,6 @@ ## OrdersApi ### Create an order -## Create an order POST https://checkout-test.adyen.com/v71/orders Content-Type: application/json Accept: application/json @@ -20,7 +19,6 @@ X-API-Key: {{apiKey}} ### Cancel an order -## Cancel an order POST https://checkout-test.adyen.com/v71/orders/cancel Content-Type: application/json Accept: application/json @@ -80,4 +78,3 @@ X-API-Key: {{apiKey}} }, "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http index eaf495712959..f0b6739d39c3 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http @@ -1,14 +1,12 @@ ## PaymentLinksApi ### Get a payment link -## Get a payment link GET https://checkout-test.adyen.com/v71/paymentLinks/{{linkId}} Accept: application/json Authorization: Basic: {{username-password}} X-API-Key: {{apiKey}} ### Update the status of a payment link -## Update the status of a payment link PATCH https://checkout-test.adyen.com/v71/paymentLinks/{{linkId}} Content-Type: application/json Accept: application/json @@ -21,7 +19,6 @@ X-API-Key: {{apiKey}} ### Create a payment link -## Create a payment link POST https://checkout-test.adyen.com/v71/paymentLinks Content-Type: application/json Accept: application/json @@ -57,4 +54,3 @@ X-API-Key: {{apiKey}} "stateOrProvince": "SP" } } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http index 3677502bd603..63bd17a420db 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http @@ -1,7 +1,6 @@ ## PaymentsApi ### Get the result of a payment session -## Get the result of a payment session GET https://checkout-test.adyen.com/v71/sessions/{{sessionId}}?sessionResult={{sessionResult}} Accept: application/json Authorization: Basic: {{username-password}} @@ -553,7 +552,6 @@ X-API-Key: {{apiKey}} ### Create a payment session -## Create a payment session POST https://checkout-test.adyen.com/v71/sessions Content-Type: application/json Accept: application/json @@ -660,4 +658,3 @@ X-API-Key: {{apiKey}} "returnUrl": "https://your-company.com/...", "splits": ["{amount={value=39200}, type=BalanceAccount, account=BA00000000000000000000001, reference=Your reference for the sale amount, description=Your description for the sale amount}","{amount={value=400}, type=Commission, reference=Your reference for the commission, description=Your description for the commission}","{amount={value=400}, account=BA00000000000000000000001, reference=Your reference for the fees, description=Your description for the fees, type=PaymentFee}"] } - diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/RecurringApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/RecurringApi.http index 37354c2e97f7..938a59522d06 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/RecurringApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/RecurringApi.http @@ -1,13 +1,11 @@ ## RecurringApi ### Delete a token for stored payment details -## Delete a token for stored payment details DELETE https://checkout-test.adyen.com/v71/storedPaymentMethods/{{storedPaymentMethodId}}?shopperReference={{shopperReference}}&merchantAccount={{merchantAccount}} Authorization: Basic: {{username-password}} X-API-Key: {{apiKey}} ### Get tokens for stored payment details -## Get tokens for stored payment details GET https://checkout-test.adyen.com/v71/storedPaymentMethods?shopperReference={{shopperReference}}&merchantAccount={{merchantAccount}} Accept: application/json Authorization: Basic: {{username-password}} diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http index 0be9bddd2df5..492eaa2519c6 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http @@ -28,4 +28,3 @@ X-API-Key: {{apiKey}} { "originDomains": ["https://www.your-domain1.com","https://www.your-domain2.com","https://www.your-domain3.com"] } - diff --git a/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http b/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http index 8ced923e891c..adb2e1f7c810 100644 --- a/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http +++ b/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http @@ -1,12 +1,10 @@ ## PaymentsApi ### Get payment method by id -## Get payment method by id GET https://checkout-test.adyen.com/v71/paymentMethods/{{id}} Accept: application/json ### Get payment methods -## Get payment methods GET https://checkout-test.adyen.com/v71/paymentMethods Accept: application/json @@ -66,4 +64,3 @@ Accept: application/json "reference" : "YOUR_REFERENCE", "channel" : "Android" } - diff --git a/samples/client/opendota/jetbrains/http/client/Apis/BenchmarksApi.http b/samples/client/opendota/jetbrains/http/client/Apis/BenchmarksApi.http index 3577ffa2a2dd..31b79be26a53 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/BenchmarksApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/BenchmarksApi.http @@ -1,6 +1,5 @@ ## BenchmarksApi ### GET /benchmarks -## GET /benchmarks GET https://api.opendota.com/api/benchmarks?heroId={{heroId}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ConstantsApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ConstantsApi.http index c5480cc2079f..7559b7102416 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ConstantsApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ConstantsApi.http @@ -1,11 +1,9 @@ ## ConstantsApi ### GET /constants -## GET /constants GET https://api.opendota.com/api/constants Accept: application/json; charset=utf-8 ### GET /constants -## GET /constants GET https://api.opendota.com/api/constants/{{resource}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/DistributionsApi.http b/samples/client/opendota/jetbrains/http/client/Apis/DistributionsApi.http index 75590100e298..61027e781a46 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/DistributionsApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/DistributionsApi.http @@ -1,6 +1,5 @@ ## DistributionsApi ### GET /distributions -## GET /distributions GET https://api.opendota.com/api/distributions Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ExplorerApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ExplorerApi.http index 78232e5551f5..02650150c48e 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ExplorerApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ExplorerApi.http @@ -1,6 +1,5 @@ ## ExplorerApi ### GET /explorer -## GET /explorer GET https://api.opendota.com/api/explorer?sql={{sql}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/FindMatchesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/FindMatchesApi.http index 2cd775ae90fc..d371a1c178fa 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/FindMatchesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/FindMatchesApi.http @@ -1,6 +1,5 @@ ## FindMatchesApi ### GET / -## GET / GET https://api.opendota.com/api/findMatches?teamA={{teamA}}&teamB={{teamB}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/HealthApi.http b/samples/client/opendota/jetbrains/http/client/Apis/HealthApi.http index 748d71fc0336..4ce7cf27262a 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/HealthApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/HealthApi.http @@ -1,6 +1,5 @@ ## HealthApi ### GET /health -## GET /health GET https://api.opendota.com/api/health Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/HeroStatsApi.http b/samples/client/opendota/jetbrains/http/client/Apis/HeroStatsApi.http index 64bbccae7c06..ea893bf19d77 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/HeroStatsApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/HeroStatsApi.http @@ -1,6 +1,5 @@ ## HeroStatsApi ### GET /heroStats -## GET /heroStats GET https://api.opendota.com/api/heroStats Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/HeroesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/HeroesApi.http index aa3f625e04b3..5afc5e44c766 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/HeroesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/HeroesApi.http @@ -1,31 +1,25 @@ ## HeroesApi ### GET /heroes -## GET /heroes GET https://api.opendota.com/api/heroes Accept: application/json; charset=utf-8 ### GET /heroes/{hero_id}/durations -## GET /heroes/{hero_id}/durations GET https://api.opendota.com/api/heroes/{{hero_id}}/durations Accept: application/json; charset=utf-8 ### GET /heroes/{hero_id}/itemPopularity -## GET /heroes/{hero_id}/itemPopularity GET https://api.opendota.com/api/heroes/{{hero_id}}/itemPopularity Accept: application/json; charset=utf-8 ### GET /heroes/{hero_id}/matches -## GET /heroes/{hero_id}/matches GET https://api.opendota.com/api/heroes/{{hero_id}}/matches Accept: application/json; charset=utf-8 ### GET /heroes/{hero_id}/matchups -## GET /heroes/{hero_id}/matchups GET https://api.opendota.com/api/heroes/{{hero_id}}/matchups Accept: application/json; charset=utf-8 ### GET /heroes/{hero_id}/players -## GET /heroes/{hero_id}/players GET https://api.opendota.com/api/heroes/{{hero_id}}/players Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/LeaguesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/LeaguesApi.http index b0157c03223c..9074a0f79ca3 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/LeaguesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/LeaguesApi.http @@ -1,21 +1,17 @@ ## LeaguesApi ### GET /leagues -## GET /leagues GET https://api.opendota.com/api/leagues Accept: application/json; charset=utf-8 ### GET /leagues/{league_id} -## GET /leagues/{league_id} GET https://api.opendota.com/api/leagues/{{league_id}} Accept: application/json; charset=utf-8 ### GET /leagues/{league_id}/matches -## GET /leagues/{league_id}/matches GET https://api.opendota.com/api/leagues/{{league_id}}/matches Accept: application/json; charset=utf-8 ### GET /leagues/{league_id}/teams -## GET /leagues/{league_id}/teams GET https://api.opendota.com/api/leagues/{{league_id}}/teams Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/LiveApi.http b/samples/client/opendota/jetbrains/http/client/Apis/LiveApi.http index 9c8eb9c3ac7b..b067695c3ef2 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/LiveApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/LiveApi.http @@ -1,6 +1,5 @@ ## LiveApi ### GET /live -## GET /live GET https://api.opendota.com/api/live Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/MatchesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/MatchesApi.http index 1fe793a7d42d..42770212ad29 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/MatchesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/MatchesApi.http @@ -1,6 +1,5 @@ ## MatchesApi ### GET /matches/{match_id} -## GET /matches/{match_id} GET https://api.opendota.com/api/matches/{{match_id}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/MetadataApi.http b/samples/client/opendota/jetbrains/http/client/Apis/MetadataApi.http index 5b755973438b..628b95811f31 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/MetadataApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/MetadataApi.http @@ -1,6 +1,5 @@ ## MetadataApi ### GET /metadata -## GET /metadata GET https://api.opendota.com/api/metadata Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ParsedMatchesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ParsedMatchesApi.http index 76445b45baa1..8c38e7e8ec06 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ParsedMatchesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ParsedMatchesApi.http @@ -1,6 +1,5 @@ ## ParsedMatchesApi ### GET /parsedMatches -## GET /parsedMatches GET https://api.opendota.com/api/parsedMatches?lessThanMatchId={{lessThanMatchId}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/PlayersApi.http b/samples/client/opendota/jetbrains/http/client/Apis/PlayersApi.http index 82b119eda319..e5209a02a57b 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/PlayersApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/PlayersApi.http @@ -1,76 +1,61 @@ ## PlayersApi ### GET /players/{account_id}/counts -## GET /players/{account_id}/counts GET https://api.opendota.com/api/players/{{account_id}}/counts?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id} -## GET /players/{account_id} GET https://api.opendota.com/api/players/{{account_id}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/heroes -## GET /players/{account_id}/heroes GET https://api.opendota.com/api/players/{{account_id}}/heroes?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/histograms -## GET /players/{account_id}/histograms GET https://api.opendota.com/api/players/{{account_id}}/histograms/{{field}}?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/matches -## GET /players/{account_id}/matches GET https://api.opendota.com/api/players/{{account_id}}/matches?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}}&project={{project}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/peers -## GET /players/{account_id}/peers GET https://api.opendota.com/api/players/{{account_id}}/peers?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/pros -## GET /players/{account_id}/pros GET https://api.opendota.com/api/players/{{account_id}}/pros?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/rankings -## GET /players/{account_id}/rankings GET https://api.opendota.com/api/players/{{account_id}}/rankings Accept: application/json; charset=utf-8 ### GET /players/{account_id}/ratings -## GET /players/{account_id}/ratings GET https://api.opendota.com/api/players/{{account_id}}/ratings Accept: application/json; charset=utf-8 ### GET /players/{account_id}/recentMatches -## GET /players/{account_id}/recentMatches GET https://api.opendota.com/api/players/{{account_id}}/recentMatches Accept: application/json; charset=utf-8 ### POST /players/{account_id}/refresh -## POST /players/{account_id}/refresh POST https://api.opendota.com/api/players/{{account_id}}/refresh Accept: application/json; charset=utf-8 ### GET /players/{account_id}/totals -## GET /players/{account_id}/totals GET https://api.opendota.com/api/players/{{account_id}}/totals?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/wardmap -## GET /players/{account_id}/wardmap GET https://api.opendota.com/api/players/{{account_id}}/wardmap?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/wl -## GET /players/{account_id}/wl GET https://api.opendota.com/api/players/{{account_id}}/wl?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 ### GET /players/{account_id}/wordcloud -## GET /players/{account_id}/wordcloud GET https://api.opendota.com/api/players/{{account_id}}/wordcloud?limit={{limit}}&offset={{offset}}&win={{win}}&patch={{patch}}&gameMode={{gameMode}}&lobbyType={{lobbyType}}®ion={{region}}&date={{date}}&laneRole={{laneRole}}&heroId={{heroId}}&isRadiant={{isRadiant}}&includedAccountId={{includedAccountId}}&excludedAccountId={{excludedAccountId}}&withHeroId={{withHeroId}}&againstHeroId={{againstHeroId}}&significant={{significant}}&having={{having}}&sort={{sort}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/PlayersByRankApi.http b/samples/client/opendota/jetbrains/http/client/Apis/PlayersByRankApi.http index d108c3bef8b0..f4aea685c564 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/PlayersByRankApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/PlayersByRankApi.http @@ -1,6 +1,5 @@ ## PlayersByRankApi ### GET /playersByRank -## GET /playersByRank GET https://api.opendota.com/api/playersByRank Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ProMatchesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ProMatchesApi.http index 00a5aac6c919..1ca247bde7fb 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ProMatchesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ProMatchesApi.http @@ -1,6 +1,5 @@ ## ProMatchesApi ### GET /proMatches -## GET /proMatches GET https://api.opendota.com/api/proMatches?lessThanMatchId={{lessThanMatchId}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ProPlayersApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ProPlayersApi.http index 335d4b7e1b86..6a9963f5f9d2 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ProPlayersApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ProPlayersApi.http @@ -1,6 +1,5 @@ ## ProPlayersApi ### GET /proPlayers -## GET /proPlayers GET https://api.opendota.com/api/proPlayers Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/PublicMatchesApi.http b/samples/client/opendota/jetbrains/http/client/Apis/PublicMatchesApi.http index 51d205860f4b..be5afee9b062 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/PublicMatchesApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/PublicMatchesApi.http @@ -1,6 +1,5 @@ ## PublicMatchesApi ### GET /publicMatches -## GET /publicMatches GET https://api.opendota.com/api/publicMatches?mmrAscending={{mmrAscending}}&mmrDescending={{mmrDescending}}&lessThanMatchId={{lessThanMatchId}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/RankingsApi.http b/samples/client/opendota/jetbrains/http/client/Apis/RankingsApi.http index 4453a59a5236..116638eb1627 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/RankingsApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/RankingsApi.http @@ -1,6 +1,5 @@ ## RankingsApi ### GET /rankings -## GET /rankings GET https://api.opendota.com/api/rankings?heroId={{heroId}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/RecordsApi.http b/samples/client/opendota/jetbrains/http/client/Apis/RecordsApi.http index 772ccce539cb..60747d19a777 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/RecordsApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/RecordsApi.http @@ -1,6 +1,5 @@ ## RecordsApi ### GET /records/{field} -## GET /records/{field} GET https://api.opendota.com/api/records/{{field}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ReplaysApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ReplaysApi.http index 12edf8dc8606..fb52298a2b66 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ReplaysApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ReplaysApi.http @@ -1,6 +1,5 @@ ## ReplaysApi ### GET /replays -## GET /replays GET https://api.opendota.com/api/replays Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/RequestApi.http b/samples/client/opendota/jetbrains/http/client/Apis/RequestApi.http index f538e812b0d7..7060c3b30291 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/RequestApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/RequestApi.http @@ -1,11 +1,9 @@ ## RequestApi ### GET /request/{jobId} -## GET /request/{jobId} GET https://api.opendota.com/api/request/{{jobId}} Accept: application/json; charset=utf-8 ### POST /request/{match_id} -## POST /request/{match_id} POST https://api.opendota.com/api/request/{{match_id}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/ScenariosApi.http b/samples/client/opendota/jetbrains/http/client/Apis/ScenariosApi.http index 300d00716289..66efaf1e3431 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/ScenariosApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/ScenariosApi.http @@ -1,16 +1,13 @@ ## ScenariosApi ### GET /scenarios/itemTimings -## GET /scenarios/itemTimings GET https://api.opendota.com/api/scenarios/itemTimings?item={{item}}&heroId={{heroId}} Accept: application/json; charset=utf-8 ### GET /scenarios/laneRoles -## GET /scenarios/laneRoles GET https://api.opendota.com/api/scenarios/laneRoles?laneRole={{laneRole}}&heroId={{heroId}} Accept: application/json; charset=utf-8 ### GET /scenarios/misc -## GET /scenarios/misc GET https://api.opendota.com/api/scenarios/misc?scenario={{scenario}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/SchemaApi.http b/samples/client/opendota/jetbrains/http/client/Apis/SchemaApi.http index e5441c6d5da1..7b02f0eeb0e5 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/SchemaApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/SchemaApi.http @@ -1,6 +1,5 @@ ## SchemaApi ### GET /schema -## GET /schema GET https://api.opendota.com/api/schema Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/SearchApi.http b/samples/client/opendota/jetbrains/http/client/Apis/SearchApi.http index ec49128db517..137d085404da 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/SearchApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/SearchApi.http @@ -1,6 +1,5 @@ ## SearchApi ### GET /search -## GET /search GET https://api.opendota.com/api/search?q={{q}} Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/StatusApi.http b/samples/client/opendota/jetbrains/http/client/Apis/StatusApi.http index dbb25530e06d..b6e3704e3f77 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/StatusApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/StatusApi.http @@ -1,6 +1,5 @@ ## StatusApi ### GET /status -## GET /status GET https://api.opendota.com/api/status Accept: application/json; charset=utf-8 diff --git a/samples/client/opendota/jetbrains/http/client/Apis/TeamsApi.http b/samples/client/opendota/jetbrains/http/client/Apis/TeamsApi.http index 9c7245f7a0a9..23d4f7b46fa5 100644 --- a/samples/client/opendota/jetbrains/http/client/Apis/TeamsApi.http +++ b/samples/client/opendota/jetbrains/http/client/Apis/TeamsApi.http @@ -1,26 +1,21 @@ ## TeamsApi ### GET /teams -## GET /teams GET https://api.opendota.com/api/teams?page={{page}} Accept: application/json; charset=utf-8 ### GET /teams/{team_id} -## GET /teams/{team_id} GET https://api.opendota.com/api/teams/{{team_id}} Accept: application/json; charset=utf-8 ### GET /teams/{team_id}/heroes -## GET /teams/{team_id}/heroes GET https://api.opendota.com/api/teams/{{team_id}}/heroes Accept: application/json; charset=utf-8 ### GET /teams/{team_id}/matches -## GET /teams/{team_id}/matches GET https://api.opendota.com/api/teams/{{team_id}}/matches Accept: application/json; charset=utf-8 ### GET /teams/{team_id}/players -## GET /teams/{team_id}/players GET https://api.opendota.com/api/teams/{{team_id}}/players Accept: application/json; charset=utf-8 diff --git a/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http b/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http index 27914d2c0480..bb7e4384a9e7 100644 --- a/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http +++ b/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http @@ -1,10 +1,9 @@ ## PetApi ### Add a new pet to the store -## Add a new pet to the store POST http://petstore.swagger.io/v2/pet Content-Type: application/json -Content-Type: application/xml +# Content-Type: application/xml Accept: application/xml Accept: application/json @@ -19,34 +18,29 @@ Accept: application/json ### Deletes a pet -## Deletes a pet DELETE http://petstore.swagger.io/v2/pet/{{petId}} api_key: {{apiKey}} ### Finds Pets by status -## Finds Pets by status GET http://petstore.swagger.io/v2/pet/findByStatus?status={{status}} Accept: application/xml Accept: application/json ### Finds Pets by tags -## Finds Pets by tags GET http://petstore.swagger.io/v2/pet/findByTags?tags={{tags}} Accept: application/xml Accept: application/json ### Find pet by ID -## Find pet by ID GET http://petstore.swagger.io/v2/pet/{{petId}} Accept: application/xml Accept: application/json api_key: {{apiKey}} ### Update an existing pet -## Update an existing pet PUT http://petstore.swagger.io/v2/pet Content-Type: application/json -Content-Type: application/xml +# Content-Type: application/xml Accept: application/xml Accept: application/json @@ -61,12 +55,10 @@ Accept: application/json ### Updates a pet in the store with form data -## Updates a pet in the store with form data POST http://petstore.swagger.io/v2/pet/{{petId}} Content-Type: application/x-www-form-urlencoded ### uploads an image -## uploads an image POST http://petstore.swagger.io/v2/pet/{{petId}}/uploadImage Content-Type: multipart/form-data Accept: application/json diff --git a/samples/client/petstore/jetbrains/http/client/Apis/StoreApi.http b/samples/client/petstore/jetbrains/http/client/Apis/StoreApi.http index 7d258f11cd7a..a7bd58b9c7da 100644 --- a/samples/client/petstore/jetbrains/http/client/Apis/StoreApi.http +++ b/samples/client/petstore/jetbrains/http/client/Apis/StoreApi.http @@ -1,23 +1,19 @@ ## StoreApi ### Delete purchase order by ID -## Delete purchase order by ID DELETE http://petstore.swagger.io/v2/store/order/{{orderId}} ### Returns pet inventories by status -## Returns pet inventories by status GET http://petstore.swagger.io/v2/store/inventory Accept: application/json api_key: {{apiKey}} ### Find purchase order by ID -## Find purchase order by ID GET http://petstore.swagger.io/v2/store/order/{{orderId}} Accept: application/xml Accept: application/json ### Place an order for a pet -## Place an order for a pet POST http://petstore.swagger.io/v2/store/order Content-Type: application/json Accept: application/xml @@ -31,4 +27,3 @@ Accept: application/json "status": "", "complete": "" } - diff --git a/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http b/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http index d656dc0c2da2..3def7c20cfc9 100644 --- a/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http +++ b/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http @@ -1,7 +1,6 @@ ## UserApi ### Create user -## Create user POST http://petstore.swagger.io/v2/user Content-Type: application/json api_key: {{apiKey}} @@ -19,7 +18,6 @@ api_key: {{apiKey}} ### Creates list of users with given input array -## Creates list of users with given input array POST http://petstore.swagger.io/v2/user/createWithArray Content-Type: application/json api_key: {{apiKey}} @@ -30,7 +28,6 @@ api_key: {{apiKey}} ### Creates list of users with given input array -## Creates list of users with given input array POST http://petstore.swagger.io/v2/user/createWithList Content-Type: application/json api_key: {{apiKey}} @@ -41,29 +38,24 @@ api_key: {{apiKey}} ### Delete user -## Delete user DELETE http://petstore.swagger.io/v2/user/{{username}} api_key: {{apiKey}} ### Get user by user name -## Get user by user name GET http://petstore.swagger.io/v2/user/{{username}} Accept: application/xml Accept: application/json ### Logs user into the system -## Logs user into the system GET http://petstore.swagger.io/v2/user/login?username={{username}}&password={{password}} Accept: application/xml Accept: application/json ### Logs out current logged in user session -## Logs out current logged in user session GET http://petstore.swagger.io/v2/user/logout api_key: {{apiKey}} ### Updated user -## Updated user PUT http://petstore.swagger.io/v2/user/{{username}} Content-Type: application/json api_key: {{apiKey}} @@ -78,4 +70,3 @@ api_key: {{apiKey}} "phone": "", "userStatus": "" } - From cd1861ea720daeab3daa0fcfcf61ac51e27cd46a Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 21:03:42 +0200 Subject: [PATCH 10/42] Fix blank lines. --- .../JetbrainsHttpClientClientCodegen.java | 10 ++- .../confluenceWikiDocs/index.mustache | 2 +- .../jetbrains-http-client/api.mustache | 5 +- .../codegen/ExampleGeneratorTest.java | 2 +- .../JetbrainsHttpClientClientCodegenTest.java | 20 ++---- .../http/client/Apis/ActionsApi.http | 31 ---------- .../http/client/Apis/ActivityApi.http | 4 -- .../jetbrains/http/client/Apis/AppsApi.http | 6 -- .../jetbrains/http/client/Apis/ChecksApi.http | 4 +- .../http/client/Apis/CodeScanningApi.http | 2 - .../http/client/Apis/CodespacesApi.http | 12 ---- .../http/client/Apis/CopilotApi.http | 4 -- .../http/client/Apis/DependabotApi.http | 3 - .../http/client/Apis/DependencyGraphApi.http | 1 - .../jetbrains/http/client/Apis/GistsApi.http | 5 +- .../jetbrains/http/client/Apis/GitApi.http | 5 -- .../http/client/Apis/InteractionsApi.http | 2 - .../jetbrains/http/client/Apis/IssuesApi.http | 12 ---- .../http/client/Apis/MarkdownApi.http | 16 +---- .../http/client/Apis/MigrationsApi.http | 6 +- .../jetbrains/http/client/Apis/OrgsApi.http | 17 ------ .../http/client/Apis/ProjectsApi.http | 10 --- .../jetbrains/http/client/Apis/PullsApi.http | 12 ---- .../http/client/Apis/ReactionsApi.http | 9 --- .../jetbrains/http/client/Apis/ReposApi.http | 61 ++----------------- .../client/Apis/SecurityAdvisoriesApi.http | 8 ++- .../jetbrains/http/client/Apis/TeamsApi.http | 16 ----- .../jetbrains/http/client/Apis/UsersApi.http | 8 --- .../client/Apis/ClassicCheckoutSDKApi.http | 5 +- .../adyen/http/client/Apis/DonationsApi.http | 1 + .../http/client/Apis/ModificationsApi.http | 5 -- .../adyen/http/client/Apis/OrdersApi.http | 3 +- .../http/client/Apis/PaymentLinksApi.http | 1 - .../adyen/http/client/Apis/PaymentsApi.http | 24 ++++++-- .../adyen/http/client/Apis/UtilityApi.http | 1 - .../http/client/Apis/PaymentsApi.http | 2 + .../jetbrains/http/client/Apis/PetApi.http | 2 - .../jetbrains/http/client/Apis/UserApi.http | 3 - 38 files changed, 62 insertions(+), 278 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java index 7bd366f3801d..22246185ba71 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JetbrainsHttpClientClientCodegen.java @@ -229,7 +229,11 @@ List getRequests(CodegenOperation codegenOperation) { }); // Handling custom variables now - return handleCustomVariablesInRequests(items); + List requests = handleCustomVariablesInRequests(items); + for (int i = 0; i < requests.size(); i++) { + requests.get(i).setHasMore(i < requests.size() - 1); + } + return requests; } private void addRequestForContentTypes(List items, CodegenOperation codegenOperation, String name, String body) { @@ -283,6 +287,9 @@ private boolean addRequestsFromMediaTypeExamples(List items, Codege } for (Map.Entry contentEntry : content.entrySet()) { + if (!isJsonContentType(contentEntry.getKey())) { + continue; + } CodegenMediaType mediaType = contentEntry.getValue(); if (mediaType.getExamples() == null || mediaType.getExamples().isEmpty()) { continue; @@ -368,6 +375,7 @@ public class RequestItem { private String body; private String contentType; private List commentedContentTypes; + private boolean hasMore; public RequestItem(String name, String body) { this(name, body, null); diff --git a/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache b/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache index 4abeb938e230..96081b3cefa8 100644 --- a/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache +++ b/modules/openapi-generator/src/main/resources/confluenceWikiDocs/index.mustache @@ -56,7 +56,7 @@ h4. Responses || Message | {{message}} | || Response Type | {{{dataType}}} | || Response Model | [{{dataType}} Model|#{{dataType}}ModelAnchor|Jump to model] | - || Response Schema | {code:collapse=true}{{{jsonSchema}}}{code}{{#examples}}{code:title=Example {{{contentType}}} |collapse=true }{{#lambdaExample}}{{/lambdaExample}}{code}{{/examples}} | + || Response Schema | {code:collapse=true}{{{jsonSchema}}}{code}{{#examples}}{code:title=Example {{{contentType}}} |collapse=true }{{#lambdaExample}}{{/lambdaExample}}{code}{{/examples}} | {{#hasExamples}}{{#examples}}|| Example {{-index}} | {code:title=Example {{{contentType}}} |collapse=true }{{#lambdaExample}}{{/lambdaExample}}{code} |{{/examples}}{{/hasExamples}} {{/responses}} diff --git a/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache b/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache index 34c940596c30..7dd74274d18c 100644 --- a/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache +++ b/modules/openapi-generator/src/main/resources/jetbrains-http-client/api.mustache @@ -40,6 +40,7 @@ Authorization: Bearer {{#lambda.doubleMustache}}{bearerToken}{{/lambda.doubleMus {{#body}} {{{.}}} +{{#hasMore}} -{{/body}} -{{/vendorExtensions.requests}}{{/operation}}{{/operations}} + +{{/hasMore}}{{/body}}{{/vendorExtensions.requests}}{{/operation}}{{/operations}} \ No newline at end of file diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java index 529936630fea..8e48a29a1270 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/ExampleGeneratorTest.java @@ -74,7 +74,7 @@ public void generateFromResponseSchemaWithDateFormat() throws Exception { assertEquals(1, examples.size()); assertEquals("application/json", examples.get(0).get("contentType")); - assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"date_with_example\" : \"2024-01-01\",%n \"date_without_example\" : \"2000-01-23\"%n}")), mapper.readTree(renderExample(examples.get(0)))); + assertEquals(mapper.readTree(String.format(Locale.ROOT, "{%n \"date_with_example\" : \"2024-01-01\",%n \"date_without_example\" : \"2000-01-23\"%n}")), mapper.readTree(renderExample(examples.get(0)))); assertEquals("200", examples.get(0).get("statusCode")); } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java index 3e9796d40e70..3caf17f58c4e 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/jetbrains/http/client/JetbrainsHttpClientClientCodegenTest.java @@ -226,7 +226,7 @@ public void testInlineRequestBodyExamplesAreRendered() throws IOException { } @Test - public void testInlineRequestBodyExamplesAreRenderedForNonJsonMediaTypes() throws IOException { + public void testInlineRequestBodyExamplesAreNotRenderedForNonJsonMediaTypes() throws IOException { File output = Files.createTempDirectory("jetbrainstest_").toFile(); output.deleteOnExit(); Path spec = Files.createTempFile("jetbrains-text-inline-example_", ".yaml"); @@ -288,20 +288,10 @@ public void testInlineRequestBodyExamplesAreRenderedForNonJsonMediaTypes() throw TestUtils.assertFileContains(path, "### Render Markdown\n" + "POST http://localhost:5000/v1/markdown/raw\n" + "Content-Type: text/plain\n" + - "Accept: text/html\n" + - "\n" + - "{\n" + - " \"text\" : \"Hello **world**\"\n" + - "}"); - TestUtils.assertFileContains(path, "### Render Markdown\n" + - "## Markdown content\n" + - "POST http://localhost:5000/v1/markdown/raw\n" + - "Content-Type: text/x-markdown\n" + - "Accept: text/html\n" + - "\n" + - "{\n" + - " \"text\" : \"Hello _markdown_\"\n" + - "}"); + "# Content-Type: text/x-markdown\n" + + "Accept: text/html"); + TestUtils.assertFileNotContains(path, "Hello **world**"); + TestUtils.assertFileNotContains(path, "Markdown content"); TestUtils.assertFileNotContains(path, "{\n \n}"); TestUtils.assertFileNotContains(path, "Content-Type: text/plain\nContent-Type: text/x-markdown"); TestUtils.assertFileNotContains(path, "Summary-only example"); diff --git a/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http b/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http index c08ccf8a0128..7dc39425053d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ActionsApi.http @@ -9,7 +9,6 @@ Accept: application/json "labels" : [ "gpu", "accelerated" ] } - ### Add custom labels to a self-hosted runner for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels Content-Type: application/json @@ -19,7 +18,6 @@ Accept: application/json "labels" : [ "gpu", "accelerated" ] } - ### Add selected repository to an organization secret PUT https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repositories/{{repository_id}} @@ -44,7 +42,6 @@ Accept: application/json "value" : "octocat" } - ### Create or update an environment secret PUT https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/secrets/{{secret_name}} Content-Type: application/json @@ -55,7 +52,6 @@ Accept: application/json "key_id" : "012345678912345678" } - ### Create or update an organization secret PUT https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}} Content-Type: application/json @@ -68,7 +64,6 @@ Accept: application/json "selected_repository_ids" : [ 1296269, 1296280 ] } - ### Create or update a repository secret PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/secrets/{{secret_name}} Content-Type: application/json @@ -79,7 +74,6 @@ Accept: application/json "key_id" : "012345678912345678" } - ### Create an organization variable POST https://api.github.com/orgs/{{org}}/actions/variables Content-Type: application/json @@ -92,7 +86,6 @@ Accept: application/json "selected_repository_ids" : [ 1296269, 1296280 ] } - ### Create a registration token for an organization POST https://api.github.com/orgs/{{org}}/actions/runners/registration-token Accept: application/json @@ -119,7 +112,6 @@ Accept: application/json "value" : "octocat" } - ### Create a workflow dispatch event POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/workflows/{{workflow_id}}/dispatches Content-Type: application/json @@ -132,7 +124,6 @@ Content-Type: application/json } } - ### Delete a GitHub Actions cache for a repository (using a cache ID) DELETE https://api.github.com/repos/{{owner}}/{{repo}}/actions/caches/{{cache_id}} @@ -215,7 +206,6 @@ Accept: application/json "work_folder" : "_work" } - ### Create configuration for a just-in-time runner for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/generate-jitconfig Content-Type: application/json @@ -228,7 +218,6 @@ Accept: application/json "work_folder" : "_work" } - ### List GitHub Actions caches for a repository GET https://api.github.com/repos/{{owner}}/{{repo}}/actions/caches?perPage={{perPage}}&page={{page}}&ref={{ref}}&key={{key}}&sort={{sort}}&direction={{direction}} Accept: application/json @@ -463,7 +452,6 @@ Accept: application/json "enable_debug_logging": "" } - ### Re-run a workflow POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/rerun Content-Type: application/json @@ -473,7 +461,6 @@ Accept: application/json "enable_debug_logging": "" } - ### Re-run failed jobs from a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/rerun-failed-jobs Content-Type: application/json @@ -483,7 +470,6 @@ Accept: application/json "enable_debug_logging": "" } - ### Remove all custom labels from a self-hosted runner for an organization DELETE https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels Accept: application/json @@ -516,7 +502,6 @@ Content-Type: application/json "comment" : "All health checks passed." } - ### Review pending deployments for a workflow run POST https://api.github.com/repos/{{owner}}/{{repo}}/actions/runs/{{run_id}}/pending_deployments Content-Type: application/json @@ -528,7 +513,6 @@ Accept: application/json "comment" : "Ship it!" } - ### Set allowed actions and reusable workflows for an organization PUT https://api.github.com/orgs/{{org}}/actions/permissions/selected-actions Content-Type: application/json @@ -539,7 +523,6 @@ Content-Type: application/json "patterns_allowed" : [ "monalisa/octocat@*", "docker/*" ] } - ### Set allowed actions and reusable workflows for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/selected-actions Content-Type: application/json @@ -550,7 +533,6 @@ Content-Type: application/json "patterns_allowed" : [ "monalisa/octocat@*", "docker/*" ] } - ### Set custom labels for a self-hosted runner for an organization PUT https://api.github.com/orgs/{{org}}/actions/runners/{{runner_id}}/labels Content-Type: application/json @@ -560,7 +542,6 @@ Accept: application/json "labels" : [ "gpu", "accelerated" ] } - ### Set custom labels for a self-hosted runner for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/runners/{{runner_id}}/labels Content-Type: application/json @@ -570,7 +551,6 @@ Accept: application/json "labels" : [ "gpu", "accelerated" ] } - ### Set the customization template for an OIDC subject claim for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/oidc/customization/sub Content-Type: application/json @@ -582,7 +562,6 @@ Accept: application/scim+json "include_claim_keys" : [ "repo", "context" ] } - ### Set default workflow permissions for an organization ## Give read-only permission, and allow approving PRs. PUT https://api.github.com/orgs/{{org}}/actions/permissions/workflow @@ -593,7 +572,6 @@ Content-Type: application/json "can_approve_pull_request_reviews" : true } - ### Set default workflow permissions for a repository ## Give read-only permission, and allow approving PRs. PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/workflow @@ -604,7 +582,6 @@ Content-Type: application/json "can_approve_pull_request_reviews" : true } - ### Set GitHub Actions permissions for an organization PUT https://api.github.com/orgs/{{org}}/actions/permissions Content-Type: application/json @@ -614,7 +591,6 @@ Content-Type: application/json "allowed_actions" : "selected" } - ### Set GitHub Actions permissions for a repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions Content-Type: application/json @@ -624,7 +600,6 @@ Content-Type: application/json "allowed_actions" : "selected" } - ### Set selected repositories for an organization secret PUT https://api.github.com/orgs/{{org}}/actions/secrets/{{secret_name}}/repositories Content-Type: application/json @@ -633,7 +608,6 @@ Content-Type: application/json "selected_repository_ids" : [ 64780797 ] } - ### Set selected repositories for an organization variable PUT https://api.github.com/orgs/{{org}}/actions/variables/{{name}}/repositories Content-Type: application/json @@ -642,7 +616,6 @@ Content-Type: application/json "selected_repository_ids" : [ 64780797 ] } - ### Set selected repositories enabled for GitHub Actions in an organization PUT https://api.github.com/orgs/{{org}}/actions/permissions/repositories Content-Type: application/json @@ -651,7 +624,6 @@ Content-Type: application/json "selected_repository_ids" : [ 32, 42 ] } - ### Set the level of access for workflows outside of the repository PUT https://api.github.com/repos/{{owner}}/{{repo}}/actions/permissions/access Content-Type: application/json @@ -660,7 +632,6 @@ Content-Type: application/json "access_level" : "organization" } - ### Update an environment variable PATCH https://api.github.com/repositories/{{repository_id}}/environments/{{environment_name}}/variables/{{name}} Content-Type: application/json @@ -670,7 +641,6 @@ Content-Type: application/json "value" : "octocat" } - ### Update an organization variable PATCH https://api.github.com/orgs/{{org}}/actions/variables/{{name}} Content-Type: application/json @@ -682,7 +652,6 @@ Content-Type: application/json "selected_repository_ids" : [ 1296269, 1296280 ] } - ### Update a repository variable PATCH https://api.github.com/repos/{{owner}}/{{repo}}/actions/variables/{{name}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http b/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http index ccceb78d4dd6..93d1f23beb8d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ActivityApi.http @@ -106,7 +106,6 @@ Accept: application/json "read" : true } - ### Mark repository notifications as read PUT https://api.github.com/repos/{{owner}}/{{repo}}/notifications Content-Type: application/json @@ -116,7 +115,6 @@ Accept: application/json "last_read_at" : "2019-01-01T00:00:00Z" } - ### Mark a thread as done DELETE https://api.github.com/notifications/threads/{{thread_id}} @@ -134,7 +132,6 @@ Accept: application/json "ignored" : false } - ### Set a thread subscription PUT https://api.github.com/notifications/threads/{{thread_id}}/subscription Content-Type: application/json @@ -144,7 +141,6 @@ Accept: application/json "ignored" : false } - ### Star a repository for the authenticated user PUT https://api.github.com/user/starred/{{owner}}/{{repo}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/AppsApi.http b/samples/client/github/jetbrains/http/client/Apis/AppsApi.http index 85399754f90c..2c5fea76608e 100644 --- a/samples/client/github/jetbrains/http/client/Apis/AppsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/AppsApi.http @@ -13,7 +13,6 @@ Accept: application/json "access_token" : "e72e16c7e42f292c6912e7710c838347ae178b4a" } - ### Create a GitHub App from a manifest POST https://api.github.com/app-manifests/{{code}}/conversions Accept: application/json @@ -31,7 +30,6 @@ Accept: application/json } } - ### Delete an app authorization DELETE https://api.github.com/applications/{{client_id}}/grant Content-Type: application/json @@ -41,7 +39,6 @@ Accept: application/json "access_token" : "e72e16c7e42f292c6912e7710c838347ae178b4a" } - ### Delete an installation for the authenticated app DELETE https://api.github.com/app/installations/{{installation_id}} Accept: application/json @@ -55,7 +52,6 @@ Accept: application/json "access_token" : "e72e16c7e42f292c6912e7710c838347ae178b4a" } - ### Get the authenticated app GET https://api.github.com/app Accept: application/json @@ -164,7 +160,6 @@ Accept: application/json "access_token" : "e72e16c7e42f292c6912e7710c838347ae178b4a" } - ### Revoke an installation access token DELETE https://api.github.com/installation/token @@ -183,7 +178,6 @@ Accept: application/json } } - ### Suspend an app installation PUT https://api.github.com/app/installations/{{installation_id}}/suspended Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http b/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http index 0e9fc03d0e50..980ebab15399 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ChecksApi.http @@ -19,6 +19,7 @@ Accept: application/json } } + ### Create a check run ## Example of a completed conclusion POST https://api.github.com/repos/{{owner}}/{{repo}}/check-runs @@ -65,7 +66,6 @@ Accept: application/json } ] } - ### Create a check suite POST https://api.github.com/repos/{{owner}}/{{repo}}/check-suites Content-Type: application/json @@ -75,7 +75,6 @@ Accept: application/json "head_sha" : "d6fde92930d4715a2b49857d24b940956b26d2d3" } - ### Get a check run GET https://api.github.com/repos/{{owner}}/{{repo}}/check-runs/{{check_run_id}} Accept: application/json @@ -120,7 +119,6 @@ Accept: application/json } ] } - ### Update a check run PATCH https://api.github.com/repos/{{owner}}/{{repo}}/check-runs/{{check_run_id}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http b/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http index 70d1bf788f57..4ac59792ceea 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodeScanningApi.http @@ -57,7 +57,6 @@ Accept: application/json "dismissed_comment" : "This alert is not actually correct, because there's a sanitizer included in the library." } - ### Update a code scanning default setup configuration PATCH https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/default-setup Content-Type: application/json @@ -67,7 +66,6 @@ Accept: application/json "state" : "configured" } - ### Upload an analysis as SARIF data POST https://api.github.com/repos/{{owner}}/{{repo}}/code-scanning/sarifs Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http b/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http index ce32483a89da..9a6db327de9a 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CodespacesApi.http @@ -27,7 +27,6 @@ Accept: application/json "geo" : "UsWest" } - ### Create or update an organization secret PUT https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}} Content-Type: application/json @@ -40,7 +39,6 @@ Accept: application/json "selected_repository_ids" : [ 1296269, 1296280 ] } - ### Create or update a repository secret PUT https://api.github.com/repos/{{owner}}/{{repo}}/codespaces/secrets/{{secret_name}} Content-Type: application/json @@ -51,7 +49,6 @@ Accept: application/json "key_id" : "012345678912345678" } - ### Create or update a secret for the authenticated user PUT https://api.github.com/user/codespaces/secrets/{{secret_name}} Content-Type: application/json @@ -63,7 +60,6 @@ Accept: application/json "selected_repository_ids" : [ "1234567", "2345678" ] } - ### Create a codespace from a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/codespaces Content-Type: application/json @@ -74,7 +70,6 @@ Accept: application/json "ref" : "main" } - ### Create a codespace in a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/codespaces Content-Type: application/json @@ -86,7 +81,6 @@ Accept: application/scim+json "machine" : "standardLinux32gb" } - ### Remove users from Codespaces access for an organization DELETE https://api.github.com/orgs/{{org}}/codespaces/access/selected_users Content-Type: application/json @@ -96,7 +90,6 @@ Accept: application/json "selected_usernames" : [ "johnDoe", "atomIO" ] } - ### Delete a codespace for the authenticated user DELETE https://api.github.com/user/codespaces/{{codespace_name}} Accept: application/json @@ -206,7 +199,6 @@ Accept: application/json "private" : false } - ### Remove a selected repository from a user secret DELETE https://api.github.com/user/codespaces/secrets/{{secret_name}}/repositories/{{repository_id}} Accept: application/json @@ -229,7 +221,6 @@ Accept: application/json "selected_usernames" : [ "johnDoe", "atomIO" ] } - ### Add users to Codespaces access for an organization POST https://api.github.com/orgs/{{org}}/codespaces/access/selected_users Content-Type: application/json @@ -239,7 +230,6 @@ Accept: application/json "selected_usernames" : [ "johnDoe", "atomIO" ] } - ### Set selected repositories for a user secret PUT https://api.github.com/user/codespaces/secrets/{{secret_name}}/repositories Content-Type: application/json @@ -249,7 +239,6 @@ Accept: application/json "selected_repository_ids" : [ "1296269", "1296280" ] } - ### Set selected repositories for an organization secret PUT https://api.github.com/orgs/{{org}}/codespaces/secrets/{{secret_name}}/repositories Content-Type: application/json @@ -259,7 +248,6 @@ Accept: application/json "selected_repository_ids" : [ 64780797 ] } - ### Start a codespace for the authenticated user POST https://api.github.com/user/codespaces/{{codespace_name}}/start Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http b/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http index 3ae7b48e78a2..8e7a849b8f24 100644 --- a/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/CopilotApi.http @@ -9,7 +9,6 @@ Accept: application/json "selected_teams" : [ "engteam1", "engteam2", "engteam3" ] } - ### Add users to the Copilot subscription for an organization POST https://api.github.com/orgs/{{org}}/copilot/billing/selected_users Content-Type: application/json @@ -19,7 +18,6 @@ Accept: application/json "selected_usernames" : [ "cooluser1", "hacker2", "octocat" ] } - ### Remove teams from the Copilot subscription for an organization DELETE https://api.github.com/orgs/{{org}}/copilot/billing/selected_teams Content-Type: application/json @@ -29,7 +27,6 @@ Accept: application/json "selected_teams" : [ "engteam1", "engteam2", "engteam3" ] } - ### Remove users from the Copilot subscription for an organization DELETE https://api.github.com/orgs/{{org}}/copilot/billing/selected_users Content-Type: application/json @@ -39,7 +36,6 @@ Accept: application/json "selected_usernames" : [ "cooluser1", "hacker2", "octocat" ] } - ### Get Copilot seat information and settings for an organization GET https://api.github.com/orgs/{{org}}/copilot/billing Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http b/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http index 8256cac32fd8..da074e1a186d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/DependabotApi.http @@ -15,7 +15,6 @@ Accept: application/json "selected_repository_ids" : [ "1296269", "1296280" ] } - ### Create or update a repository secret PUT https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/secrets/{{secret_name}} Content-Type: application/json @@ -26,7 +25,6 @@ Accept: application/json "key_id" : "012345678912345678" } - ### Delete an organization secret DELETE https://api.github.com/orgs/{{org}}/dependabot/secrets/{{secret_name}} @@ -90,7 +88,6 @@ Content-Type: application/json "selected_repository_ids" : [ 64780797 ] } - ### Update a Dependabot alert PATCH https://api.github.com/repos/{{owner}}/{{repo}}/dependabot/alerts/{{alert_number}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http b/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http index 589321bda143..70777c6e2d26 100644 --- a/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/DependencyGraphApi.http @@ -42,7 +42,6 @@ Accept: application/json } } - ### Get a diff of the dependencies between commits GET https://api.github.com/repos/{{owner}}/{{repo}}/dependency-graph/compare/{{basehead}}?name={{name}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/GistsApi.http b/samples/client/github/jetbrains/http/client/Apis/GistsApi.http index 0a80f2d8457c..b3bd796924e2 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GistsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GistsApi.http @@ -20,7 +20,6 @@ Accept: application/json } } - ### Create a gist comment ## Creating a comment in a gist POST https://api.github.com/gists/{{gist_id}}/comments @@ -31,7 +30,6 @@ Accept: application/json "body" : "This is a comment to a gist" } - ### Delete a gist DELETE https://api.github.com/gists/{{gist_id}} Accept: application/json @@ -107,6 +105,7 @@ Accept: application/json } } + ### Update a gist ## Deleting a gist file PATCH https://api.github.com/gists/{{gist_id}} @@ -119,6 +118,7 @@ Accept: application/json } } + ### Update a gist ## Renaming a gist file PATCH https://api.github.com/gists/{{gist_id}} @@ -133,7 +133,6 @@ Accept: application/json } } - ### Update a gist comment ## Updating a comment in a gist PATCH https://api.github.com/gists/{{gist_id}}/comments/{{comment_id}} diff --git a/samples/client/github/jetbrains/http/client/Apis/GitApi.http b/samples/client/github/jetbrains/http/client/Apis/GitApi.http index b8a5546493ce..f6f03db3083c 100644 --- a/samples/client/github/jetbrains/http/client/Apis/GitApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/GitApi.http @@ -10,7 +10,6 @@ Accept: application/json "encoding" : "utf-8" } - ### Create a commit POST https://api.github.com/repos/{{owner}}/{{repo}}/git/commits Content-Type: application/json @@ -28,7 +27,6 @@ Accept: application/json "signature" : "-----BEGIN PGP SIGNATURE-----\n\niQIzBAABAQAdFiEESn/54jMNIrGSE6Tp6cQjvhfv7nAFAlnT71cACgkQ6cQjvhfv\n7nCWwA//XVqBKWO0zF+bZl6pggvky3Oc2j1pNFuRWZ29LXpNuD5WUGXGG209B0hI\nDkmcGk19ZKUTnEUJV2Xd0R7AW01S/YSub7OYcgBkI7qUE13FVHN5ln1KvH2all2n\n2+JCV1HcJLEoTjqIFZSSu/sMdhkLQ9/NsmMAzpf/iIM0nQOyU4YRex9eD1bYj6nA\nOQPIDdAuaTQj1gFPHYLzM4zJnCqGdRlg0sOM/zC5apBNzIwlgREatOYQSCfCKV7k\nnrU34X8b9BzQaUx48Qa+Dmfn5KQ8dl27RNeWAqlkuWyv3pUauH9UeYW+KyuJeMkU\n+NyHgAsWFaCFl23kCHThbLStMZOYEnGagrd0hnm1TPS4GJkV4wfYMwnI4KuSlHKB\njHl3Js9vNzEUQipQJbgCgTiWvRJoK3ENwBTMVkKHaqT4x9U4Jk/XZB6Q8MA09ezJ\n3QgiTjTAGcum9E9QiJqMYdWQPWkaBIRRz5cET6HPB48YNXAAUsfmuYsGrnVLYbG+\nUpC6I97VybYHTy2O9XSGoaLeMI9CsFn38ycAxxbWagk5mhclNTP5mezIq6wKSwmr\nX11FW3n1J23fWZn5HJMBsRnUCgzqzX3871IqLYHqRJ/bpZ4h20RhTyPj5c/z7QXp\neSakNQMfbbMcljkha+ZMuVQX1K9aRlVqbmv3ZMWh+OijLYVU2bc=\n=5Io4\n-----END PGP SIGNATURE-----\n" } - ### Create a reference POST https://api.github.com/repos/{{owner}}/{{repo}}/git/refs Content-Type: application/json @@ -39,7 +37,6 @@ Accept: application/json "sha" : "aa218f56b14c9653891f9e74264a383fa43fefbd" } - ### Create a tag object POST https://api.github.com/repos/{{owner}}/{{repo}}/git/tags Content-Type: application/json @@ -57,7 +54,6 @@ Accept: application/json } } - ### Create a tree POST https://api.github.com/repos/{{owner}}/{{repo}}/git/trees Content-Type: application/json @@ -73,7 +69,6 @@ Accept: application/json } ] } - ### Delete a reference DELETE https://api.github.com/repos/{{owner}}/{{repo}}/git/refs/{{ref}} Accept: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http b/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http index 9eb99ae3eb10..c48ce85483f1 100644 --- a/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/InteractionsApi.http @@ -31,7 +31,6 @@ Accept: application/json "expiry" : "one_month" } - ### Set interaction restrictions for an organization PUT https://api.github.com/orgs/{{org}}/interaction-limits Content-Type: application/json @@ -42,7 +41,6 @@ Accept: application/json "expiry" : "one_month" } - ### Set interaction restrictions for a repository ## Example request body PUT https://api.github.com/repos/{{owner}}/{{repo}}/interaction-limits diff --git a/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http b/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http index 58c887e468b2..be773717f97f 100644 --- a/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/IssuesApi.http @@ -9,7 +9,6 @@ Accept: application/json "assignees" : [ "hubot", "other_user" ] } - ### Add labels to an issue POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels Content-Type: application/json @@ -19,7 +18,6 @@ Accept: application/json "labels" : [ "bug", "enhancement" ] } - ### Check if a user can be assigned GET https://api.github.com/repos/{{owner}}/{{repo}}/assignees/{{assignee}} Accept: application/json @@ -42,7 +40,6 @@ Accept: application/scim+json "labels" : [ "bug" ] } - ### Create an issue comment POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/comments Content-Type: application/json @@ -52,7 +49,6 @@ Accept: application/json "body" : "Me too" } - ### Create a label POST https://api.github.com/repos/{{owner}}/{{repo}}/labels Content-Type: application/json @@ -64,7 +60,6 @@ Accept: application/json "color" : "f29513" } - ### Create a milestone POST https://api.github.com/repos/{{owner}}/{{repo}}/milestones Content-Type: application/json @@ -77,7 +72,6 @@ Accept: application/json "due_on" : "2012-10-09T23:39:01Z" } - ### Delete an issue comment DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}} @@ -174,7 +168,6 @@ Accept: application/json "lock_reason" : "off-topic" } - ### Remove all labels from an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels Accept: application/json @@ -188,7 +181,6 @@ Accept: application/json "assignees" : [ "hubot", "other_user" ] } - ### Remove a label from an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/labels/{{name}} Accept: application/json @@ -202,7 +194,6 @@ Accept: application/json "labels" : [ "bug", "enhancement" ] } - ### Unlock an issue DELETE https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/lock Accept: application/json @@ -221,7 +212,6 @@ Accept: application/json "labels" : [ "bug" ] } - ### Update an issue comment PATCH https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}} Content-Type: application/json @@ -231,7 +221,6 @@ Accept: application/json "body" : "Me too" } - ### Update a label PATCH https://api.github.com/repos/{{owner}}/{{repo}}/labels/{{name}} Content-Type: application/json @@ -243,7 +232,6 @@ Accept: application/json "color" : "b01f26" } - ### Update a milestone PATCH https://api.github.com/repos/{{owner}}/{{repo}}/milestones/{{milestone_number}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http b/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http index 0804e052da76..8722cb39a975 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MarkdownApi.http @@ -10,22 +10,8 @@ Accept: text/html "text" : "Hello **world**" } - ### Render a Markdown document in raw mode POST https://api.github.com/markdown/raw Content-Type: text/plain +# Content-Type: text/x-markdown Accept: text/html - -{ - "text" : "Hello **world**" -} - -### Render a Markdown document in raw mode -## Rendering markdown -POST https://api.github.com/markdown/raw -Content-Type: text/x-markdown -Accept: text/html - -{ - "text" : "Hello **world**" -} diff --git a/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http b/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http index 5bc824ff972b..259bfd87518a 100644 --- a/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/MigrationsApi.http @@ -66,7 +66,6 @@ Accept: application/json "name" : "Hubot the Robot" } - ### Update Git LFS preference PATCH https://api.github.com/repos/{{owner}}/{{repo}}/import/lfs Content-Type: application/json @@ -76,7 +75,6 @@ Accept: application/json "use_lfs" : "opt_in" } - ### Start a user migration POST https://api.github.com/user/migrations Content-Type: application/json @@ -87,7 +85,6 @@ Accept: application/json "lock_repositories" : true } - ### Start an organization migration POST https://api.github.com/orgs/{{org}}/migrations Content-Type: application/json @@ -98,7 +95,6 @@ Accept: application/json "lock_repositories" : true } - ### Start an import PUT https://api.github.com/repos/{{owner}}/{{repo}}/import Content-Type: application/json @@ -111,7 +107,6 @@ Accept: application/json "vcs_password" : "secret" } - ### Unlock a user repository DELETE https://api.github.com/user/migrations/{{migration_id}}/repos/{{repo_name}}/lock Accept: application/json @@ -131,6 +126,7 @@ Accept: application/json "vcs_password" : "secret" } + ### Update an import ## Updating the project choice PATCH https://api.github.com/repos/{{owner}}/{{repo}}/import diff --git a/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http b/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http index dbc61eedb567..f355b43b6175 100644 --- a/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/OrgsApi.http @@ -37,7 +37,6 @@ Accept: application/json "async" : true } - ### Create a custom organization role POST https://api.github.com/orgs/{{org}}/organization-roles Content-Type: application/json @@ -49,7 +48,6 @@ Accept: application/json "permissions" : [ "write_organization_custom_repo_role", "write_organization_custom_org_role", "read_organization_custom_repo_role", "read_organization_custom_org_role" ] } - ### Create an organization invitation POST https://api.github.com/orgs/{{org}}/invitations Content-Type: application/json @@ -61,7 +59,6 @@ Accept: application/json "team_ids" : [ 12, 26 ] } - ### Create or update custom properties for an organization PATCH https://api.github.com/orgs/{{org}}/properties/schema Content-Type: application/json @@ -86,7 +83,6 @@ Accept: application/json } ] } - ### Create or update custom property values for organization repositories PATCH https://api.github.com/orgs/{{org}}/properties/values Content-Type: application/json @@ -106,7 +102,6 @@ Accept: application/json } ] } - ### Create or update a custom property for an organization PUT https://api.github.com/orgs/{{org}}/properties/schema/{{custom_property_name}} Content-Type: application/json @@ -120,7 +115,6 @@ Accept: application/json "allowed_values" : [ "production", "development" ] } - ### Create an organization webhook POST https://api.github.com/orgs/{{org}}/hooks Content-Type: application/json @@ -136,7 +130,6 @@ Accept: application/json } } - ### Delete an organization DELETE https://api.github.com/orgs/{{org}} Accept: application/json @@ -156,7 +149,6 @@ Content-Type: application/json "query_suite": "" } - ### Get an organization GET https://api.github.com/orgs/{{org}} Accept: application/json @@ -300,7 +292,6 @@ Accept: application/json "description" : "Permissions to manage custom roles within an org." } - ### Ping an organization webhook POST https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/pings Accept: application/json @@ -343,7 +334,6 @@ Accept: application/json "reason" : "This request is denied because the access is too broad." } - ### Review requests to access organization resources with fine-grained personal access tokens ## Example of denying a request POST https://api.github.com/orgs/{{org}}/personal-access-token-requests @@ -356,7 +346,6 @@ Accept: application/json "reason" : "Access is too broad." } - ### Remove all organization roles for a team DELETE https://api.github.com/orgs/{{org}}/organization-roles/teams/{{team_slug}} @@ -379,7 +368,6 @@ Accept: application/json "role" : "member" } - ### Set public organization membership for the authenticated user PUT https://api.github.com/orgs/{{org}}/public_members/{{username}} Accept: application/json @@ -405,7 +393,6 @@ Accept: application/json "members_allowed_repository_creation_type" : "all" } - ### Update an organization membership for the authenticated user PATCH https://api.github.com/user/memberships/orgs/{{org}} Content-Type: application/json @@ -415,7 +402,6 @@ Accept: application/json "state" : "active" } - ### Update the access a fine-grained personal access token has to organization resources ## Example of revoking a fine-grained personal access token. POST https://api.github.com/orgs/{{org}}/personal-access-tokens/{{pat_id}} @@ -426,7 +412,6 @@ Accept: application/json "action" : "revoke" } - ### Update the access to organization resources via fine-grained personal access tokens ## Example of revoking a fine-grained personal access token. POST https://api.github.com/orgs/{{org}}/personal-access-tokens @@ -438,7 +423,6 @@ Accept: application/json "pat_ids" : [ 1296269, 1296280 ] } - ### Update an organization webhook PATCH https://api.github.com/orgs/{{org}}/hooks/{{hook_id}} Content-Type: application/json @@ -449,7 +433,6 @@ Accept: application/json "events" : [ "pull_request" ] } - ### Update a webhook configuration for an organization ## Update an existing webhook PATCH https://api.github.com/orgs/{{org}}/hooks/{{hook_id}}/config diff --git a/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http b/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http index e292eba33e7d..f846ff9e1ddb 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ProjectsApi.http @@ -10,7 +10,6 @@ Accept: application/json "permission" : "write" } - ### Create a project card ## Create a new card POST https://api.github.com/projects/columns/{{column_id}}/cards @@ -21,7 +20,6 @@ Accept: application/json "note" : "Add payload for delete Project column" } - ### Create a project column POST https://api.github.com/projects/{{project_id}}/columns Content-Type: application/json @@ -31,7 +29,6 @@ Accept: application/json "name" : "Remaining tasks" } - ### Create a user project ## Create a new project POST https://api.github.com/user/projects @@ -43,7 +40,6 @@ Accept: application/json "body" : "A board to manage my personal projects." } - ### Create an organization project POST https://api.github.com/orgs/{{org}}/projects Content-Type: application/json @@ -54,7 +50,6 @@ Accept: application/json "body" : "High-level roadmap for the upcoming year." } - ### Create a repository project POST https://api.github.com/repos/{{owner}}/{{repo}}/projects Content-Type: application/json @@ -65,7 +60,6 @@ Accept: application/json "body" : "Developer documentation project for the developer site." } - ### Delete a project DELETE https://api.github.com/projects/{{project_id}} Accept: application/json @@ -129,7 +123,6 @@ Accept: application/json "position" : "bottom" } - ### Move a project column ## Move the column to the end of the board POST https://api.github.com/projects/columns/{{column_id}}/moves @@ -140,7 +133,6 @@ Accept: application/json "position" : "last" } - ### Remove user as a collaborator DELETE https://api.github.com/projects/{{project_id}}/collaborators/{{username}} Accept: application/json @@ -157,7 +149,6 @@ Accept: application/json "organization_permission" : "write" } - ### Update an existing project card ## Change the note on the card PATCH https://api.github.com/projects/columns/cards/{{card_id}} @@ -168,7 +159,6 @@ Accept: application/json "note" : "Add payload for delete Project column" } - ### Update an existing project column ## Rename the project column PATCH https://api.github.com/projects/columns/{{column_id}} diff --git a/samples/client/github/jetbrains/http/client/Apis/PullsApi.http b/samples/client/github/jetbrains/http/client/Apis/PullsApi.http index 771f91e2c4cc..a8aa1a8c5697 100644 --- a/samples/client/github/jetbrains/http/client/Apis/PullsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/PullsApi.http @@ -15,7 +15,6 @@ Accept: application/json "base" : "master" } - ### Create a reply for a review comment POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/comments/{{comment_id}}/replies Content-Type: application/json @@ -25,7 +24,6 @@ Accept: application/json "body" : "Great stuff!" } - ### Create a review for a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews Content-Type: application/json @@ -42,7 +40,6 @@ Accept: application/json } ] } - ### Create a review comment for a pull request ## Example for a multi-line comment POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/comments @@ -59,7 +56,6 @@ Accept: application/json "side" : "RIGHT" } - ### Delete a pending review for a pull request DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}} Accept: application/json @@ -78,7 +74,6 @@ Accept: application/json "event" : "DISMISS" } - ### Get a pull request GET https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}} Accept: application/json @@ -133,7 +128,6 @@ Accept: application/json "commit_message" : "Add a new value to the merge_method enum" } - ### Remove requested reviewers from a pull request DELETE https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/requested_reviewers Content-Type: application/json @@ -144,7 +138,6 @@ Accept: application/json "team_reviewers" : [ "justice-league" ] } - ### Request reviewers for a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/requested_reviewers Content-Type: application/json @@ -155,7 +148,6 @@ Accept: application/json "team_reviewers" : [ "justice-league" ] } - ### Submit a review for a pull request POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}}/events Content-Type: application/json @@ -166,7 +158,6 @@ Accept: application/json "event" : "REQUEST_CHANGES" } - ### Update a pull request PATCH https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}} Content-Type: application/json @@ -179,7 +170,6 @@ Accept: application/json "base" : "master" } - ### Update a pull request branch PUT https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/update-branch Content-Type: application/json @@ -189,7 +179,6 @@ Accept: application/json "expected_head_sha" : "6dcb09b5b57875f334f61aebed695e2e4193db5e" } - ### Update a review for a pull request PUT https://api.github.com/repos/{{owner}}/{{repo}}/pulls/{{pull_number}}/reviews/{{review_id}} Content-Type: application/json @@ -199,7 +188,6 @@ Accept: application/json "body" : "This is close to perfect! Please address the suggested inline change. And add more about this." } - ### Update a review comment for a pull request PATCH https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http b/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http index ee8988b6f6e5..462ec99696c8 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ReactionsApi.http @@ -9,7 +9,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for an issue POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/{{issue_number}}/reactions Content-Type: application/json @@ -19,7 +18,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for an issue comment POST https://api.github.com/repos/{{owner}}/{{repo}}/issues/comments/{{comment_id}}/reactions Content-Type: application/json @@ -29,7 +27,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for a pull request review comment POST https://api.github.com/repos/{{owner}}/{{repo}}/pulls/comments/{{comment_id}}/reactions Content-Type: application/json @@ -39,7 +36,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for a release POST https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/reactions Content-Type: application/json @@ -49,7 +45,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for a team discussion comment POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions Content-Type: application/json @@ -59,7 +54,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for a team discussion comment (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}}/reactions Content-Type: application/json @@ -69,7 +63,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for a team discussion POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/reactions Content-Type: application/json @@ -79,7 +72,6 @@ Accept: application/json "content" : "heart" } - ### Create reaction for a team discussion (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/reactions Content-Type: application/json @@ -89,7 +81,6 @@ Accept: application/json "content" : "heart" } - ### Delete a commit comment reaction DELETE https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}}/reactions/{{reaction_id}} diff --git a/samples/client/github/jetbrains/http/client/Apis/ReposApi.http b/samples/client/github/jetbrains/http/client/Apis/ReposApi.http index b716053bf20c..41aaedd252a2 100644 --- a/samples/client/github/jetbrains/http/client/Apis/ReposApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/ReposApi.http @@ -13,7 +13,6 @@ Accept: application/json "apps" : [ "octoapp" ] } - ### Add a repository collaborator ## Add a collaborator with triage permissions PUT https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username}} @@ -24,7 +23,6 @@ Accept: application/json "permission" : "triage" } - ### Add status check contexts ## Example adding status checks to a branch protection rule POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks/contexts @@ -35,7 +33,6 @@ Accept: application/json "contexts" : [ "continuous-integration/travis-ci", "continuous-integration/jenkins" ] } - ### Add team access restrictions ## Example adding a team in a branch protection rule POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/teams @@ -46,7 +43,6 @@ Accept: application/json "teams" : [ "justice-league" ] } - ### Add user access restrictions ## Example adding a user in a branch protection rule POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users @@ -57,7 +53,6 @@ Accept: application/json "users" : [ "octocat" ] } - ### Cancel a GitHub Pages deployment POST https://api.github.com/repos/{{owner}}/{{repo}}/pages/deployments/{{pages_deployment_id}}/cancel Accept: application/json @@ -91,7 +86,6 @@ Accept: application/json "is_alphanumeric" : true } - ### Create a commit comment POST https://api.github.com/repos/{{owner}}/{{repo}}/commits/{{commit_sha}}/comments Content-Type: application/json @@ -104,7 +98,6 @@ Accept: application/json "line" : 1 } - ### Create commit signature protection POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_signatures Accept: application/json @@ -121,7 +114,6 @@ Accept: application/json "context" : "continuous-integration/jenkins" } - ### Create a deploy key POST https://api.github.com/repos/{{owner}}/{{repo}}/keys Content-Type: application/json @@ -133,7 +125,6 @@ Accept: application/json "read_only" : true } - ### Create a deployment ## Simple example POST https://api.github.com/repos/{{owner}}/{{repo}}/deployments @@ -146,6 +137,7 @@ Accept: application/json "description" : "Deploy request from hubot" } + ### Create a deployment ## Advanced example POST https://api.github.com/repos/{{owner}}/{{repo}}/deployments @@ -160,7 +152,6 @@ Accept: application/json "required_contexts" : [ "ci/janky", "security/brakeman" ] } - ### Create a deployment branch policy ## Example of a wildcard name pattern POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies @@ -171,6 +162,7 @@ Accept: application/json "name" : "release/*" } + ### Create a deployment branch policy ## Example of a single branch name pattern POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies @@ -182,6 +174,7 @@ Accept: application/json "type" : "branch" } + ### Create a deployment branch policy ## Example of a single tag name pattern POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies @@ -193,7 +186,6 @@ Accept: application/json "type" : "tag" } - ### Create a custom deployment protection rule on an environment POST https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment_protection_rules Content-Type: application/json @@ -203,7 +195,6 @@ Accept: application/json "integration_id" : 5 } - ### Create a deployment status POST https://api.github.com/repos/{{owner}}/{{repo}}/deployments/{{deployment_id}}/statuses Content-Type: application/json @@ -216,7 +207,6 @@ Accept: application/json "description" : "Deployment finished successfully." } - ### Create a repository dispatch event POST https://api.github.com/repos/{{owner}}/{{repo}}/dispatches Content-Type: application/json @@ -230,7 +220,6 @@ Accept: application/json } } - ### Create a repository for the authenticated user POST https://api.github.com/user/repos Content-Type: application/json @@ -245,7 +234,6 @@ Accept: application/scim+json "is_template" : true } - ### Create a fork POST https://api.github.com/repos/{{owner}}/{{repo}}/forks Content-Type: application/json @@ -258,7 +246,6 @@ Accept: application/scim+json "default_branch_only" : true } - ### Create an organization repository POST https://api.github.com/orgs/{{org}}/repos Content-Type: application/json @@ -274,7 +261,6 @@ Accept: application/json "has_wiki" : true } - ### Create or update custom property values for a repository PATCH https://api.github.com/repos/{{owner}}/{{repo}}/properties/values Content-Type: application/json @@ -293,7 +279,6 @@ Accept: application/json } ] } - ### Create or update an environment PUT https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}} Content-Type: application/json @@ -315,7 +300,6 @@ Accept: application/json } } - ### Create or update file contents ## Example for creating a file PUT https://api.github.com/repos/{{owner}}/{{repo}}/contents/{{path}} @@ -331,6 +315,7 @@ Accept: application/json "content" : "bXkgbmV3IGZpbGUgY29udGVudHM=" } + ### Create or update file contents ## Example for updating a file PUT https://api.github.com/repos/{{owner}}/{{repo}}/contents/{{path}} @@ -347,7 +332,6 @@ Accept: application/json "sha" : "95b966ae1c166bd92f8ae7d1c313e738c731dfc3" } - ### Create an organization repository ruleset POST https://api.github.com/orgs/{{org}}/rulesets Content-Type: application/json @@ -382,7 +366,6 @@ Accept: application/json } ] } - ### Create a GitHub Pages deployment POST https://api.github.com/repos/{{owner}}/{{repo}}/pages/deployments Content-Type: application/json @@ -397,7 +380,6 @@ Accept: application/scim+json "preview" : false } - ### Create a GitHub Pages site POST https://api.github.com/repos/{{owner}}/{{repo}}/pages Content-Type: application/json @@ -410,7 +392,6 @@ Accept: application/json } } - ### Create a release POST https://api.github.com/repos/{{owner}}/{{repo}}/releases Content-Type: application/json @@ -426,7 +407,6 @@ Accept: application/json "generate_release_notes" : false } - ### Create a repository ruleset POST https://api.github.com/repos/{{owner}}/{{repo}}/rulesets Content-Type: application/json @@ -456,7 +436,6 @@ Accept: application/json } ] } - ### Create a tag protection state for a repository POST https://api.github.com/repos/{{owner}}/{{repo}}/tags/protection Content-Type: application/json @@ -466,7 +445,6 @@ Accept: application/json "pattern" : "v1.*" } - ### Create a repository using a template POST https://api.github.com/repos/{{template_owner}}/{{template_repo}}/generate Content-Type: application/json @@ -480,7 +458,6 @@ Accept: application/json "private" : false } - ### Create a repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks Content-Type: application/json @@ -497,7 +474,6 @@ Accept: application/json } } - ### Decline a repository invitation DELETE https://api.github.com/user/repository_invitations/{{invitation_id}} Accept: application/json @@ -556,7 +532,6 @@ Accept: application/json "sha" : "329688480d39049927147c162b9d2deaf885005f" } - ### Delete a repository invitation DELETE https://api.github.com/repos/{{owner}}/{{repo}}/invitations/{{invitation_id}} @@ -633,7 +608,6 @@ Accept: application/json "configuration_file_path" : ".github/custom_release_config.yml" } - ### Get a repository GET https://api.github.com/repos/{{owner}}/{{repo}} Accept: application/json @@ -1022,7 +996,6 @@ Accept: application/json "commit_message" : "Shipped cool_feature!" } - ### Sync a fork branch with the upstream repository POST https://api.github.com/repos/{{owner}}/{{repo}}/merge-upstream Content-Type: application/json @@ -1032,7 +1005,6 @@ Accept: application/json "branch" : "main" } - ### Ping a repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/pings Accept: application/json @@ -1051,7 +1023,6 @@ Accept: application/json "apps" : [ "my-app" ] } - ### Remove a repository collaborator DELETE https://api.github.com/repos/{{owner}}/{{repo}}/collaborators/{{username}} Accept: application/json @@ -1066,7 +1037,6 @@ Accept: application/json "contexts" : [ "continuous-integration/jenkins" ] } - ### Remove status check protection DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks @@ -1080,7 +1050,6 @@ Accept: application/json "teams" : [ "octocats" ] } - ### Remove user access restrictions ## Example removing a user in a branch protection rule DELETE https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users @@ -1091,7 +1060,6 @@ Accept: application/json "users" : [ "octocat" ] } - ### Rename a branch POST https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/rename Content-Type: application/json @@ -1101,7 +1069,6 @@ Accept: application/json "new_name" : "my_renamed_branch" } - ### Replace all repository topics PUT https://api.github.com/repos/{{owner}}/{{repo}}/topics Content-Type: application/json @@ -1111,7 +1078,6 @@ Accept: application/json "names" : [ "octocat", "atom", "electron", "api" ] } - ### Request a GitHub Pages build POST https://api.github.com/repos/{{owner}}/{{repo}}/pages/builds Accept: application/json @@ -1129,7 +1095,6 @@ Accept: application/json "apps" : [ "octoapp" ] } - ### Set status check contexts ## Example updating status checks for a branch protection rule PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks/contexts @@ -1140,7 +1105,6 @@ Accept: application/json "contexts" : [ "continuous-integration/travis-ci" ] } - ### Set team access restrictions ## Example replacing a team in a branch protection rule PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/teams @@ -1151,7 +1115,6 @@ Accept: application/json "teams" : [ "justice-league" ] } - ### Set user access restrictions ## Example replacing a user in a branch protection rule PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/restrictions/users @@ -1162,7 +1125,6 @@ Accept: application/json "users" : [ "octocat" ] } - ### Test the push repository webhook POST https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/tests Accept: application/json @@ -1178,7 +1140,6 @@ Accept: application/json "new_name" : "octorepo" } - ### Update a repository PATCH https://api.github.com/repos/{{owner}}/{{repo}} Content-Type: application/json @@ -1194,7 +1155,6 @@ Accept: application/json "has_wiki" : true } - ### Update branch protection PUT https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection Content-Type: application/json @@ -1234,7 +1194,6 @@ Accept: application/json "allow_fork_syncing" : true } - ### Update a commit comment PATCH https://api.github.com/repos/{{owner}}/{{repo}}/comments/{{comment_id}} Content-Type: application/json @@ -1244,7 +1203,6 @@ Accept: application/json "body" : "Nice change" } - ### Update a deployment branch policy PUT https://api.github.com/repos/{{owner}}/{{repo}}/environments/{{environment_name}}/deployment-branch-policies/{{branch_policy_id}} Content-Type: application/json @@ -1254,7 +1212,6 @@ Accept: application/json "name" : "release/*" } - ### Update information about a GitHub Pages site PUT https://api.github.com/repos/{{owner}}/{{repo}}/pages Content-Type: application/json @@ -1269,7 +1226,6 @@ Accept: application/scim+json } } - ### Update a repository invitation ## Example request body PATCH https://api.github.com/repos/{{owner}}/{{repo}}/invitations/{{invitation_id}} @@ -1280,7 +1236,6 @@ Accept: application/json "permissions" : "write" } - ### Update an organization repository ruleset PUT https://api.github.com/orgs/{{org}}/rulesets/{{ruleset_id}} Content-Type: application/json @@ -1315,7 +1270,6 @@ Accept: application/json } ] } - ### Update pull request review protection PATCH https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_pull_request_reviews Content-Type: application/json @@ -1338,7 +1292,6 @@ Accept: application/json "require_last_push_approval" : true } - ### Update a release PATCH https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}} Content-Type: application/json @@ -1353,7 +1306,6 @@ Accept: application/json "prerelease" : false } - ### Update a release asset PATCH https://api.github.com/repos/{{owner}}/{{repo}}/releases/assets/{{asset_id}} Content-Type: application/json @@ -1364,7 +1316,6 @@ Accept: application/json "label" : "Mac binary" } - ### Update a repository ruleset PUT https://api.github.com/repos/{{owner}}/{{repo}}/rulesets/{{ruleset_id}} Content-Type: application/json @@ -1394,7 +1345,6 @@ Accept: application/json } ] } - ### Update status check protection PATCH https://api.github.com/repos/{{owner}}/{{repo}}/branches/{{branch}}/protection/required_status_checks Content-Type: application/json @@ -1405,7 +1355,6 @@ Accept: application/json "contexts" : [ "continuous-integration/travis-ci" ] } - ### Update a repository webhook PATCH https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}} Content-Type: application/json @@ -1416,7 +1365,6 @@ Accept: application/json "add_events" : [ "pull_request" ] } - ### Update a webhook configuration for a repository ## Example of updating content type and URL PATCH https://api.github.com/repos/{{owner}}/{{repo}}/hooks/{{hook_id}}/config @@ -1428,7 +1376,6 @@ Accept: application/json "url" : "https://example.com/webhook" } - ### Upload a release asset POST https://api.github.com/repos/{{owner}}/{{repo}}/releases/{{release_id}}/assets?name={{name}}&label={{label}} Content-Type: application/octet-stream diff --git a/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http b/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http index 42ccfe0f7b4d..c017cea15965 100644 --- a/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/SecurityAdvisoriesApi.http @@ -26,7 +26,6 @@ Accept: application/json "cwe_ids" : [ "CWE-123" ] } - ### Create a repository security advisory POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories Content-Type: application/json @@ -56,6 +55,7 @@ Accept: application/json } ] } + ### Create a repository security advisory POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories Content-Type: application/json @@ -85,6 +85,7 @@ Accept: application/json } ] } + ### Create a repository security advisory POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories Content-Type: application/json @@ -100,7 +101,6 @@ Accept: application/json } ] } - ### Request a CVE for a repository security advisory POST https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}}/cve Accept: application/json @@ -139,6 +139,7 @@ Accept: application/json "state" : "published" } + ### Update a repository security advisory ## To add a credit to an advisory, send the whole array of values. PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} @@ -152,6 +153,7 @@ Accept: application/json } ] } + ### Update a repository security advisory ## To add vulnerable versions, include existing versions in the array. PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} @@ -160,6 +162,7 @@ Accept: application/json + ### Update a repository security advisory ## Example of an invalid state transition, from `published` to `draft`. PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} @@ -170,6 +173,7 @@ Accept: application/json "state" : "draft" } + ### Update a repository security advisory ## Severity cannot be updated when the CVSS is already set. PATCH https://api.github.com/repos/{{owner}}/{{repo}}/security-advisories/{{ghsa_id}} diff --git a/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http b/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http index fcd6183fbb6d..a128aef65e8d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/TeamsApi.http @@ -14,7 +14,6 @@ Accept: application/json "role" : "maintainer" } - ### Add or update team membership for a user (Legacy) ## Assign the member role for a user in a team PUT https://api.github.com/teams/{{team_id}}/memberships/{{username}} @@ -25,7 +24,6 @@ Accept: application/json "role" : "member" } - ### Add or update team project permissions ## Updates the permissions for the team to write for the project PUT https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/projects/{{project_id}} @@ -36,7 +34,6 @@ Accept: application/json "permission" : "write" } - ### Add or update team project permissions (Legacy) ## Example of setting permission to read PUT https://api.github.com/teams/{{team_id}}/projects/{{project_id}} @@ -47,7 +44,6 @@ Accept: application/json "permission" : "read" } - ### Add or update team repository permissions ## Adding a team to an organization repository with the write role PUT https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/repos/{{owner}}/{{repo}} @@ -57,7 +53,6 @@ Content-Type: application/json "permission" : "push" } - ### Add or update team repository permissions (Legacy) ## Example of setting permission to pull PUT https://api.github.com/teams/{{team_id}}/repos/{{owner}}/{{repo}} @@ -68,7 +63,6 @@ Accept: application/json "permission" : "push" } - ### Check team permissions for a project GET https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/projects/{{project_id}} Accept: application/json @@ -98,7 +92,6 @@ Accept: application/json "privacy" : "closed" } - ### Create a discussion comment POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments Content-Type: application/json @@ -108,7 +101,6 @@ Accept: application/json "body" : "Do you like apples?" } - ### Create a discussion comment (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments Content-Type: application/json @@ -118,7 +110,6 @@ Accept: application/json "body" : "Do you like apples?" } - ### Create a discussion POST https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions Content-Type: application/json @@ -129,7 +120,6 @@ Accept: application/json "body" : "Hi! This is an area for us to collaborate as a team." } - ### Create a discussion (Legacy) POST https://api.github.com/teams/{{team_id}}/discussions Content-Type: application/json @@ -140,7 +130,6 @@ Accept: application/json "body" : "Hi! This is an area for us to collaborate as a team." } - ### Delete a discussion comment DELETE https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}}/comments/{{comment_number}} @@ -290,7 +279,6 @@ Accept: application/json "body" : "Do you like pineapples?" } - ### Update a discussion comment (Legacy) PATCH https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}}/comments/{{comment_number}} Content-Type: application/json @@ -300,7 +288,6 @@ Accept: application/json "body" : "Do you like pineapples?" } - ### Update a discussion PATCH https://api.github.com/orgs/{{org}}/teams/{{team_slug}}/discussions/{{discussion_number}} Content-Type: application/json @@ -310,7 +297,6 @@ Accept: application/json "title" : "Welcome to our first team post" } - ### Update a discussion (Legacy) PATCH https://api.github.com/teams/{{team_id}}/discussions/{{discussion_number}} Content-Type: application/json @@ -320,7 +306,6 @@ Accept: application/json "title" : "Welcome to our first team post" } - ### Update a team PATCH https://api.github.com/orgs/{{org}}/teams/{{team_slug}} Content-Type: application/json @@ -333,7 +318,6 @@ Accept: application/json "notification_setting" : "notifications_enabled" } - ### Update a team (Legacy) PATCH https://api.github.com/teams/{{team_id}} Content-Type: application/json diff --git a/samples/client/github/jetbrains/http/client/Apis/UsersApi.http b/samples/client/github/jetbrains/http/client/Apis/UsersApi.http index 3fcb3d530a5c..0dbfbff2f47d 100644 --- a/samples/client/github/jetbrains/http/client/Apis/UsersApi.http +++ b/samples/client/github/jetbrains/http/client/Apis/UsersApi.http @@ -10,7 +10,6 @@ Accept: application/json "emails" : [ "octocat@github.com", "mona@github.com", "octocat@octocat.org" ] } - ### Add social accounts for the authenticated user ## Adding multiple social accounts POST https://api.github.com/user/social_accounts @@ -21,7 +20,6 @@ Accept: application/json "account_urls" : [ "https://facebook.com/GitHub", "https://www.youtube.com/@GitHub" ] } - ### Block a user PUT https://api.github.com/user/blocks/{{username}} Accept: application/json @@ -47,7 +45,6 @@ Accept: application/json "armored_public_key" : "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1\n\nmQINBFnZ2ZIBEADQ2Z7Z7\n-----END PGP PUBLIC KEY BLOCK-----" } - ### Create a public SSH key for the authenticated user POST https://api.github.com/user/keys Content-Type: application/json @@ -58,7 +55,6 @@ Accept: application/json "key" : "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234" } - ### Create a SSH signing key for the authenticated user POST https://api.github.com/user/ssh_signing_keys Content-Type: application/json @@ -69,7 +65,6 @@ Accept: application/json "title" : "ssh-rsa AAAAB3NzaC1yc2EAAA" } - ### Delete an email address for the authenticated user ## Example deleting multiple email accounts DELETE https://api.github.com/user/emails @@ -80,7 +75,6 @@ Accept: application/json "emails" : [ "octocat@github.com", "mona@github.com" ] } - ### Delete a GPG key for the authenticated user DELETE https://api.github.com/user/gpg_keys/{{gpg_key_id}} Accept: application/json @@ -99,7 +93,6 @@ Accept: application/json "account_urls" : [ "https://facebook.com/GitHub", "https://www.youtube.com/@GitHub" ] } - ### Delete an SSH signing key for the authenticated user DELETE https://api.github.com/user/ssh_signing_keys/{{ssh_signing_key_id}} Accept: application/json @@ -206,7 +199,6 @@ Accept: application/json "visibility" : "private" } - ### Unblock a user DELETE https://api.github.com/user/blocks/{{username}} Accept: application/json diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http index 28eaf4904564..709dda0b85ef 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ClassicCheckoutSDKApi.http @@ -25,6 +25,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Create a payment session ## Set up a payment session with the option to store card details POST https://checkout-test.adyen.com/v71/paymentSession @@ -52,6 +53,7 @@ X-API-Key: {{apiKey}} "sdkVersion": "1.7.0" } + ### Create a payment session ## Set up a payment session (iOS) POST https://checkout-test.adyen.com/v71/paymentSession @@ -77,6 +79,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Create a payment session ## Split a payment between a sub-merchant and a platform account POST https://checkout-test.adyen.com/v71/paymentSession @@ -116,6 +119,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Create a payment session ## Set up a payment session (Web) POST https://checkout-test.adyen.com/v71/paymentSession @@ -141,7 +145,6 @@ X-API-Key: {{apiKey}} "sdkVersion": "1.9.5" } - ### Verify a payment result ## Verify payment results POST https://checkout-test.adyen.com/v71/payments/result diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http index 26baf8929985..a51e7531a350 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/DonationsApi.http @@ -26,6 +26,7 @@ X-API-Key: {{apiKey}} "shopperInteraction": "ContAuth" } + ### Start a transaction for donations ## Start a donation transaction with a token POST https://checkout-test.adyen.com/v71/donations diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http index 70a422d188c7..512658e181be 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/ModificationsApi.http @@ -15,7 +15,6 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - ### Update an authorised amount ## Update the amount of an authorised payment POST https://checkout-test.adyen.com/v71/payments/{{paymentPspReference}}/amountUpdates @@ -34,7 +33,6 @@ X-API-Key: {{apiKey}} "reference": "YOUR_UNIQUE_REFERENCE" } - ### Cancel an authorised payment ## Cancel payment using a PSP reference POST https://checkout-test.adyen.com/v71/payments/{{paymentPspReference}}/cancels @@ -49,7 +47,6 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - ### Capture an authorised payment POST https://checkout-test.adyen.com/v71/payments/{{paymentPspReference}}/captures Content-Type: application/json @@ -72,7 +69,6 @@ X-API-Key: {{apiKey}} } } - ### Refund a captured payment ## Refund a payment POST https://checkout-test.adyen.com/v71/payments/{{paymentPspReference}}/refunds @@ -91,7 +87,6 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - ### Refund or cancel a payment ## Reverse (cancel or refund) a payment POST https://checkout-test.adyen.com/v71/payments/{{paymentPspReference}}/reversals diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http index 297799561459..332b6d4da2f2 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/OrdersApi.http @@ -17,7 +17,6 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - ### Cancel an order POST https://checkout-test.adyen.com/v71/orders/cancel Content-Type: application/json @@ -34,7 +33,6 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - ### Get the balance of a gift card ## Get gift card balance specifying amount of 10 EUR POST https://checkout-test.adyen.com/v71/paymentMethods/balance @@ -57,6 +55,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Get the balance of a gift card ## Get gift card balance specifying amount of 100 EUR POST https://checkout-test.adyen.com/v71/paymentMethods/balance diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http index f0b6739d39c3..7e26db43b155 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentLinksApi.http @@ -17,7 +17,6 @@ X-API-Key: {{apiKey}} "status": "expired" } - ### Create a payment link POST https://checkout-test.adyen.com/v71/paymentLinks Content-Type: application/json diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http index 63bd17a420db..563894fcacc0 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/PaymentsApi.http @@ -20,6 +20,7 @@ X-API-Key: {{apiKey}} "cardNumber": "411111" } + ### Get the list of brands on the card ## Get a list of brands on a card specifying your supported card brands POST https://checkout-test.adyen.com/v71/cardDetails @@ -35,7 +36,6 @@ X-API-Key: {{apiKey}} "supportedBrands": ["visa","mc","amex"] } - ### Get a list of available payment methods ## Get available payment methods POST https://checkout-test.adyen.com/v71/paymentMethods @@ -49,6 +49,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Get a list of available payment methods ## Get payment methods based on the country and amount POST https://checkout-test.adyen.com/v71/paymentMethods @@ -68,6 +69,7 @@ X-API-Key: {{apiKey}} } } + ### Get a list of available payment methods ## Get payment methods including stored card details POST https://checkout-test.adyen.com/v71/paymentMethods @@ -87,7 +89,6 @@ X-API-Key: {{apiKey}} "shopperReference": "YOUR_SHOPPER_REFERENCE" } - ### Start a transaction ## Make an Apple Pay payment POST https://checkout-test.adyen.com/v71/payments @@ -111,6 +112,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Make a card payment with 3D Secure 2 native authentication POST https://checkout-test.adyen.com/v71/payments @@ -165,6 +167,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Make a card payment with 3D Secure redirect authentication POST https://checkout-test.adyen.com/v71/payments @@ -202,6 +205,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Make a card payment with unencrypted card details POST https://checkout-test.adyen.com/v71/payments @@ -229,6 +233,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Make a card payment POST https://checkout-test.adyen.com/v71/payments @@ -255,6 +260,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Tokenize card details for one-off payments POST https://checkout-test.adyen.com/v71/payments @@ -285,6 +291,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Make a Google Pay payment POST https://checkout-test.adyen.com/v71/payments @@ -308,6 +315,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YourMerchantAccount" } + ### Start a transaction ## Make an iDEAL payment POST https://checkout-test.adyen.com/v71/payments @@ -331,6 +339,7 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } + ### Start a transaction ## Make a Klarna payment POST https://checkout-test.adyen.com/v71/payments @@ -377,6 +386,7 @@ X-API-Key: {{apiKey}} "lineItems": ["{quantity=1, amountExcludingTax=331, taxPercentage=2100, description=Shoes, id=Item #1, taxAmount=69, amountIncludingTax=400, productUrl=URL_TO_PURCHASED_ITEM, imageUrl=URL_TO_PICTURE_OF_PURCHASED_ITEM}","{quantity=2, amountExcludingTax=248, taxPercentage=2100, description=Socks, id=Item #2, taxAmount=52, amountIncludingTax=300, productUrl=URL_TO_PURCHASED_ITEM, imageUrl=URL_TO_PICTURE_OF_PURCHASED_ITEM}"] } + ### Start a transaction ## Make a one-off payment with a token and CVV POST https://checkout-test.adyen.com/v71/payments @@ -404,6 +414,7 @@ X-API-Key: {{apiKey}} "recurringProcessingModel": "CardOnFile" } + ### Start a transaction ## Make a subscription card payment with a token POST https://checkout-test.adyen.com/v71/payments @@ -430,6 +441,7 @@ X-API-Key: {{apiKey}} "recurringProcessingModel": "Subscription" } + ### Start a transaction ## Split a payment between balance accounts POST https://checkout-test.adyen.com/v71/payments @@ -462,6 +474,7 @@ X-API-Key: {{apiKey}} "splits": ["{amount={value=39600}, type=BalanceAccount, account=BA00000000000000000000001, reference=Your reference for the sale amount, description=Your description for the sale amount}","{amount={value=400}, type=Commission, reference=Your reference for the commission, description=Your description for the commission}","{type=PaymentFee, account=BA00000000000000000000001, reference=Your reference for the fees, description=Your description for the fees}"] } + ### Start a transaction ## Split a payment in a Classic Platforms integration POST https://checkout-test.adyen.com/v71/payments @@ -489,6 +502,7 @@ X-API-Key: {{apiKey}} "splits": ["{amount={value=6000}, type=MarketPlace, account=151272963, reference=6124145, description=Porcelain Doll: Eliza (20cm)}","{amount={value=200}, type=Commission, reference=6124146}"] } + ### Start a transaction ## Tokenize card details for a subscription POST https://checkout-test.adyen.com/v71/payments @@ -519,7 +533,6 @@ X-API-Key: {{apiKey}} "merchantAccount": "YOUR_MERCHANT_ACCOUNT" } - ### Submit details for a payment ## Submit the redirect result POST https://checkout-test.adyen.com/v71/payments/details @@ -535,6 +548,7 @@ X-API-Key: {{apiKey}} } } + ### Submit details for a payment ## Submit 3D Secure 2 authentication result POST https://checkout-test.adyen.com/v71/payments/details @@ -550,7 +564,6 @@ X-API-Key: {{apiKey}} } } - ### Create a payment session POST https://checkout-test.adyen.com/v71/sessions Content-Type: application/json @@ -570,6 +583,7 @@ X-API-Key: {{apiKey}} "countryCode": "NL" } + ### Create a payment session ## Create a payment session including Klarna fields POST https://checkout-test.adyen.com/v71/sessions @@ -615,6 +629,7 @@ X-API-Key: {{apiKey}} "lineItems": ["{quantity=1, amountExcludingTax=331, taxPercentage=2100, description=Shoes, id=Item #1, taxAmount=69, amountIncludingTax=400, productUrl=URL_TO_PURCHASED_ITEM, imageUrl=URL_TO_PICTURE_OF_PURCHASED_ITEM}","{quantity=2, amountExcludingTax=248, taxPercentage=2100, description=Socks, id=Item #2, taxAmount=52, amountIncludingTax=300, productUrl=URL_TO_PURCHASED_ITEM, imageUrl=URL_TO_PICTURE_OF_PURCHASED_ITEM}"] } + ### Create a payment session ## Tokenize card details for one-off payments without asking shopper POST https://checkout-test.adyen.com/v71/sessions @@ -639,6 +654,7 @@ X-API-Key: {{apiKey}} "recurringProcessingModel": "CardOnFile" } + ### Create a payment session ## Split a payment between balance accounts POST https://checkout-test.adyen.com/v71/sessions diff --git a/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http b/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http index 492eaa2519c6..3dd04d2c08bd 100644 --- a/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http +++ b/samples/client/jetbrains/adyen/adyen/http/client/Apis/UtilityApi.http @@ -15,7 +15,6 @@ X-API-Key: {{apiKey}} "merchantIdentifier": "YOUR_MERCHANT_ID" } - ### Create originKey values for domains ## Get origin keys POST https://checkout-test.adyen.com/v71/originKeys diff --git a/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http b/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http index adb2e1f7c810..57b9ac3aef86 100644 --- a/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http +++ b/samples/client/jetbrains/adyen/checkoutbasic/http/client/Apis/PaymentsApi.http @@ -27,6 +27,7 @@ Accept: application/json "channel" : "iOS" } + ### Make a payment ## GooglePay request POST https://checkout-test.adyen.com/v71/payments @@ -46,6 +47,7 @@ Accept: application/json "channel" : "Android" } + ### Make a payment ## Example with a merchant account that doesn't exist POST https://checkout-test.adyen.com/v71/payments diff --git a/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http b/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http index bb7e4384a9e7..f2e6d38c6ee7 100644 --- a/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http +++ b/samples/client/petstore/jetbrains/http/client/Apis/PetApi.http @@ -16,7 +16,6 @@ Accept: application/json "status": "" } - ### Deletes a pet DELETE http://petstore.swagger.io/v2/pet/{{petId}} api_key: {{apiKey}} @@ -53,7 +52,6 @@ Accept: application/json "status": "" } - ### Updates a pet in the store with form data POST http://petstore.swagger.io/v2/pet/{{petId}} Content-Type: application/x-www-form-urlencoded diff --git a/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http b/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http index 3def7c20cfc9..204aa5a61673 100644 --- a/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http +++ b/samples/client/petstore/jetbrains/http/client/Apis/UserApi.http @@ -16,7 +16,6 @@ api_key: {{apiKey}} "userStatus": "" } - ### Creates list of users with given input array POST http://petstore.swagger.io/v2/user/createWithArray Content-Type: application/json @@ -26,7 +25,6 @@ api_key: {{apiKey}} } - ### Creates list of users with given input array POST http://petstore.swagger.io/v2/user/createWithList Content-Type: application/json @@ -36,7 +34,6 @@ api_key: {{apiKey}} } - ### Delete user DELETE http://petstore.swagger.io/v2/user/{{username}} api_key: {{apiKey}} From 9e6fcf25d869de15fa7f41858ecb2998723a28ac Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 21:51:19 +0200 Subject: [PATCH 11/42] Escape streamed examples in annotations --- .../openapitools/codegen/DefaultCodegen.java | 1 + .../mustache/EscapeJavaStringLambda.java | 79 +++++++++++++++++++ .../Java/libraries/feign/pojo.mustache | 2 +- .../Java/libraries/jersey2/pojo.mustache | 4 +- .../Java/libraries/jersey3/pojo.mustache | 4 +- .../Java/libraries/native/pojo.mustache | 4 +- .../Java/libraries/okhttp-gson/pojo.mustache | 4 +- .../Java/libraries/restclient/pojo.mustache | 4 +- .../Java/libraries/resttemplate/pojo.mustache | 4 +- .../Java/libraries/webclient/pojo.mustache | 4 +- .../src/main/resources/Java/pojo.mustache | 4 +- .../resources/JavaInflector/pojo.mustache | 2 +- .../resources/JavaJaxRS/cxf-cdi/pojo.mustache | 2 +- .../resources/JavaJaxRS/cxf-ext/pojo.mustache | 2 +- .../resources/JavaJaxRS/cxf/pojo.mustache | 4 +- .../JavaJaxRS/libraries/jersey3/pojo.mustache | 2 +- .../main/resources/JavaJaxRS/pojo.mustache | 2 +- .../JavaJaxRS/resteasy/eap/pojo.mustache | 2 +- .../JavaJaxRS/resteasy/pojo.mustache | 2 +- .../resources/JavaJaxRS/spec/pojo.mustache | 6 +- .../JavaSpring/lombokAnnotation.mustache | 2 +- .../main/resources/JavaSpring/pojo.mustache | 4 +- .../resources/java-camel-server/pojo.mustache | 4 +- .../java-micronaut/common/model/pojo.mustache | 4 +- .../resources/java-msf4j-server/pojo.mustache | 2 +- .../main/resources/java-pkmst/pojo.mustache | 2 +- .../java-undertow-server/pojo.mustache | 2 +- .../kotlin-spring/interfaceOptVar.mustache | 4 +- .../kotlin-spring/interfaceReqVar.mustache | 4 +- .../mustache/EscapeJavaStringLambdaTest.java | 61 ++++++++++++++ 30 files changed, 184 insertions(+), 43 deletions(-) create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambda.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambdaTest.java diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 2b6a78050ae0..7e5d00b2699b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -476,6 +476,7 @@ protected ImmutableMap.Builder addMustacheLambdas() { .put("forwardslash", new ForwardSlashLambda()) .put("backslash", new BackSlashLambda()) .put("doublequote", new DoubleQuoteLambda()) + .put("escapeJavaString", new EscapeJavaStringLambda()) .put("indented", new IndentedLambda()) .put("indented_8", new IndentedLambda(8, " ", false, false)) .put("indented_12", new IndentedLambda(12, " ", false, false)) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambda.java new file mode 100644 index 000000000000..f86fcfe1a0ef --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambda.java @@ -0,0 +1,79 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Escapes fragment output for use inside Java-compatible string literals. + */ +public class EscapeJavaStringLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new EscapeJavaStringWriter(writer)); + } + + private static class EscapeJavaStringWriter extends ForwardingWriter { + private EscapeJavaStringWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + String replacement = replacementFor(cbuf[i]); + if (replacement != null) { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writer.write(replacement); + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + + private String replacementFor(char ch) { + switch (ch) { + case '\\': + return "\\\\"; + case '"': + return "\\\""; + case '\n': + return "\\n"; + case '\r': + return "\\r"; + case '\t': + return "\\t"; + case '\b': + return "\\b"; + case '\f': + return "\\f"; + default: + return null; + } + } + } +} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache index 94762e3d96ca..66f890f5450d 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/pojo.mustache @@ -201,7 +201,7 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache index c773a321fe17..f7214c98cf50 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pojo.mustache @@ -206,10 +206,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache index c773a321fe17..f7214c98cf50 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey3/pojo.mustache @@ -206,10 +206,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache index e58d8b0c4ad3..ccf9c5ff4cee 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/native/pojo.mustache @@ -197,10 +197,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache index 794a9f0beee3..a302b2b47617 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/pojo.mustache @@ -167,10 +167,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache index 6d6ae3ed425e..8d557a6824f3 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/restclient/pojo.mustache @@ -227,10 +227,10 @@ public {{>sealed}}class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#v {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache index 01ed5911a789..5774d6a05c8d 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/pojo.mustache @@ -227,10 +227,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache index a8fba6b35e02..8811b3517a2a 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pojo.mustache @@ -227,10 +227,10 @@ public {{>sealed}}class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#v {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/Java/pojo.mustache b/modules/openapi-generator/src/main/resources/Java/pojo.mustache index bd25b3f1120c..c232bd233cbf 100644 --- a/modules/openapi-generator/src/main/resources/Java/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/Java/pojo.mustache @@ -230,10 +230,10 @@ public class {{classname}} {{#parent}}extends {{{.}}} {{/parent}}{{#vendorExtens {{/useBeanValidation}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}, description = "{{{description}}}") {{/swagger2AnnotationLibrary}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache index 3c6ded3ddcdb..4ef3db4c1478 100644 --- a/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaInflector/pojo.mustache @@ -40,7 +40,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens } {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache index 7a1f51362a88..232759d9eb0f 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-cdi/pojo.mustache @@ -39,7 +39,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens } {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache index 66e832a6c41c..81d0aa7134c2 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf-ext/pojo.mustache @@ -40,7 +40,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}}{{#vendorExtensi {{#withXml}} @XmlElement(name="{{baseName}}"{{#required}}, required = {{required}}{{/required}}) {{/withXml}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}}{{#useBeanValidation}} + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}}{{#useBeanValidation}} @Valid{{/useBeanValidation}}{{/isFile}}{{/isString}}{{/isDateTime}}{{/isDate}}{{/isPrimitiveType}} {{#isDate}} @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache index 37bded611249..43f6d675afdc 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/cxf/pojo.mustache @@ -47,10 +47,10 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}}{{#vendorExtensi @XmlElement(name="{{baseName}}"{{#required}}, required = {{required}}{{/required}}) {{/withXml}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#swagger2AnnotationLibrary}} - @Schema(description = "{{{description}}}"{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#required}}, requiredMode = Schema.RequiredMode.REQUIRED{{/required}}) + @Schema(description = "{{{description}}}"{{#hasExample}}, example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"{{/hasExample}}{{#required}}, requiredMode = Schema.RequiredMode.REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}}{{#useBeanValidation}} @Valid diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache index 293c80d461d6..4123a72bbb60 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/libraries/jersey3/pojo.mustache @@ -88,7 +88,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#jackson}} @JsonProperty(value = "{{baseName}}"{{#isReadOnly}}, access = JsonProperty.Access.READ_ONLY{{/isReadOnly}}{{#isWriteOnly}}, access = JsonProperty.Access.WRITE_ONLY{{/isWriteOnly}}) {{/jackson}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}") + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache index 3d94eb8f2faa..17be0caafa95 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/pojo.mustache @@ -88,7 +88,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#jackson}} @JsonProperty(value = "{{baseName}}"{{#isReadOnly}}, access = JsonProperty.Access.READ_ONLY{{/isReadOnly}}{{#isWriteOnly}}, access = JsonProperty.Access.WRITE_ONLY{{/isWriteOnly}}) {{/jackson}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache index b708549e2836..2bff5f988a90 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/eap/pojo.mustache @@ -31,7 +31,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{/maximum}} **/ {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache index 5aa59ecb66b3..7654c9574994 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/resteasy/pojo.mustache @@ -31,7 +31,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{/maximum}} **/ {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") {{#useBeanValidation}}{{>beanValidation}}{{^isPrimitiveType}}{{^isDate}}{{^isDateTime}}{{^isString}}{{^isFile}} @Valid {{/isFile}}{{/isString}}{{/isDateTime}}{{/isDate}}{{/isPrimitiveType}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache index 0b611a58e378..06cc0dcef3c1 100644 --- a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/pojo.mustache @@ -164,9 +164,9 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens @Deprecated {{/deprecated}} {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}}{{#useSwaggerAnnotations}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{/useSwaggerAnnotations}}{{#useSwaggerV3Annotations}} - @Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useSwaggerV3Annotations}}{{#useMicroProfileOpenAPIAnnotations}} - @org.eclipse.microprofile.openapi.annotations.media.Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useMicroProfileOpenAPIAnnotations}} + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}"){{/useSwaggerAnnotations}}{{#useSwaggerV3Annotations}} + @Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useSwaggerV3Annotations}}{{#useMicroProfileOpenAPIAnnotations}} + @org.eclipse.microprofile.openapi.annotations.media.Schema({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}description = "{{{description}}}"{{#deprecated}}, deprecated = true{{/deprecated}}){{/useMicroProfileOpenAPIAnnotations}} {{#jackson}}@JsonProperty({{#required}}required = {{required}}, value = {{/required}}"{{baseName}}"){{/jackson}} {{#vendorExtensions.x-is-jackson-optional-nullable}} public JsonNullable<{{{datatypeWithEnum}}}> {{getter}}() { diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache index 658e7935e14d..6412401c18e0 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/lombokAnnotation.mustache @@ -21,7 +21,7 @@ {{/required}} {{/useBeanValidation}} {{#swagger2AnnotationLibrary}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{#jackson}}{{>jackson_annotations}}{{/jackson}} {{/lombok.Data}} diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache index 519f41e92c69..f1a15c141bcd 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache @@ -227,10 +227,10 @@ public {{>sealed}}class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}} {{#required}}@NotNull{{/required}} {{/useBeanValidation}} {{#swagger2AnnotationLibrary}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#deprecated}} @Deprecated diff --git a/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache b/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache index d274421f121c..02f1c5522fb5 100644 --- a/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-camel-server/pojo.mustache @@ -232,10 +232,10 @@ public class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}}{{^parent}} {{#required}}@NotNull{{/required}} {{/useBeanValidation}} {{#swagger2AnnotationLibrary}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}{{#deprecated}}, deprecated = true{{/deprecated}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/swagger2AnnotationLibrary}} {{#swagger1AnnotationLibrary}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") {{/swagger1AnnotationLibrary}} {{#jackson}} @JsonProperty("{{baseName}}") diff --git a/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache b/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache index 375584405645..cd8d3f53a7c5 100644 --- a/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-micronaut/common/model/pojo.mustache @@ -174,10 +174,10 @@ Declare the class with extends and implements */ {{>common/model/beanValidation}}{{! }}{{#generateSwagger1Annotations}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") {{/generateSwagger1Annotations}} {{#generateSwagger2Annotations}} - @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambdaExample}}{{/lambdaExample}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) + @Schema(name = "{{{baseName}}}"{{#isReadOnly}}, accessMode = Schema.AccessMode.READ_ONLY{{/isReadOnly}}{{#hasExample}}, example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"{{/hasExample}}{{#description}}, description = "{{{.}}}"{{/description}}, requiredMode = {{#required}}Schema.RequiredMode.REQUIRED{{/required}}{{^required}}Schema.RequiredMode.NOT_REQUIRED{{/required}}) {{/generateSwagger2Annotations}} {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} diff --git a/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache b/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache index 0774cecbdfc6..bc8fe9c4ee61 100644 --- a/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-msf4j-server/pojo.mustache @@ -81,7 +81,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} {{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}value = "{{{description}}}") public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; } diff --git a/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache b/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache index 8d2eb233f090..70732ac080f6 100644 --- a/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-pkmst/pojo.mustache @@ -87,7 +87,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens {{#vendorExtensions.x-extra-annotation}} {{{vendorExtensions.x-extra-annotation}}} {{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}") {{#useBeanValidation}}{{>beanValidation}}{{/useBeanValidation}} public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; } diff --git a/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache b/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache index 3b89395f2cf5..cb1756e7eb07 100644 --- a/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/java-undertow-server/pojo.mustache @@ -20,7 +20,7 @@ public class {{classname}} {{#parent}}extends {{{.}}}{{/parent}} {{#vendorExtens } {{#vendorExtensions.x-extra-annotation}}{{{vendorExtensions.x-extra-annotation}}}{{/vendorExtensions.x-extra-annotation}} - @ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{{required}}}, {{/required}}value = "{{{description}}}") + @ApiModelProperty({{#hasExample}}example = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}", {{/hasExample}}{{#required}}required = {{{required}}}, {{/required}}value = "{{{description}}}") @JsonProperty("{{baseName}}") public {{{datatypeWithEnum}}} {{getter}}() { return {{name}}; diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache index 44a29830b6c0..9bc46e938a87 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceOptVar.mustache @@ -1,5 +1,5 @@ {{#swagger2AnnotationLibrary}} - @get:Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} - @get:ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} + @get:Schema({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} + @get:ApiModelProperty({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} {{{.}}}{{/vendorExtensions.x-field-extra-annotation}} {{#isInherited}}override {{/isInherited}}{{>modelMutable}} {{{name}}}: {{#isEnum}}{{classname}}.{{nameInPascalCase}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}? {{^discriminator}}= {{{defaultValue}}}{{^defaultValue}}null{{/defaultValue}}{{/discriminator}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache index a020587fd28b..68b962a41592 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-spring/interfaceReqVar.mustache @@ -1,5 +1,5 @@ {{#swagger2AnnotationLibrary}} - @get:Schema({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} - @get:ApiModelProperty({{#hasExample}}example = "{{#lambdaExample}}{{/lambdaExample}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} + @get:Schema({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}{{#required}}requiredMode = Schema.RequiredMode.REQUIRED, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}} + @get:ApiModelProperty({{#hasExample}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeInNormalString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeInNormalString}}{{/lambdaRemoveLineBreak}}", {{/hasExample}}{{#required}}required = {{required}}, {{/required}}{{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}{{#vendorExtensions.x-field-extra-annotation}} {{{.}}}{{/vendorExtensions.x-field-extra-annotation}} {{#isInherited}}override {{/isInherited}}{{>modelMutable}} {{{name}}}: {{#isEnum}}{{classname}}.{{nameInPascalCase}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambdaTest.java new file mode 100644 index 000000000000..83c454032faa --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJavaStringLambdaTest.java @@ -0,0 +1,61 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class EscapeJavaStringLambdaTest { + + @Test + public void escapesJavaStringCharactersAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("\"alpha\\"); + invocation.getArgument(0).write("beta\n"); + invocation.getArgument(0).write("gamma\r\t\b\f"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeJavaStringLambda().execute(fragment, output); + + assertEquals(output.toString(), "\\\"alpha\\\\beta\\ngamma\\r\\t\\b\\f"); + } + + @Test + public void preservesTextWithoutJavaStringCharacters() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha beta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeJavaStringLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha beta"); + } +} From fbea63f9ef044d9aa0bf037a04dd6dad371e5d0b Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:02:06 +0200 Subject: [PATCH 12/42] Escape streamed examples in Postman JSON --- docs/templating.md | 2 + .../openapitools/codegen/DefaultCodegen.java | 1 + .../mustache/EscapeJsonStringLambda.java | 95 +++++++++++++++++++ .../postman-collection/request.mustache | 4 +- .../postman/PostmanCollectionCodegenTest.java | 24 +++++ .../mustache/EscapeJsonStringLambdaTest.java | 62 ++++++++++++ .../QueryParamExampleEscaping.yaml | 26 +++++ 7 files changed, 212 insertions(+), 2 deletions(-) create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambda.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambdaTest.java create mode 100644 modules/openapi-generator/src/test/resources/3_0/postman-collection/QueryParamExampleEscaping.yaml diff --git a/docs/templating.md b/docs/templating.md index 6de1780d1715..d42abd03c992 100644 --- a/docs/templating.md +++ b/docs/templating.md @@ -829,6 +829,8 @@ Many generators (*those extending DefaultCodegen*) come with a small set of lamb - `forwardslash` - Replaces all occurrences of `\/`, `\` and `//` in a fragment by `/`. - `backslash` - Replaces all occurrences `/` in a fragment by `\`. - `doublequote` - Prepends `"` to the beginning and appends `"` to the end of a fragment. +- `escapeJavaString` - Escapes fragment output for use inside Java-compatible string literals. +- `escapeJsonString` - Escapes fragment output for use inside JSON string values. - `indented` - Prepends 4 spaces indention from second line of a fragment on. First line will be indented by Mustache. - `indented_8` - Prepends 8 spaces indention from second line of a fragment on. First line will be indented by Mustache. - `indented_12` - Prepends 12 spaces indention from second line of a fragment on. First line will be indented by Mustache. diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 7e5d00b2699b..98ed3467c1b3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -477,6 +477,7 @@ protected ImmutableMap.Builder addMustacheLambdas() { .put("backslash", new BackSlashLambda()) .put("doublequote", new DoubleQuoteLambda()) .put("escapeJavaString", new EscapeJavaStringLambda()) + .put("escapeJsonString", new EscapeJsonStringLambda()) .put("indented", new IndentedLambda()) .put("indented_8", new IndentedLambda(8, " ", false, false)) .put("indented_12", new IndentedLambda(12, " ", false, false)) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambda.java new file mode 100644 index 000000000000..87e0dd2d52aa --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambda.java @@ -0,0 +1,95 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Escapes fragment output for use inside JSON string values. + */ +public class EscapeJsonStringLambda implements Mustache.Lambda { + private static final char[] HEX = "0123456789abcdef".toCharArray(); + + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new EscapeJsonStringWriter(writer)); + } + + private static class EscapeJsonStringWriter extends ForwardingWriter { + private EscapeJsonStringWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + String replacement = replacementFor(cbuf[i]); + if (replacement != null) { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writer.write(replacement); + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + + private String replacementFor(char ch) { + switch (ch) { + case '\\': + return "\\\\"; + case '"': + return "\\\""; + case '\n': + return "\\n"; + case '\r': + return "\\r"; + case '\t': + return "\\t"; + case '\b': + return "\\b"; + case '\f': + return "\\f"; + default: + if (ch < 0x20) { + return unicodeEscape(ch); + } + return null; + } + } + + private String unicodeEscape(char ch) { + return new String(new char[]{ + '\\', + 'u', + HEX[(ch >> 12) & 0xf], + HEX[(ch >> 8) & 0xf], + HEX[(ch >> 4) & 0xf], + HEX[ch & 0xf] + }); + } + } +} diff --git a/modules/openapi-generator/src/main/resources/postman-collection/request.mustache b/modules/openapi-generator/src/main/resources/postman-collection/request.mustache index 897c5d2843e1..93b5307748de 100644 --- a/modules/openapi-generator/src/main/resources/postman-collection/request.mustache +++ b/modules/openapi-generator/src/main/resources/postman-collection/request.mustache @@ -42,7 +42,7 @@ {{#queryParams}} { "key": "{{paramName}}", - "value": "{{#lambdaExample}}{{/lambdaExample}}", + "value": "{{#lambda.escapeJsonString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJsonString}}", "description": "{{{description}}}", "disabled": {{#required}}false{{/required}}{{^required}}true{{/required}} }{{^-last}},{{/-last}} @@ -50,4 +50,4 @@ ] }, "description": "{{{notes}}}" -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/postman/PostmanCollectionCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/postman/PostmanCollectionCodegenTest.java index c0312506c251..9d6fb1cda30d 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/postman/PostmanCollectionCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/postman/PostmanCollectionCodegenTest.java @@ -118,6 +118,30 @@ public void testBasicGenerationJson() throws IOException { assertFileContains(path, "\"schema\": \"https://schema.getpostman.com/json/collection/v2.1.0/collection.json\""); } + @Test + public void testQueryParamExampleIsJsonEscaped() throws IOException { + File output = Files.createTempDirectory("postmantest_").toFile(); + output.deleteOnExit(); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("postman-collection") + .setInputSpec("src/test/resources/3_0/postman-collection/QueryParamExampleEscaping.yaml") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + + final ClientOptInput clientOptInput = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + List files = generator.opts(clientOptInput).generate(); + + files.forEach(File::deleteOnExit); + + Path path = Paths.get(output + "/postman.json"); + assertFileExists(path); + + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.readTree(path.toFile()); + assertFileContains(path, "quote \\\" slash \\\\ line\\nnext"); + } + @Test public void testTagDescriptionIsJsonEscaped() throws IOException { File output = Files.createTempDirectory("postmantest_").toFile(); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambdaTest.java new file mode 100644 index 000000000000..38492bf119b3 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeJsonStringLambdaTest.java @@ -0,0 +1,62 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class EscapeJsonStringLambdaTest { + + @Test + public void escapesJsonStringCharactersAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("\"alpha\\"); + invocation.getArgument(0).write("beta\n"); + invocation.getArgument(0).write("gamma\r\t\b\f"); + invocation.getArgument(0).write(new char[]{0x01, 0x1f}); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeJsonStringLambda().execute(fragment, output); + + assertEquals(output.toString(), "\\\"alpha\\\\beta\\ngamma\\r\\t\\b\\f\\u0001\\u001f"); + } + + @Test + public void preservesTextWithoutJsonStringCharacters() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha beta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeJsonStringLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha beta"); + } +} diff --git a/modules/openapi-generator/src/test/resources/3_0/postman-collection/QueryParamExampleEscaping.yaml b/modules/openapi-generator/src/test/resources/3_0/postman-collection/QueryParamExampleEscaping.yaml new file mode 100644 index 000000000000..7b2290216eb7 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_0/postman-collection/QueryParamExampleEscaping.yaml @@ -0,0 +1,26 @@ +openapi: 3.0.0 +info: + title: Query Param Example Escaping + version: '1.0' +servers: + - url: 'http://localhost:5001' +paths: + /search: + get: + summary: Search + operationId: search + tags: + - basic + parameters: + - name: filter + in: query + required: false + schema: + type: string + example: "quote \" slash \\ line\nnext" + responses: + '200': + description: OK +tags: + - name: basic + description: Basic tag From c30077761b1a72b1948f23f6415e74e15bd63b78 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:06:01 +0200 Subject: [PATCH 13/42] Write streamed templates atomically --- .../openapitools/codegen/TemplateManager.java | 28 ++++++-- .../codegen/TemplateManagerTest.java | 64 +++++++++++++++++++ 2 files changed, 85 insertions(+), 7 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java index 87f27581aede..bd55f5675123 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java @@ -239,12 +239,16 @@ public File writeToFile(String filename, String contents) throws IOException { */ public File writeTemplateToFile(String filename, Map data, String template) throws IOException { File outputFile = Paths.get(filename).toFile(); + if (this.options.isSkipOverwrite() && outputFile.exists()) { + LOGGER.info("skip overwrite of file {}", filename); + return outputFile; + } if (this.options.isMinimalUpdate()) { String tempFilename = filename + ".tmp"; - File tempFile = null; + File tempFile = Paths.get(tempFilename).toFile(); try { - tempFile = writeTemplateToFileRaw(tempFilename, data, template); + writeTemplateToFileRaw(tempFilename, data, template); if (!filesEqual(tempFile, outputFile)) { LOGGER.info("writing file {}", filename); Files.move(tempFile.toPath(), outputFile.toPath(), StandardCopyOption.REPLACE_EXISTING); @@ -263,7 +267,21 @@ public File writeTemplateToFile(String filename, Map data, Strin } } else { LOGGER.info("writing file {}", filename); - outputFile = writeTemplateToFileRaw(filename, data, template); + String tempFilename = filename + ".tmp"; + File tempFile = Paths.get(tempFilename).toFile(); + try { + writeTemplateToFileRaw(tempFilename, data, template); + Files.move(tempFile.toPath(), outputFile.toPath(), StandardCopyOption.REPLACE_EXISTING); + tempFile = null; + } finally { + if (tempFile != null && tempFile.exists()) { + try { + Files.delete(tempFile.toPath()); + } catch (Exception ex) { + LOGGER.error("Error removing temporary file {}", tempFile, ex); + } + } + } } return outputFile; @@ -330,10 +348,6 @@ private File writeToFileRaw(String filename, byte[] contents) throws IOException private File writeTemplateToFileRaw(String filename, Map data, String template) throws IOException { File output = Paths.get(filename).toFile(); - if (this.options.isSkipOverwrite() && output.exists()) { - LOGGER.info("skip overwrite of file {}", filename); - return output; - } if (output.getParent() != null && !new File(output.getParent()).exists()) { File parent = Paths.get(output.getParent()).toFile(); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java index a29423f3faeb..f8777e57500e 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java @@ -64,6 +64,29 @@ public void writeTemplate(TemplatingExecutor executor, Map bundl } } + static class FailingWriterTemplateEngineAdapter implements TemplatingEngineAdapter { + @Override + public String getIdentifier() { + return "failing-writer"; + } + + @Override + public String[] getFileExtensions() { + return new String[]{"failwriter"}; + } + + @Override + public String compileTemplate(TemplatingExecutor executor, Map bundle, String templateFile) { + throw new AssertionError("compileTemplate should not be called by TemplateManager.write"); + } + + @Override + public void writeTemplate(TemplatingExecutor executor, Map bundle, String templateFile, Writer writer) throws IOException { + writer.write("partial contents"); + throw new IOException("render failed"); + } + } + @Test public void loadTemplateContents() { TemplateManagerOptions opts = new TemplateManagerOptions(false, false); @@ -153,6 +176,47 @@ public void writeUsesTemplateEngineWriterPath() throws IOException { } } + @Test + public void writePreservesExistingFileWhenStreamingTemplateFails() throws IOException { + TemplateManagerOptions opts = new TemplateManagerOptions(false, false); + TemplateManager manager = new TemplateManager(opts, new FailingWriterTemplateEngineAdapter(), new TemplatePathLocator[]{locator}); + Map data = new HashMap<>(); + + Path target = Files.createTempDirectory("test-templatemanager"); + try { + File output = new File(target.toFile(), "simple.txt"); + Files.write(output.toPath(), "original data".getBytes(StandardCharsets.UTF_8)); + + IOException thrown = expectThrows(IOException.class, () -> manager.write(data, "simple.failwriter", output)); + + assertEquals(thrown.getMessage(), "render failed"); + assertEquals(Files.readAllLines(output.toPath()).get(0), "original data"); + assertFalse(new File(target.toFile(), "simple.txt.tmp").exists()); + } finally { + target.toFile().delete(); + } + } + + @Test + public void writeDoesNotLeaveOutputFileWhenStreamingTemplateFails() throws IOException { + TemplateManagerOptions opts = new TemplateManagerOptions(false, false); + TemplateManager manager = new TemplateManager(opts, new FailingWriterTemplateEngineAdapter(), new TemplatePathLocator[]{locator}); + Map data = new HashMap<>(); + + Path target = Files.createTempDirectory("test-templatemanager"); + try { + File output = new File(target.toFile(), "simple.txt"); + + IOException thrown = expectThrows(IOException.class, () -> manager.write(data, "simple.failwriter", output)); + + assertEquals(thrown.getMessage(), "render failed"); + assertFalse(output.exists()); + assertFalse(new File(target.toFile(), "simple.txt.tmp").exists()); + } finally { + target.toFile().delete(); + } + } + @Test(enabled = false) public void writeUsingMustacheAdapterSkipsNonMustache() throws IOException { TemplateManagerOptions opts = new TemplateManagerOptions(false, false); From 79dc32357e08df3751e2780e4f76b2484c8b3df8 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:10:24 +0200 Subject: [PATCH 14/42] Guard C# Functions doc examples --- .../csharp-functions/api_doc.mustache | 2 +- .../CSharpFunctionsServerCodegenTest.java | 34 +++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache index 05046cd63564..428086cfa59f 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache @@ -72,7 +72,7 @@ namespace Example {{/useHttpClient}} {{#allParams}} {{#isPrimitiveType}} - var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} + var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}{{^lambdaExample}}{{#hasExample}}{{{example}}}{{/hasExample}}{{^hasExample}}default({{{dataType}}}){{/hasExample}}{{/lambdaExample}}; // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} {{/isPrimitiveType}} {{^isPrimitiveType}} var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java index 5b21fde2c5ba..2e6e6243edda 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java @@ -16,10 +16,13 @@ package org.openapitools.codegen.csharpnetcorefunctions; +import org.openapitools.codegen.CodegenParameter; import org.openapitools.codegen.languages.CSharpFunctionsServerCodegen; import org.testng.Assert; import org.testng.annotations.Test; +import java.io.StringWriter; + public class CSharpFunctionsServerCodegenTest { @Test @@ -72,4 +75,35 @@ public void libraryBuildUsesDefaultVirtualOperations() { Assert.assertEquals(codegen.additionalProperties().get("operationModifier"), "virtual"); Assert.assertEquals(codegen.additionalProperties().get("generateBody"), Boolean.TRUE); } + + @Test + public void primitiveParametersExposeLambdaExampleForDocs() throws Exception { + final CSharpFunctionsServerCodegen codegen = new CSharpFunctionsServerCodegen(); + + CodegenParameter stringParam = new CodegenParameter(); + stringParam.paramName = "name"; + stringParam.dataType = "string"; + stringParam.baseType = "string"; + stringParam.isPrimitiveType = true; + stringParam.isString = true; + + codegen.setParameterExampleValue(stringParam); + + StringWriter stringExample = new StringWriter(); + stringParam.getLambdaExample().execute(null, stringExample); + Assert.assertEquals(stringExample.toString(), "\"name_example\""); + + CodegenParameter integerParam = new CodegenParameter(); + integerParam.paramName = "count"; + integerParam.dataType = "int"; + integerParam.baseType = "int"; + integerParam.isPrimitiveType = true; + integerParam.isInteger = true; + + codegen.setParameterExampleValue(integerParam); + + StringWriter integerExample = new StringWriter(); + integerParam.getLambdaExample().execute(null, integerExample); + Assert.assertEquals(integerExample.toString(), "56"); + } } From 51b5a40537b84ad650fa2a8a5b89d6baef6db73a Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:15:23 +0200 Subject: [PATCH 15/42] Include JSON examples in parameter equality --- .../codegen/CodegenParameter.java | 3 +- .../codegen/CodegenParameterTest.java | 39 +++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java index a6c0864676e6..3674963f651f 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java @@ -295,7 +295,7 @@ public int hashCode() { isBodyParam, isContainer, isCollectionFormatMulti, isPrimitiveType, isModel, isExplode, baseName, paramName, dataType, datatypeWithEnum, dataFormat, collectionFormat, description, unescapedDescription, baseType, containerType, containerTypeMapped, defaultValue, - enumDefaultValue, enumName, style, isDeepObject, isMatrix, isAllowEmptyValue, example, examples, + enumDefaultValue, enumName, style, isDeepObject, isMatrix, isAllowEmptyValue, example, exampleJsonNode, examples, isFormStyle, isSpaceDelimited, isPipeDelimited, jsonSchema, isString, isNumeric, isInteger, isLong, isNumber, isFloat, isDouble, isDecimal, isByteArray, isBinary, isBoolean, isDate, isDateTime, isUuid, isUri, isEmail, isPassword, @@ -397,6 +397,7 @@ public boolean equals(Object o) { Objects.equals(isMatrix, that.isMatrix) && Objects.equals(isAllowEmptyValue, that.isAllowEmptyValue) && Objects.equals(example, that.example) && + Objects.equals(exampleJsonNode, that.exampleJsonNode) && Objects.equals(examples, that.examples) && Objects.equals(jsonSchema, that.jsonSchema) && Objects.equals(_enum, that._enum) && diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java new file mode 100644 index 000000000000..44dab06e59d3 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java @@ -0,0 +1,39 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen; + +import org.testng.annotations.Test; + +import java.util.Collections; + +import static org.testng.Assert.assertNotEquals; + +public class CodegenParameterTest { + + @Test + public void equalityIncludesJsonExampleNode() { + final DefaultCodegen codegen = new DefaultCodegen(); + CodegenParameter codegenParameter = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER); + CodegenParameter codegenParameter2 = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER); + + codegen.setParameterExampleValue(codegenParameter, Collections.singletonMap("value", "first")); + codegen.setParameterExampleValue(codegenParameter2, Collections.singletonMap("value", "second")); + + assertNotEquals(codegenParameter, codegenParameter2); + assertNotEquals(codegenParameter.hashCode(), codegenParameter2.hashCode()); + } +} From aeaa7d24ee1e21ec3c0eb38ff4be9d554d009681 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:19:52 +0200 Subject: [PATCH 16/42] Stream Kotlin Spring line break removal lambda --- .../codegen/languages/KotlinSpringServerCodegen.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java index 619d44868dc4..9cd381588ebf 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java @@ -33,6 +33,7 @@ import org.openapitools.codegen.model.ModelsMap; import org.openapitools.codegen.model.OperationMap; import org.openapitools.codegen.model.OperationsMap; +import org.openapitools.codegen.templating.mustache.RemoveLineBreakLambda; import org.openapitools.codegen.templating.mustache.SpringHttpStatusLambda; import org.openapitools.codegen.utils.ModelUtils; import org.openapitools.codegen.utils.URLPathUtils; @@ -1001,8 +1002,7 @@ public void processOpts() { // add lambda for mustache templates additionalProperties.put("lambdaEscapeInNormalString", (Mustache.Lambda) (fragment, writer) -> writer.write(fragment.execute().replaceAll("([$\"\\\\])", "\\\\$1"))); - additionalProperties.put("lambdaRemoveLineBreak", - (Mustache.Lambda) (fragment, writer) -> writer.write(fragment.execute().replaceAll("[\\r\\n]", ""))); + additionalProperties.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda()); } @Override From 2365226a7ccc42fdb6fc7f445fabeb908af5ae1b Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:23:46 +0200 Subject: [PATCH 17/42] Stream Kotlin Spring string escape lambda --- .../languages/KotlinSpringServerCodegen.java | 4 +- .../mustache/EscapeKotlinStringLambda.java | 58 ++++++++++++++++++ .../EscapeKotlinStringLambdaTest.java | 60 +++++++++++++++++++ 3 files changed, 120 insertions(+), 2 deletions(-) create mode 100644 modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambda.java create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambdaTest.java diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java index 9cd381588ebf..a18cfeee4627 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java @@ -33,6 +33,7 @@ import org.openapitools.codegen.model.ModelsMap; import org.openapitools.codegen.model.OperationMap; import org.openapitools.codegen.model.OperationsMap; +import org.openapitools.codegen.templating.mustache.EscapeKotlinStringLambda; import org.openapitools.codegen.templating.mustache.RemoveLineBreakLambda; import org.openapitools.codegen.templating.mustache.SpringHttpStatusLambda; import org.openapitools.codegen.utils.ModelUtils; @@ -1000,8 +1001,7 @@ public void processOpts() { additionalProperties.put("jackson", "true"); // add lambda for mustache templates - additionalProperties.put("lambdaEscapeInNormalString", - (Mustache.Lambda) (fragment, writer) -> writer.write(fragment.execute().replaceAll("([$\"\\\\])", "\\\\$1"))); + additionalProperties.put("lambdaEscapeInNormalString", new EscapeKotlinStringLambda()); additionalProperties.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda()); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambda.java new file mode 100644 index 000000000000..4cba8667f4bf --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambda.java @@ -0,0 +1,58 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Mustache; +import com.samskivert.mustache.Template; + +import java.io.IOException; +import java.io.Writer; + +/** + * Escapes fragment output for use inside Kotlin normal string literals. + */ +public class EscapeKotlinStringLambda implements Mustache.Lambda { + @Override + public void execute(Template.Fragment fragment, Writer writer) throws IOException { + fragment.execute(new EscapeKotlinStringWriter(writer)); + } + + private static class EscapeKotlinStringWriter extends ForwardingWriter { + private EscapeKotlinStringWriter(Writer writer) { + super(writer); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + int end = off + len; + int writeStart = off; + for (int i = off; i < end; i++) { + if (cbuf[i] == '$' || cbuf[i] == '"' || cbuf[i] == '\\') { + if (writeStart < i) { + writer.write(cbuf, writeStart, i - writeStart); + } + writer.write('\\'); + writer.write(cbuf[i]); + writeStart = i + 1; + } + } + if (writeStart < end) { + writer.write(cbuf, writeStart, end - writeStart); + } + } + } +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambdaTest.java new file mode 100644 index 000000000000..4a97230a7500 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeKotlinStringLambdaTest.java @@ -0,0 +1,60 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.templating.mustache; + +import com.samskivert.mustache.Template; +import org.testng.annotations.Test; + +import java.io.StringWriter; +import java.io.Writer; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.Mockito.doAnswer; +import static org.mockito.Mockito.mock; +import static org.testng.Assert.assertEquals; + +public class EscapeKotlinStringLambdaTest { + + @Test + public void escapesNormalStringCharactersAsFragmentStreams() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("price is $"); + invocation.getArgument(0).write("5 \"quoted\" \\ path"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeKotlinStringLambda().execute(fragment, output); + + assertEquals(output.toString(), "price is \\$5 \\\"quoted\\\" \\\\ path"); + } + + @Test + public void preservesOtherTextWithoutBuffering() throws Exception { + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write("alpha\nbeta"); + return null; + }).when(fragment).execute(any(Writer.class)); + + StringWriter output = new StringWriter(); + new EscapeKotlinStringLambda().execute(fragment, output); + + assertEquals(output.toString(), "alpha\nbeta"); + } +} From 1319521e8ce908594f0d575906f978c195cf3d43 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:29:41 +0200 Subject: [PATCH 18/42] Escape GraphQL resolver examples --- .../resolvers.mustache | 6 +- ...GraphQLNodeJSExpressServerCodegenTest.java | 56 +++++++++++++++++++ .../problematic-example.yaml | 25 +++++++++ 3 files changed, 84 insertions(+), 3 deletions(-) create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java create mode 100644 modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml diff --git a/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache b/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache index c428c89e2beb..4e8b4458644a 100644 --- a/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache +++ b/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache @@ -10,7 +10,7 @@ export default { // @return {{returnType}} {{operationId}}: ({{#allParams}}${{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) => { return { - {{#allParams}}"{{paramName}}": "{{#lambdaExample}}{{/lambdaExample}}"{{^-last}}, + {{#allParams}}"{{paramName}}": "{{#lambda.escapeJsonString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJsonString}}"{{^-last}}, {{/-last}}{{/allParams}} }; }, @@ -24,11 +24,11 @@ export default { // @return {{returnType}} {{operationId}}: ({{#allParams}}${{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) => { return { - {{#allParams}}"{{paramName}}": "{{#lambdaExample}}{{/lambdaExample}}"{{^-last}}, + {{#allParams}}"{{paramName}}": "{{#lambda.escapeJsonString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJsonString}}"{{^-last}}, {{/-last}}{{/allParams}} }; }, {{/vendorExtensions.x-is-mutation}}{{/operation}} {{/operations}} } -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java new file mode 100644 index 000000000000..b700bcbbd76d --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java @@ -0,0 +1,56 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen.graphql; + +import org.openapitools.codegen.ClientOptInput; +import org.openapitools.codegen.DefaultGenerator; +import org.openapitools.codegen.TestUtils; +import org.openapitools.codegen.config.CodegenConfigurator; +import org.testng.annotations.Test; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; + +import static org.openapitools.codegen.TestUtils.assertFileExists; + +public class GraphQLNodeJSExpressServerCodegenTest { + + @Test + public void resolverExamplesAreEscapedForJavaScriptStrings() throws IOException { + File output = Files.createTempDirectory("graphql-nodejs-express-server-test_").toFile(); + output.deleteOnExit(); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("graphql-nodejs-express-server") + .setInputSpec("src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + + final ClientOptInput clientOptInput = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + List files = generator.opts(clientOptInput).generate(); + + files.forEach(File::deleteOnExit); + + Path path = Paths.get(output + "/openapi3graphql-server/api/test_api_resolver.js"); + assertFileExists(path); + TestUtils.assertFileContains(path, "\"filter\": \"line \\\"quoted\\\" \\\\ path\\nnext\""); + } +} diff --git a/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml b/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml new file mode 100644 index 000000000000..27e19903c522 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml @@ -0,0 +1,25 @@ +openapi: 3.0.3 +info: + title: GraphQL NodeJS Express problematic example + version: 1.0.0 +paths: + /items: + get: + tags: + - test + operationId: listItems + parameters: + - name: filter + in: query + schema: + type: string + example: |- + line "quoted" \ path + next + responses: + '200': + description: ok + content: + application/json: + schema: + type: string From 9fd6442defd7e559f1b9901f765381eff5b259a9 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:33:42 +0200 Subject: [PATCH 19/42] Escape C# Functions controller examples --- .../csharp-functions/controller.mustache | 2 +- .../CSharpFunctionsServerCodegenTest.java | 20 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache index 611b7ea20a03..ca68d40c4e23 100644 --- a/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-functions/controller.mustache @@ -73,7 +73,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; + exampleJson = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java index 2e6e6243edda..679b7ccfb6cf 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcorefunctions/CSharpFunctionsServerCodegenTest.java @@ -16,12 +16,17 @@ package org.openapitools.codegen.csharpnetcorefunctions; +import com.samskivert.mustache.Mustache; import org.openapitools.codegen.CodegenParameter; import org.openapitools.codegen.languages.CSharpFunctionsServerCodegen; +import org.openapitools.codegen.templating.mustache.EscapeJavaStringLambda; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import org.testng.Assert; import org.testng.annotations.Test; import java.io.StringWriter; +import java.util.HashMap; +import java.util.Map; public class CSharpFunctionsServerCodegenTest { @@ -106,4 +111,19 @@ public void primitiveParametersExposeLambdaExampleForDocs() throws Exception { integerParam.getLambdaExample().execute(null, integerExample); Assert.assertEquals(integerExample.toString(), "56"); } + + @Test + public void controllerExamplesAreEscapedForCSharpStringLiterals() { + Map lambda = new HashMap<>(); + lambda.put("escapeJavaString", new EscapeJavaStringLambda()); + + Map context = new HashMap<>(); + context.put("lambda", lambda); + context.put("lambdaExample", new JsonOutputLambda("{\"pattern\":\"\\\\d+\",\"line\":\"first\\\\nsecond\",\"unicode\":\"\\\\u003c\"}")); + + String template = "exampleJson = \"{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}\";"; + String rendered = Mustache.compiler().compile(template).execute(context); + + Assert.assertEquals(rendered, "exampleJson = \"{\\\"pattern\\\":\\\"\\\\\\\\d+\\\",\\\"line\\\":\\\"first\\\\\\\\nsecond\\\",\\\"unicode\\\":\\\"\\\\\\\\u003c\\\"}\";"); + } } From 387d89957613feb23316944d3120801ffa36a057 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:36:21 +0200 Subject: [PATCH 20/42] Escape ASP.NET Core controller examples --- .../aspnetcore/2.0/controller.mustache | 2 +- .../aspnetcore/2.1/controller.mustache | 2 +- .../aspnetcore/3.0/controller.mustache | 2 +- .../AspNetServerCodegenTest.java | 21 +++++++++++++++++++ 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache index 871ca1074c06..3654a9deb427 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/controller.mustache @@ -49,7 +49,7 @@ namespace {{packageName}}.Controllers {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; + exampleJson = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache index 6e6ede93b5d3..029ca59035aa 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/controller.mustache @@ -73,7 +73,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; + exampleJson = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache index 8883cbed2288..64bda409f6c6 100644 --- a/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache +++ b/modules/openapi-generator/src/main/resources/aspnetcore/3.0/controller.mustache @@ -80,7 +80,7 @@ namespace {{apiPackage}} {{#returnType}} string exampleJson = null; {{#examples}} - exampleJson = "{{#lambdaEscapeNewLine}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaEscapeNewLine}}"; + exampleJson = "{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}"; {{/examples}} {{#isListCollection}}{{>listReturn}}{{/isListCollection}}{{^isListCollection}}{{#isMap}}{{>mapReturn}}{{/isMap}}{{^isMap}}{{>objectReturn}}{{/isMap}}{{/isListCollection}} {{!TODO: defaultResponse, examples, auth, consumes, produces, nickname, externalDocs, imports, security}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/AspNetServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/AspNetServerCodegenTest.java index 1e0a08968693..26c26b895591 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/AspNetServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/csharpnetcore/AspNetServerCodegenTest.java @@ -16,10 +16,16 @@ package org.openapitools.codegen.csharpnetcore; +import com.samskivert.mustache.Mustache; import org.openapitools.codegen.languages.AspNetServerCodegen; +import org.openapitools.codegen.templating.mustache.EscapeJavaStringLambda; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import org.testng.Assert; import org.testng.annotations.Test; +import java.util.HashMap; +import java.util.Map; + public class AspNetServerCodegenTest { @Test @@ -57,4 +63,19 @@ public void libraryBuildUsesDefaultVirtualOperations() { Assert.assertEquals(codegen.additionalProperties().get("operationModifier"), "virtual"); Assert.assertEquals(codegen.additionalProperties().get("generateBody"), Boolean.TRUE); } + + @Test + public void controllerExamplesAreEscapedForCSharpStringLiterals() { + Map lambda = new HashMap<>(); + lambda.put("escapeJavaString", new EscapeJavaStringLambda()); + + Map context = new HashMap<>(); + context.put("lambda", lambda); + context.put("lambdaExample", new JsonOutputLambda("{\"pattern\":\"\\\\d+\",\"line\":\"first\\\\nsecond\",\"unicode\":\"\\\\u003c\"}")); + + String template = "exampleJson = \"{{#lambda.escapeJavaString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJavaString}}\";"; + String rendered = Mustache.compiler().compile(template).execute(context); + + Assert.assertEquals(rendered, "exampleJson = \"{\\\"pattern\\\":\\\"\\\\\\\\d+\\\",\\\"line\\\":\\\"first\\\\\\\\nsecond\\\",\\\"unicode\\\":\\\"\\\\\\\\u003c\\\"}\";"); + } } From ba55b0ce435c9c38e8fd052276c42706f5bab95d Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:41:31 +0200 Subject: [PATCH 21/42] Preserve F# Giraffe streamed examples --- .../HandlerTestsHelper.mustache | 3 +-- .../fsharp/FSharpServerCodegenTest.java | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache b/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache index 767b7ccaa025..617cda29c5e2 100644 --- a/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache +++ b/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache @@ -1,7 +1,6 @@ namespace {{packageName}}.Tests open System -open System.Net open System.Net.Http open System.IO open Microsoft.AspNetCore.Builder @@ -31,7 +30,7 @@ module {{classname}}HandlerTestsHelper = {{/-first}} {{/consumes}} {{#requestBodyExamples}} - {{operationId}}Body <- WebUtility.HtmlDecode "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}" + {{operationId}}Body <- "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}" {{operationId}}Examples <- {{operationId}}Examples.Add("{{contentType}}", {{operationId}}Body) {{/requestBodyExamples}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java index e9d975e9f96f..1c09080429e6 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java @@ -16,10 +16,14 @@ package org.openapitools.codegen.fsharp; +import com.samskivert.mustache.Mustache; import org.openapitools.codegen.CodegenModel; import org.openapitools.codegen.languages.AbstractFSharpCodegen; import org.openapitools.codegen.languages.FsharpGiraffeServerCodegen; import org.openapitools.codegen.model.ModelsMap; +import org.openapitools.codegen.templating.mustache.EscapeDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.JsonOutputLambda; +import org.openapitools.codegen.templating.mustache.RemoveLineBreakLambda; import org.testng.Assert; import org.testng.annotations.Test; @@ -85,6 +89,20 @@ public void testModelImportsSpecifyNamespaceAndPackageName() throws Exception { Assert.assertEquals(modified, "MyNamespace.Model.Foo"); } + @Test + public void giraffeHandlerTestExamplesDoNotHtmlDecodeStreamedOutput() { + Map context = new HashMap<>(); + context.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda()); + context.put("lambdaEscapeDoubleQuote", new EscapeDoubleQuoteLambda()); + context.put("lambdaExample", new JsonOutputLambda("Tom & Jerry")); + context.put("operationId", ""); + + String template = "{{operationId}}Body <- \"{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}\""; + String rendered = Mustache.compiler().compile(template).execute(context); + + Assert.assertEquals(rendered, "Body <- \"Tom & Jerry\""); + } + private static class P_AbstractFSharpCodegen extends AbstractFSharpCodegen { } From 3bedd19d47120fb990d08c8cd5f4e09992bbea63 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:44:42 +0200 Subject: [PATCH 22/42] Avoid repeated prefix deletion in unique lambda --- .../codegen/templating/mustache/UniqueLambda.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java index 440c861402f5..c6a06b4ad69a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/UniqueLambda.java @@ -95,11 +95,15 @@ public void close() throws IOException { } private void writeCompleteValues() throws IOException { - int delimiterIndex = buffer.indexOf(delimiter); + int valueStart = 0; + int delimiterIndex = buffer.indexOf(delimiter, valueStart); while (delimiterIndex >= 0) { - writeUniqueValue(buffer.substring(0, delimiterIndex)); - buffer.delete(0, delimiterIndex + delimiter.length()); - delimiterIndex = buffer.indexOf(delimiter); + writeUniqueValue(buffer.substring(valueStart, delimiterIndex)); + valueStart = delimiterIndex + delimiter.length(); + delimiterIndex = buffer.indexOf(delimiter, valueStart); + } + if (valueStart > 0) { + buffer.delete(0, valueStart); } } From 342df066b4fadc961df7c26963fd032ac42c1fee Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:48:40 +0200 Subject: [PATCH 23/42] Compare minimal-update files with Commons IO --- .../openapitools/codegen/TemplateManager.java | 17 +------- .../codegen/TemplateManagerTest.java | 43 +++++++++++++++++++ 2 files changed, 45 insertions(+), 15 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java index bd55f5675123..eec4e2a9c461 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java @@ -366,21 +366,8 @@ private boolean filesEqual(File file1, File file2) throws IOException { if (file1.length() != file2.length()) return false; try (InputStream is1 = Files.newInputStream(file1.toPath()); InputStream is2 = Files.newInputStream(file2.toPath())) { - byte[] buffer1 = new byte[8192]; - byte[] buffer2 = new byte[8192]; - int read1; - while ((read1 = is1.read(buffer1)) != -1) { - int read2 = is2.read(buffer2); - if (read1 != read2) { - return false; - } - for (int i = 0; i < read1; i++) { - if (buffer1[i] != buffer2[i]) { - return false; - } - } - } - return is2.read() == -1; + return IOUtils.contentEquals(is1, is2); } } + } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java index f8777e57500e..76fa95883589 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java @@ -1,5 +1,6 @@ package org.openapitools.codegen; +import org.apache.commons.io.IOUtils; import org.openapitools.codegen.api.TemplatePathLocator; import org.openapitools.codegen.api.TemplatingEngineAdapter; import org.openapitools.codegen.api.TemplatingExecutor; @@ -10,6 +11,7 @@ import java.io.File; import java.io.IOException; +import java.io.InputStream; import java.io.InputStreamReader; import java.io.Writer; import java.nio.charset.StandardCharsets; @@ -294,6 +296,17 @@ public void minimalUpdateOnlyWritesChangedContents() throws IOException { } } + @Test + public void streamComparisonHandlesDifferentReadChunkSizes() throws IOException { + byte[] contents = new byte[20_000]; + for (int i = 0; i < contents.length; i++) { + contents[i] = (byte) (i % 251); + } + + InputStream is1 = new ShortReadInputStream(contents, contents.length); + assertTrue(IOUtils.contentEquals(is1, new ShortReadInputStream(contents, 3))); + } + @Test public void overwritesWhenSkipOverwriteFalse() throws IOException { TemplateManagerOptions opts = new TemplateManagerOptions(false, false); @@ -356,4 +369,34 @@ public void writeUsingHandlebarsAdapterSkipsNonHandlebars() throws IOException { target.toFile().delete(); } } + + private static class ShortReadInputStream extends InputStream { + private final byte[] contents; + private final int maxReadSize; + private int offset; + + private ShortReadInputStream(byte[] contents, int maxReadSize) { + this.contents = contents; + this.maxReadSize = maxReadSize; + } + + @Override + public int read() { + if (offset >= contents.length) { + return -1; + } + return contents[offset++] & 0xff; + } + + @Override + public int read(byte[] buffer, int off, int len) { + if (offset >= contents.length) { + return -1; + } + int read = Math.min(Math.min(len, maxReadSize), contents.length - offset); + System.arraycopy(contents, offset, buffer, off, read); + offset += read; + return read; + } + } } From f8d3344ce1623ed94fe8124bc5f0207353c38736 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:52:21 +0200 Subject: [PATCH 24/42] Use unique temp files for template writes --- .../openapitools/codegen/TemplateManager.java | 19 +++++++++++----- .../codegen/TemplateManagerTest.java | 22 +++++++++++++++++++ 2 files changed, 35 insertions(+), 6 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java index eec4e2a9c461..2c0c0c018bdc 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java @@ -245,10 +245,9 @@ public File writeTemplateToFile(String filename, Map data, Strin } if (this.options.isMinimalUpdate()) { - String tempFilename = filename + ".tmp"; - File tempFile = Paths.get(tempFilename).toFile(); + File tempFile = createTempFile(outputFile); try { - writeTemplateToFileRaw(tempFilename, data, template); + writeTemplateToFileRaw(tempFile.getPath(), data, template); if (!filesEqual(tempFile, outputFile)) { LOGGER.info("writing file {}", filename); Files.move(tempFile.toPath(), outputFile.toPath(), StandardCopyOption.REPLACE_EXISTING); @@ -267,10 +266,9 @@ public File writeTemplateToFile(String filename, Map data, Strin } } else { LOGGER.info("writing file {}", filename); - String tempFilename = filename + ".tmp"; - File tempFile = Paths.get(tempFilename).toFile(); + File tempFile = createTempFile(outputFile); try { - writeTemplateToFileRaw(tempFilename, data, template); + writeTemplateToFileRaw(tempFile.getPath(), data, template); Files.move(tempFile.toPath(), outputFile.toPath(), StandardCopyOption.REPLACE_EXISTING); tempFile = null; } finally { @@ -287,6 +285,15 @@ public File writeTemplateToFile(String filename, Map data, Strin return outputFile; } + private File createTempFile(File outputFile) throws IOException { + Path outputPath = outputFile.toPath().toAbsolutePath(); + Path outputDirectory = outputPath.getParent(); + Files.createDirectories(outputDirectory); + String fileName = outputPath.getFileName().toString(); + String prefix = fileName.length() < 3 ? fileName + "..." : fileName + "."; + return Files.createTempFile(outputDirectory, prefix, ".tmp").toFile(); + } + /** * Write bytes to a file * diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java index 76fa95883589..41da4e2c6b53 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/TemplateManagerTest.java @@ -178,6 +178,28 @@ public void writeUsesTemplateEngineWriterPath() throws IOException { } } + @Test + public void writeTemplatePreservesSiblingTmpFile() throws IOException { + TemplateManagerOptions opts = new TemplateManagerOptions(false, false); + TemplateManager manager = new TemplateManager(opts, new WriterOnlyTemplateEngineAdapter(), new TemplatePathLocator[]{locator}); + Map data = new HashMap<>(); + data.put("contents", "streamed contents"); + + Path target = Files.createTempDirectory("test-templatemanager"); + try { + File output = new File(target.toFile(), "simple.txt"); + File siblingTmp = new File(target.toFile(), "simple.txt.tmp"); + Files.write(siblingTmp.toPath(), "sidecar data".getBytes(StandardCharsets.UTF_8)); + + File written = manager.write(data, "simple.writer", output); + + assertEquals(Files.readAllLines(written.toPath()).get(0), "streamed contents"); + assertEquals(Files.readAllLines(siblingTmp.toPath()).get(0), "sidecar data"); + } finally { + target.toFile().delete(); + } + } + @Test public void writePreservesExistingFileWhenStreamingTemplateFails() throws IOException { TemplateManagerOptions opts = new TemplateManagerOptions(false, false); From ddc8245fed2fb4bcc25fa33d855464012b93bcc2 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 22:55:00 +0200 Subject: [PATCH 25/42] Stream HTML escaping lambda output --- .../templating/mustache/EscapeHtmlLambda.java | 32 +++++++++++++++---- .../mustache/EscapeHtmlLambdaTest.java | 20 +++++++++++- 2 files changed, 45 insertions(+), 7 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java index ac4aa563dc29..19bfbf6fbf50 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java @@ -22,6 +22,7 @@ import java.io.IOException; import java.io.Writer; +import java.nio.CharBuffer; /** * Escapes HTML-sensitive characters in a fragment. @@ -41,23 +42,42 @@ public class EscapeHtmlLambda implements Mustache.Lambda { public void execute(Template.Fragment fragment, Writer writer) throws IOException { HtmlEscapingWriter escapingWriter = new HtmlEscapingWriter(writer); fragment.execute(escapingWriter); - escapingWriter.flushBuffer(); + escapingWriter.finish(); } private static class HtmlEscapingWriter extends ForwardingWriter { - private final StringBuilder buffer = new StringBuilder(); + private char pendingHighSurrogate; private HtmlEscapingWriter(Writer writer) { super(writer); } @Override - public void write(char[] cbuf, int off, int len) { - buffer.append(cbuf, off, len); + public void write(char[] cbuf, int off, int len) throws IOException { + int start = off; + int end = off + len; + + if (pendingHighSurrogate != 0 && start < end) { + StringEscapeUtils.ESCAPE_HTML4.translate(new String(new char[]{pendingHighSurrogate, cbuf[start]}), writer); + pendingHighSurrogate = 0; + start++; + } + + if (start < end && Character.isHighSurrogate(cbuf[end - 1])) { + pendingHighSurrogate = cbuf[end - 1]; + end--; + } + + if (start < end) { + StringEscapeUtils.ESCAPE_HTML4.translate(CharBuffer.wrap(cbuf, start, end - start), writer); + } } - private void flushBuffer() throws IOException { - writer.write(StringEscapeUtils.escapeHtml4(buffer.toString())); + private void finish() throws IOException { + if (pendingHighSurrogate != 0) { + StringEscapeUtils.ESCAPE_HTML4.translate(String.valueOf(pendingHighSurrogate), writer); + pendingHighSurrogate = 0; + } } } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java index 6efee55748b1..f8c6849577fe 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambdaTest.java @@ -1,6 +1,7 @@ package org.openapitools.codegen.templating.mustache; import com.samskivert.mustache.Template; +import org.apache.commons.text.StringEscapeUtils; import org.testng.annotations.Test; import java.io.StringWriter; @@ -14,16 +15,33 @@ public class EscapeHtmlLambdaTest { @Test public void escapesHtmlCharactersAsFragmentStreams() throws Exception { + StringWriter output = new StringWriter(); Template.Fragment fragment = mock(Template.Fragment.class); doAnswer(invocation -> { invocation.getArgument(0).write("Tom & "); + assertEquals(output.toString(), "<tag attr="value">Tom & "); invocation.getArgument(0).write("Jerry"); return null; }).when(fragment).execute(any(Writer.class)); - StringWriter output = new StringWriter(); new EscapeHtmlLambda().execute(fragment, output); assertEquals(output.toString(), "<tag attr="value">Tom & Jerry</tag>"); } + + @Test + public void handlesSurrogatePairsSplitAcrossWrites() throws Exception { + String value = "\uD83D\uDE00 & copy"; + StringWriter output = new StringWriter(); + Template.Fragment fragment = mock(Template.Fragment.class); + doAnswer(invocation -> { + invocation.getArgument(0).write(value.substring(0, 6)); + invocation.getArgument(0).write(value.substring(6)); + return null; + }).when(fragment).execute(any(Writer.class)); + + new EscapeHtmlLambda().execute(fragment, output); + + assertEquals(output.toString(), StringEscapeUtils.escapeHtml4(value)); + } } From 341142e96fa9b8f9cdc7755e761ad92559a0b1fc Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 23:04:50 +0200 Subject: [PATCH 26/42] Escape static HTML response examples --- .../src/main/resources/htmlDocs/index.mustache | 2 +- .../codegen/html/StaticHtmlGeneratorTest.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache b/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache index 38f3916cd8c3..852cabadf852 100644 --- a/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache +++ b/modules/openapi-generator/src/main/resources/htmlDocs/index.mustache @@ -138,7 +138,7 @@ {{#examples}}

Example data

Content-Type: {{{contentType}}}
-
{{#lambdaExample}}{{/lambdaExample}}
+
{{#lambdaEscapeHtml}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeHtml}}
{{/examples}} {{/responses}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/html/StaticHtmlGeneratorTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/html/StaticHtmlGeneratorTest.java index 352d35abfd19..b2658fa216bf 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/html/StaticHtmlGeneratorTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/html/StaticHtmlGeneratorTest.java @@ -30,6 +30,10 @@ import org.testng.Assert; import org.testng.annotations.Test; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Paths; + public class StaticHtmlGeneratorTest { @Test @@ -70,4 +74,12 @@ public void testFromPropertyWithUnderscores() { Assert.assertEquals(property.baseName, "favorite_food"); Assert.assertEquals(property.name, "favorite_food"); } + + @Test + public void responseExamplesAreHtmlEscaped() throws Exception { + String template = new String(Files.readAllBytes(Paths.get("src/main/resources/htmlDocs/index.mustache")), StandardCharsets.UTF_8); + + Assert.assertTrue(template.contains("
{{#lambdaEscapeHtml}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeHtml}}
")); + Assert.assertFalse(template.contains("
{{#lambdaExample}}{{/lambdaExample}}
")); + } } From 00d3a48b6ee9643e5b2f042ea140317b24837a80 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 23:09:49 +0200 Subject: [PATCH 27/42] Avoid extra Postman partial newline --- .../src/main/resources/postman-collection/request.mustache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/resources/postman-collection/request.mustache b/modules/openapi-generator/src/main/resources/postman-collection/request.mustache index 93b5307748de..7781724a181f 100644 --- a/modules/openapi-generator/src/main/resources/postman-collection/request.mustache +++ b/modules/openapi-generator/src/main/resources/postman-collection/request.mustache @@ -50,4 +50,4 @@ ] }, "description": "{{{notes}}}" -} +} \ No newline at end of file From 0174836d9862001b9c0e2b12bf1fa16c7a06f367 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 23:24:48 +0200 Subject: [PATCH 28/42] Avoid hashing JSON parameter examples Keep exampleJsonNode in CodegenParameter.equals so object examples remain part of parameter equality, but omit it from hashCode to avoid deep traversal of large JSON example trees during hashing. --- .../main/java/org/openapitools/codegen/CodegenParameter.java | 2 +- .../java/org/openapitools/codegen/CodegenParameterTest.java | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java index 3674963f651f..eca9a57564a1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java @@ -295,7 +295,7 @@ public int hashCode() { isBodyParam, isContainer, isCollectionFormatMulti, isPrimitiveType, isModel, isExplode, baseName, paramName, dataType, datatypeWithEnum, dataFormat, collectionFormat, description, unescapedDescription, baseType, containerType, containerTypeMapped, defaultValue, - enumDefaultValue, enumName, style, isDeepObject, isMatrix, isAllowEmptyValue, example, exampleJsonNode, examples, + enumDefaultValue, enumName, style, isDeepObject, isMatrix, isAllowEmptyValue, example, examples, isFormStyle, isSpaceDelimited, isPipeDelimited, jsonSchema, isString, isNumeric, isInteger, isLong, isNumber, isFloat, isDouble, isDecimal, isByteArray, isBinary, isBoolean, isDate, isDateTime, isUuid, isUri, isEmail, isPassword, diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java index 44dab06e59d3..192d77d8038d 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java @@ -20,12 +20,13 @@ import java.util.Collections; +import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotEquals; public class CodegenParameterTest { @Test - public void equalityIncludesJsonExampleNode() { + public void equalityIncludesJsonExampleNodeWithoutHashingIt() { final DefaultCodegen codegen = new DefaultCodegen(); CodegenParameter codegenParameter = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER); CodegenParameter codegenParameter2 = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER); @@ -34,6 +35,6 @@ public void equalityIncludesJsonExampleNode() { codegen.setParameterExampleValue(codegenParameter2, Collections.singletonMap("value", "second")); assertNotEquals(codegenParameter, codegenParameter2); - assertNotEquals(codegenParameter.hashCode(), codegenParameter2.hashCode()); + assertEquals(codegenParameter.hashCode(), codegenParameter2.hashCode()); } } From 3cc33b2817b54b67a09556c111d504d495c6e053 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A1clav=20Haisman?= Date: Mon, 29 Jun 2026 23:26:30 +0200 Subject: [PATCH 29/42] Update modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com> --- .../src/main/java/org/openapitools/codegen/TemplateManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java index 2c0c0c018bdc..b3dcbdd59dcf 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/TemplateManager.java @@ -291,7 +291,7 @@ private File createTempFile(File outputFile) throws IOException { Files.createDirectories(outputDirectory); String fileName = outputPath.getFileName().toString(); String prefix = fileName.length() < 3 ? fileName + "..." : fileName + "."; - return Files.createTempFile(outputDirectory, prefix, ".tmp").toFile(); + return File.createTempFile(prefix, ".tmp", outputDirectory.toFile()); } /** From fd590a6837c52c89bcc6b00308fc2509b22ce012 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Mon, 29 Jun 2026 23:30:25 +0200 Subject: [PATCH 30/42] Include JSON examples in property equality Compare exampleJsonNode in CodegenProperty.equals so object examples remain part of property equality. Keep it out of hashCode to avoid deep traversal of large JSON example trees during hashing. --- .../openapitools/codegen/CodegenProperty.java | 1 + .../codegen/CodegenPropertyTest.java | 41 +++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java index 482a3bff3846..67fc8384a770 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java @@ -1212,6 +1212,7 @@ public boolean equals(Object o) { Objects.equals(minLength, that.minLength) && Objects.equals(pattern, that.pattern) && Objects.equals(example, that.example) && + Objects.equals(exampleJsonNode, that.exampleJsonNode) && Objects.equals(jsonSchema, that.jsonSchema) && Objects.equals(minimum, that.minimum) && Objects.equals(maximum, that.maximum) && diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java new file mode 100644 index 000000000000..5670dd8752c6 --- /dev/null +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java @@ -0,0 +1,41 @@ +/* + * Copyright 2026 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.openapitools.codegen; + +import com.fasterxml.jackson.databind.ObjectMapper; +import org.testng.annotations.Test; + +import java.io.IOException; + +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertNotEquals; + +public class CodegenPropertyTest { + + @Test + public void equalityIncludesJsonExampleNodeWithoutHashingIt() throws IOException { + ObjectMapper mapper = new ObjectMapper(); + CodegenProperty property = new CodegenProperty(); + CodegenProperty property2 = new CodegenProperty(); + + property.setExample(mapper.readTree("{\"value\":\"first\"}")); + property2.setExample(mapper.readTree("{\"value\":\"second\"}")); + + assertNotEquals(property, property2); + assertEquals(property.hashCode(), property2.hashCode()); + } +} From cef95b7389bdc089da480e479505824b341e709d Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Tue, 30 Jun 2026 00:00:38 +0200 Subject: [PATCH 31/42] Render GraphQL examples as typed literals Use a JSON-literal example lambda in GraphQL resolvers so string examples remain escaped strings while numbers, booleans, arrays, and objects are emitted as their native JavaScript literal types. --- .../codegen/CodegenParameter.java | 21 +++++++++++++++ .../resolvers.mustache | 4 +-- ...GraphQLNodeJSExpressServerCodegenTest.java | 8 +++++- .../problematic-example.yaml | 26 +++++++++++++++++++ 4 files changed, 56 insertions(+), 3 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java index eca9a57564a1..9ac6a8940ded 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java @@ -24,6 +24,7 @@ import lombok.Setter; import org.openapitools.codegen.templating.mustache.JsonOutputLambda; +import java.math.BigDecimal; import java.util.*; /** @@ -559,6 +560,26 @@ public Mustache.Lambda getLambdaExample() { return null; } + public Mustache.Lambda getLambdaExampleJsonLiteral() { + if (exampleJsonNode != null) { + return new JsonOutputLambda(exampleJsonNode); + } + if (example == null) { + return null; + } + if (isBoolean) { + return new JsonOutputLambda(Boolean.valueOf(example)); + } + if (isNumeric || isInteger || isLong || isNumber || isFloat || isDouble || isDecimal || isShort || isUnboundedInteger) { + try { + return new JsonOutputLambda(new BigDecimal(example)); + } catch (NumberFormatException e) { + return new JsonOutputLambda((Object) example); + } + } + return new JsonOutputLambda((Object) example); + } + public boolean getHasExample() { return exampleJsonNode != null || example != null; } diff --git a/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache b/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache index 4e8b4458644a..0a86de9af016 100644 --- a/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache +++ b/modules/openapi-generator/src/main/resources/graphql-nodejs-express-server/resolvers.mustache @@ -10,7 +10,7 @@ export default { // @return {{returnType}} {{operationId}}: ({{#allParams}}${{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) => { return { - {{#allParams}}"{{paramName}}": "{{#lambda.escapeJsonString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJsonString}}"{{^-last}}, + {{#allParams}}"{{paramName}}": {{#lambdaExampleJsonLiteral}}{{/lambdaExampleJsonLiteral}}{{^-last}}, {{/-last}}{{/allParams}} }; }, @@ -24,7 +24,7 @@ export default { // @return {{returnType}} {{operationId}}: ({{#allParams}}${{paramName}}{{^-last}}, {{/-last}}{{/allParams}}) => { return { - {{#allParams}}"{{paramName}}": "{{#lambda.escapeJsonString}}{{#lambdaExample}}{{/lambdaExample}}{{/lambda.escapeJsonString}}"{{^-last}}, + {{#allParams}}"{{paramName}}": {{#lambdaExampleJsonLiteral}}{{/lambdaExampleJsonLiteral}}{{^-last}}, {{/-last}}{{/allParams}} }; }, diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java index b700bcbbd76d..d344ac1ad62d 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/graphql/GraphQLNodeJSExpressServerCodegenTest.java @@ -34,7 +34,7 @@ public class GraphQLNodeJSExpressServerCodegenTest { @Test - public void resolverExamplesAreEscapedForJavaScriptStrings() throws IOException { + public void resolverExamplesAreRenderedAsJavaScriptLiterals() throws IOException { File output = Files.createTempDirectory("graphql-nodejs-express-server-test_").toFile(); output.deleteOnExit(); @@ -52,5 +52,11 @@ public void resolverExamplesAreEscapedForJavaScriptStrings() throws IOException Path path = Paths.get(output + "/openapi3graphql-server/api/test_api_resolver.js"); assertFileExists(path); TestUtils.assertFileContains(path, "\"filter\": \"line \\\"quoted\\\" \\\\ path\\nnext\""); + TestUtils.assertFileContains(path, "\"limit\": 25"); + TestUtils.assertFileContains(path, "\"active\": true"); + TestUtils.assertFileContains(path, "\"tags\": [ \"alpha\", \"beta\" ]"); + TestUtils.assertFileContains(path, "\"options\": {"); + TestUtils.assertFileContains(path, "\"mode\" : \"fast\""); + TestUtils.assertFileContains(path, "\"retries\" : 2"); } } diff --git a/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml b/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml index 27e19903c522..6852063c835b 100644 --- a/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/graphql-nodejs-express-server/problematic-example.yaml @@ -16,6 +16,32 @@ paths: example: |- line "quoted" \ path next + - name: limit + in: query + schema: + type: integer + example: 25 + - name: active + in: query + schema: + type: boolean + example: true + - name: tags + in: query + schema: + type: array + items: + type: string + example: + - alpha + - beta + - name: options + in: query + schema: + type: object + example: + mode: fast + retries: 2 responses: '200': description: ok From b516bf67ceea93f1d7f4d1008a29927e8ba68371 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Tue, 30 Jun 2026 00:02:25 +0200 Subject: [PATCH 32/42] Escape F# Giraffe example string literals Escape streamed request body examples with the JSON string escaping lambda after removing line breaks, so generated F# regular string literals preserve quotes, backslashes, and control characters without reintroducing HTML decoding. --- .../HandlerTestsHelper.mustache | 2 +- .../codegen/fsharp/FSharpServerCodegenTest.java | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache b/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache index 617cda29c5e2..6fae9a7d0804 100644 --- a/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache +++ b/modules/openapi-generator/src/main/resources/fsharp-giraffe-server/HandlerTestsHelper.mustache @@ -30,7 +30,7 @@ module {{classname}}HandlerTestsHelper = {{/-first}} {{/consumes}} {{#requestBodyExamples}} - {{operationId}}Body <- "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}" + {{operationId}}Body <- "{{#lambda.escapeJsonString}}{{#lambdaRemoveLineBreak}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaRemoveLineBreak}}{{/lambda.escapeJsonString}}" {{operationId}}Examples <- {{operationId}}Examples.Add("{{contentType}}", {{operationId}}Body) {{/requestBodyExamples}} diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java index 1c09080429e6..ea3ca159178e 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java @@ -21,7 +21,7 @@ import org.openapitools.codegen.languages.AbstractFSharpCodegen; import org.openapitools.codegen.languages.FsharpGiraffeServerCodegen; import org.openapitools.codegen.model.ModelsMap; -import org.openapitools.codegen.templating.mustache.EscapeDoubleQuoteLambda; +import org.openapitools.codegen.templating.mustache.EscapeJsonStringLambda; import org.openapitools.codegen.templating.mustache.JsonOutputLambda; import org.openapitools.codegen.templating.mustache.RemoveLineBreakLambda; import org.testng.Assert; @@ -92,15 +92,17 @@ public void testModelImportsSpecifyNamespaceAndPackageName() throws Exception { @Test public void giraffeHandlerTestExamplesDoNotHtmlDecodeStreamedOutput() { Map context = new HashMap<>(); + Map lambda = new HashMap<>(); + lambda.put("escapeJsonString", new EscapeJsonStringLambda()); + context.put("lambda", lambda); context.put("lambdaRemoveLineBreak", new RemoveLineBreakLambda()); - context.put("lambdaEscapeDoubleQuote", new EscapeDoubleQuoteLambda()); - context.put("lambdaExample", new JsonOutputLambda("Tom & Jerry")); + context.put("lambdaExample", new JsonOutputLambda("Tom & Jerry \\ path\u0001")); context.put("operationId", ""); - String template = "{{operationId}}Body <- \"{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}\""; + String template = "{{operationId}}Body <- \"{{#lambda.escapeJsonString}}{{#lambdaRemoveLineBreak}}{{#lambdaExample}}{{/lambdaExample}}{{/lambdaRemoveLineBreak}}{{/lambda.escapeJsonString}}\""; String rendered = Mustache.compiler().compile(template).execute(context); - Assert.assertEquals(rendered, "Body <- \"Tom & Jerry\""); + Assert.assertEquals(rendered, "Body <- \"Tom & Jerry \\\\ path\\u0001\""); } private static class P_AbstractFSharpCodegen extends AbstractFSharpCodegen { From 29170d587f6544a58f17e61151115bbcbe42f789 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Tue, 30 Jun 2026 00:05:37 +0200 Subject: [PATCH 33/42] Use parameter example setter in generators Replace direct CodegenParameter.example assignments with setExample calls so generator-specific example rewrites clear or synchronize the backing exampleJsonNode state instead of leaving stale streamed examples behind. --- .../languages/AbstractApexCodegen.java | 18 ++++++------- .../languages/AbstractCSharpCodegen.java | 2 +- .../languages/AbstractFSharpCodegen.java | 26 +++++++++---------- .../languages/AbstractJavaCodegen.java | 12 ++++----- .../codegen/languages/AbstractPhpCodegen.java | 2 +- .../languages/AbstractPythonCodegen.java | 10 +++---- .../AbstractPythonConnexionServerCodegen.java | 4 +-- .../AbstractPythonPydanticV1Codegen.java | 10 +++---- .../languages/AndroidClientCodegen.java | 4 +-- .../codegen/languages/BashClientCodegen.java | 4 +-- .../languages/CLibcurlClientCodegen.java | 4 +-- .../languages/CrystalClientCodegen.java | 2 +- .../JavaMicronautAbstractCodegen.java | 2 +- .../languages/JavaMicronautServerCodegen.java | 2 +- .../JavascriptApolloClientCodegen.java | 8 +++--- .../languages/JavascriptClientCodegen.java | 8 +++--- .../codegen/languages/ObjcClientCodegen.java | 4 +-- .../codegen/languages/PerlClientCodegen.java | 8 +++--- .../languages/PhpNextgenClientCodegen.java | 4 +-- .../codegen/languages/RClientCodegen.java | 10 +++---- .../codegen/languages/RubyClientCodegen.java | 2 +- .../codegen/languages/RustServerCodegen.java | 4 +-- .../RustServerCodegenDeprecated.java | 2 +- .../codegen/languages/SpringCodegen.java | 2 +- .../languages/TypeScriptClientCodegen.java | 4 +-- .../codegen/languages/XojoClientCodegen.java | 14 +++++----- 26 files changed, 86 insertions(+), 86 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java index 0c3e98a2cf88..d3ec6e05fef3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java @@ -269,30 +269,30 @@ public String toDefaultValue(Schema p) { public void setParameterExampleValue(CodegenParameter p) { if (Boolean.TRUE.equals(p.isLong)) { - p.example = "2147483648L"; + p.setExample("2147483648L"); } else if (Boolean.TRUE.equals(p.isFile)) { - p.example = "Blob.valueOf('Sample text file\\nContents')"; + p.setExample("Blob.valueOf('Sample text file\\nContents')"); } else if (Boolean.TRUE.equals(p.isDate)) { - p.example = "Date.newInstance(1960, 2, 17)"; + p.setExample("Date.newInstance(1960, 2, 17)"); } else if (Boolean.TRUE.equals(p.isDateTime)) { - p.example = "Datetime.newInstanceGmt(2013, 11, 12, 3, 3, 3)"; + p.setExample("Datetime.newInstanceGmt(2013, 11, 12, 3, 3, 3)"); } else if (Boolean.TRUE.equals(p.isArray)) { if (p.items != null && p.items.example != null) { - p.example = "new " + p.dataType + "{" + p.items.example + "}"; + p.setExample("new " + p.dataType + "{" + p.items.example + "}"); } } else if (Boolean.TRUE.equals(p.isMap)) { if (p.items != null && p.items.example != null) { - p.example = "new " + p.dataType + "{" + p.items.example + "}"; + p.setExample("new " + p.dataType + "{" + p.items.example + "}"); } } else if (Boolean.TRUE.equals(p.isString)) { - p.example = "'" + p.example + "'"; + p.setExample("'" + p.example + "'"); } else if ("".equals(p.example) || p.example == null && "Object".equals(p.dataType)) { // Get an example object from the generated model if (!isReservedWord(p.dataType.toLowerCase(Locale.ROOT))) { - p.example = p.dataType + ".getExample()"; + p.setExample(p.dataType + ".getExample()"); } } else { - p.example = "''"; + p.setExample("''"); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java index 487d16fce5e3..9c7274ab6000 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java @@ -2017,7 +2017,7 @@ public void setParameterExampleValue(CodegenParameter p) { } } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java index b996a276f702..c8ddfb65cc56 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java @@ -1011,31 +1011,31 @@ public void setParameterExampleValue(CodegenParameter codegenParameter) { if (codegenParameter.vendorExtensions != null && codegenParameter.vendorExtensions.containsKey("x-example")) { setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (Boolean.TRUE.equals(codegenParameter.isBoolean)) { - codegenParameter.example = "true"; + codegenParameter.setExample("true"); } else if (Boolean.TRUE.equals(codegenParameter.isLong)) { - codegenParameter.example = "789"; + codegenParameter.setExample("789"); } else if (Boolean.TRUE.equals(codegenParameter.isInteger)) { - codegenParameter.example = "56"; + codegenParameter.setExample("56"); } else if (Boolean.TRUE.equals(codegenParameter.isFloat)) { - codegenParameter.example = "3.4F"; + codegenParameter.setExample("3.4F"); } else if (Boolean.TRUE.equals(codegenParameter.isDouble)) { - codegenParameter.example = "1.2D"; + codegenParameter.setExample("1.2D"); } else if (Boolean.TRUE.equals(codegenParameter.isNumber)) { - codegenParameter.example = "8.14"; + codegenParameter.setExample("8.14"); } else if (Boolean.TRUE.equals(codegenParameter.isBinary)) { - codegenParameter.example = "BINARY_DATA_HERE"; + codegenParameter.setExample("BINARY_DATA_HERE"); } else if (Boolean.TRUE.equals(codegenParameter.isByteArray)) { - codegenParameter.example = "BYTE_ARRAY_DATA_HERE"; + codegenParameter.setExample("BYTE_ARRAY_DATA_HERE"); } else if (Boolean.TRUE.equals(codegenParameter.isFile)) { - codegenParameter.example = "/path/to/file.txt"; + codegenParameter.setExample("/path/to/file.txt"); } else if (Boolean.TRUE.equals(codegenParameter.isDate)) { - codegenParameter.example = "2013-10-20"; + codegenParameter.setExample("2013-10-20"); } else if (Boolean.TRUE.equals(codegenParameter.isDateTime)) { - codegenParameter.example = "2013-10-20T19:20:30+01:00"; + codegenParameter.setExample("2013-10-20T19:20:30+01:00"); } else if (Boolean.TRUE.equals(codegenParameter.isUuid)) { - codegenParameter.example = "38400000-8cf0-11bd-b23e-10b96e4ef00d"; + codegenParameter.setExample("38400000-8cf0-11bd-b23e-10b96e4ef00d"); } else if (Boolean.TRUE.equals(codegenParameter.isString)) { - codegenParameter.example = codegenParameter.paramName + "_example"; + codegenParameter.setExample(codegenParameter.paramName + "_example"); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index 63012a815c65..3acf41da83e0 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -1720,19 +1720,19 @@ public String toDefaultParameterValue(final Schema schema) { @Override public void setParameterExampleValue(CodegenParameter codegenParameter, Parameter parameter) { if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + codegenParameter.setExample(parameter.getExample().toString()); } if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); } } Schema schema = parameter.getSchema(); if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + codegenParameter.setExample(schema.getExample().toString()); } setParameterExampleValue(codegenParameter); @@ -1761,7 +1761,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, RequestB if (isModel) { once(LOGGER).warn("Ignoring complex example on request body"); } else { - codegenParameter.example = mediaType.getExample().toString(); + codegenParameter.setExample(mediaType.getExample().toString()); return; } } @@ -1772,7 +1772,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, RequestB if (isModel) { once(LOGGER).warn("Ignoring complex example on request body"); } else { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); return; } } @@ -1894,7 +1894,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "new HashMap()"; } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java index a7fcd8993878..060e0ff73421 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java @@ -749,7 +749,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "array('key' => " + example + ")"; } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonCodegen.java index 3e9ab4d0ff8b..675fbc0e38f6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonCodegen.java @@ -574,7 +574,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -635,7 +635,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "{'key': " + example + "}"; } - p.example = example; + p.setExample(example); } @Override @@ -643,16 +643,16 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete Schema schema = parameter.getSchema(); if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + codegenParameter.setExample(parameter.getExample().toString()); codegenParameter.vendorExtensions.put(X_PY_EXAMPLE, toPythonLiteral(parameter.getExample())); } else if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); codegenParameter.vendorExtensions.put(X_PY_EXAMPLE, toPythonLiteral(example.getValue())); } } else if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + codegenParameter.setExample(schema.getExample().toString()); codegenParameter.vendorExtensions.put(X_PY_EXAMPLE, toPythonLiteral(schema.getExample())); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java index 69e75e0ac308..18ead4d85721 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java @@ -711,9 +711,9 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List result = MAPPER.readValue((String) rawExample, new TypeReference>() { }); - operation.bodyParam.example = MAPPER.writeValueAsString(result); + operation.bodyParam.setExample(MAPPER.writeValueAsString(result)); } catch (IOException e) { - operation.bodyParam.example = (String) rawExample; + operation.bodyParam.setExample((String) rawExample); } } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonPydanticV1Codegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonPydanticV1Codegen.java index 3c8a60372cfc..4adeda741a05 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonPydanticV1Codegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonPydanticV1Codegen.java @@ -541,7 +541,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -597,7 +597,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "{'key': " + example + "}"; } - p.example = example; + p.setExample(example); } @Override @@ -605,14 +605,14 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete Schema schema = parameter.getSchema(); if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + codegenParameter.setExample(parameter.getExample().toString()); } else if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); } } else if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + codegenParameter.setExample(schema.getExample().toString()); } setParameterExampleValue(codegenParameter); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java index 8f3d953f44a6..034e5c871fbf 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java @@ -337,7 +337,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -392,7 +392,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "new HashMap()"; } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java index 08b01a9d15e8..f7565a6f5f77 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java @@ -707,7 +707,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -765,7 +765,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "{'key': " + example + "}"; } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java index 799714719b41..b3d3b28d6605 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java @@ -825,7 +825,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -879,7 +879,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "{'key' => " + example + "}"; } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java index 7e7251694404..53df60f46ceb 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java @@ -928,7 +928,7 @@ private String constructExampleCode(CodegenParameter codegenParameter, HashMap values = (List) codegenParameter.allowableValues.get("values"); - codegenParameter.example = String.valueOf(values.get(0)); + codegenParameter.setExample(String.valueOf(values.get(0))); } if (codegenParameter.isString || "String".equalsIgnoreCase(codegenParameter.baseType)) { if (!StringUtils.isEmpty(codegenParameter.example) && !"null".equals(codegenParameter.example)) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java index 8f5dfc8d53f9..5d46e4330a27 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java @@ -561,7 +561,7 @@ public Map postProcessAllModels(Map objs) @Override public void setParameterExampleValue(CodegenParameter p) { p.vendorExtensions.put("groovyExample", getParameterExampleValue(p, true)); - p.example = getParameterExampleValue(p, false); + p.setExample(getParameterExampleValue(p, false)); } protected String getParameterExampleValue(CodegenParameter p, boolean groovy) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautServerCodegen.java index 6aad66d97f08..9f5ae84bbfa1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautServerCodegen.java @@ -197,7 +197,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.isFile) { // The CompletedFileUpload cannot be initialized - p.example = "null"; + p.setExample("null"); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java index 4933a844db37..890b27510613 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java @@ -692,7 +692,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "null"; } - p.example = example; + p.setExample(example); } @Override @@ -700,14 +700,14 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete Schema schema = parameter.getSchema(); if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + codegenParameter.setExample(parameter.getExample().toString()); } else if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); } } else if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + codegenParameter.setExample(schema.getExample().toString()); } setParameterExampleValue(codegenParameter); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java index e31349042a2e..7fbe0b0bc01a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java @@ -722,7 +722,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "null"; } - p.example = example; + p.setExample(example); } @Override @@ -730,14 +730,14 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete Schema schema = parameter.getSchema(); if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + codegenParameter.setExample(parameter.getExample().toString()); } else if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); } } else if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + codegenParameter.setExample(schema.getExample().toString()); } setParameterExampleValue(codegenParameter); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java index 7298c06bb172..a02f4bd441e6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java @@ -694,7 +694,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -757,7 +757,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "@{@\"key\" : " + example + "}"; } - p.example = example; + p.setExample(example); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java index 69c820671194..2a4a3bd79111 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java @@ -476,7 +476,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -501,9 +501,9 @@ public void setParameterExampleValue(CodegenParameter p) { } } else if (Boolean.TRUE.equals(p.isBoolean)) { if (Boolean.parseBoolean(p.example)) { - p.example = "1"; + p.setExample("1"); } else { - p.example = "0"; + p.setExample("0"); } } else if (Boolean.TRUE.equals(p.isFile) || Boolean.TRUE.equals(p.isBinary)) { if (example == null) { @@ -547,7 +547,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "null"; } - p.example = example; + p.setExample(example); } protected String setPropertyExampleValue(CodegenProperty p) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpNextgenClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpNextgenClientCodegen.java index 4986432cb624..660f1fe203e1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpNextgenClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpNextgenClientCodegen.java @@ -293,7 +293,7 @@ private void useFirstOneOfMemberInExample(CodegenParameter param, Map @Override public void setParameterExampleValue(CodegenParameter p) { if (p.isArray && p.items.defaultValue != null) { - p.example = p.defaultValue; + p.setExample(p.defaultValue); } else { super.setParameterExampleValue(p); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java index cee37bb6666f..5c172f2e3396 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java @@ -760,7 +760,7 @@ public void setParameterExampleValue(CodegenParameter p) { if (p.defaultValue == null) { example = p.example; } else { - p.example = p.defaultValue; + p.setExample(p.defaultValue); return; } @@ -800,7 +800,7 @@ public void setParameterExampleValue(CodegenParameter p) { example = "{'key' => " + example + "}"; } - p.example = example; + p.setExample(example); } /** @@ -816,16 +816,16 @@ public void setParameterExampleValue(CodegenParameter p) { @Override public void setParameterExampleValue(CodegenParameter codegenParameter, Parameter parameter) { if (parameter.getExample() != null) { - codegenParameter.example = parameter.getExample().toString(); + codegenParameter.setExample(parameter.getExample().toString()); } else if (parameter.getExamples() != null && !parameter.getExamples().isEmpty()) { Example example = parameter.getExamples().values().iterator().next(); if (example.getValue() != null) { - codegenParameter.example = example.getValue().toString(); + codegenParameter.setExample(example.getValue().toString()); } } else { Schema schema = parameter.getSchema(); if (schema != null && schema.getExample() != null) { - codegenParameter.example = schema.getExample().toString(); + codegenParameter.setExample(schema.getExample().toString()); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java index b7bd99bb90dc..122029ca30b1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java @@ -645,7 +645,7 @@ private String constructExampleCode(CodegenParameter codegenParameter, HashMap values = (List) codegenParameter.allowableValues.get("values"); - codegenParameter.example = String.valueOf(values.get(0)); + codegenParameter.setExample(String.valueOf(values.get(0))); } if (codegenParameter.isString || "String".equalsIgnoreCase(codegenParameter.baseType)) { if (!StringUtils.isEmpty(codegenParameter.example) && !"null".equals(codegenParameter.example)) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java index 554a8bb59f77..5aaed725830b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegen.java @@ -1077,7 +1077,7 @@ public CodegenParameter fromRequestBody(RequestBody body, Set imports, S setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (!codegenParameter.required) { //mandatory parameter use the example in the yaml. if no example, it is also null. - codegenParameter.example = null; + codegenParameter.setExample((String) null); } } @@ -1099,7 +1099,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete // Null out the auto-generated example so processParam can detect // required params with no user-provided example and disable the // client example stub accordingly. - codegenParameter.example = null; + codegenParameter.setExample((String) null); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java index 7b40e034c7ba..dd6b05ca8771 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustServerCodegenDeprecated.java @@ -1029,7 +1029,7 @@ public CodegenParameter fromRequestBody(RequestBody body, Set imports, S setParameterJsonExampleValue(codegenParameter, codegenParameter.vendorExtensions.get("x-example")); } else if (!codegenParameter.required) { //mandatory parameter use the example in the yaml. if no example, it is also null. - codegenParameter.example = null; + codegenParameter.setExample((String) null); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java index 1fb409289467..9d16814daff3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java @@ -1163,7 +1163,7 @@ public void setParameterExampleValue(CodegenParameter p) { } example = "new org.springframework.core.io.FileSystemResource(new java.io.File(\"" + escapeText(example) + "\"))"; - p.example = example; + p.setExample(example); } else { super.setParameterExampleValue(p); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java index 0cd48e5ae880..c95dcad27546 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptClientCodegen.java @@ -1071,7 +1071,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, Paramete } example = exampleFromStringOrArraySchema(schema, example, parameter.getName()); String finalExample = toExampleValue(schema, example); - codegenParameter.example = finalExample; + codegenParameter.setExample(finalExample); } /** @@ -1109,7 +1109,7 @@ public void setParameterExampleValue(CodegenParameter codegenParameter, RequestB example = getObjectExample(schema); } example = exampleFromStringOrArraySchema(schema, example, codegenParameter.paramName); - codegenParameter.example = toExampleValue(schema, example); + codegenParameter.setExample(toExampleValue(schema, example)); } /** diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/XojoClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/XojoClientCodegen.java index b9bae10ea039..80f53bb4b2ad 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/XojoClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/XojoClientCodegen.java @@ -675,19 +675,19 @@ public String toDefaultValue(Schema schema) { public void setParameterExampleValue(CodegenParameter codegenParameter) { super.setParameterExampleValue(codegenParameter); if (Boolean.TRUE.equals(codegenParameter.isBinary)) { - codegenParameter.example = "GetTemporaryFolderItem"; + codegenParameter.setExample("GetTemporaryFolderItem"); } else if (Boolean.TRUE.equals(codegenParameter.isByteArray)) { - codegenParameter.example = "New MemoryBlock(8)"; + codegenParameter.setExample("New MemoryBlock(8)"); } else if (Boolean.TRUE.equals(codegenParameter.isFile)) { - codegenParameter.example = "GetTemporaryFolderItem"; + codegenParameter.setExample("GetTemporaryFolderItem"); } else if (Boolean.TRUE.equals(codegenParameter.isDate)) { - codegenParameter.example = "New Date"; + codegenParameter.setExample("New Date"); } else if (Boolean.TRUE.equals(codegenParameter.isDateTime)) { - codegenParameter.example = "New Date"; + codegenParameter.setExample("New Date"); } else if (Boolean.TRUE.equals(codegenParameter.isString)) { - codegenParameter.example = codegenParameter.paramName + "_example"; + codegenParameter.setExample(codegenParameter.paramName + "_example"); } else if (Boolean.TRUE.equals(codegenParameter.isFreeFormObject)) { - codegenParameter.example = "New Dictionary"; + codegenParameter.setExample("New Dictionary"); } } From edb018d40e8ce2749673d100e514c9ec2cda65d5 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Tue, 30 Jun 2026 00:06:51 +0200 Subject: [PATCH 34/42] Fix HTML escape lambda usage docs Show raw Mustache interpolation in the EscapeHtmlLambda Javadoc example so the documented usage does not double-escape content before the lambda runs. --- .../codegen/templating/mustache/EscapeHtmlLambda.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java index 19bfbf6fbf50..51c72bf509d3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java @@ -34,7 +34,7 @@ *

* Use: *

- * {{#lambdaEscapeHtml}}{{name}}{{/lambdaEscapeHtml}}
+ * {{#lambdaEscapeHtml}}{{{name}}}{{/lambdaEscapeHtml}}
  * 
*/ public class EscapeHtmlLambda implements Mustache.Lambda { From 45192b1bf7eeb6d4d5df8c6734c44c3ca897a1f0 Mon Sep 17 00:00:00 2001 From: Vaclav Haisman Date: Tue, 30 Jun 2026 00:08:31 +0200 Subject: [PATCH 35/42] Document HTML escape lambda context Clarify that EscapeHtmlLambda is intended for HTML element text content such as code blocks, not HTML attribute values where escaping depends on the attribute quoting style. --- .../codegen/templating/mustache/EscapeHtmlLambda.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java index 51c72bf509d3..ca32c6acf362 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/EscapeHtmlLambda.java @@ -25,7 +25,11 @@ import java.nio.CharBuffer; /** - * Escapes HTML-sensitive characters in a fragment. + * Escapes HTML-sensitive characters in a fragment for HTML text content. + *

+ * This lambda is intended for element body text such as {@code

...
}. + * Do not use it for HTML attribute values; attribute contexts need escaping rules which match + * the attribute quoting style. *

* Register: *


From f7a8c49baa3ffaffd9043a1bd621dde7b9c38c4b Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 00:11:44 +0200
Subject: [PATCH 36/42] Preserve scalar example rendering

Render JSON value-node examples through lambdaExample as legacy text while keeping object and array examples streamed as JSON. This avoids adding JSON string quotes inside annotation string attributes.
---
 .../codegen/CodegenParameter.java             |  3 +++
 .../openapitools/codegen/CodegenProperty.java |  3 +++
 .../codegen/CodegenParameterTest.java         | 24 +++++++++++++++++++
 .../codegen/CodegenPropertyTest.java          | 23 ++++++++++++++++++
 4 files changed, 53 insertions(+)

diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java
index 9ac6a8940ded..f6d09afede70 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenParameter.java
@@ -552,6 +552,9 @@ public Map getExts() {
 
     public Mustache.Lambda getLambdaExample() {
         if (exampleJsonNode != null) {
+            if (exampleJsonNode.isValueNode()) {
+                return new JsonOutputLambda(exampleJsonNode.asText());
+            }
             return new JsonOutputLambda(exampleJsonNode);
         }
         if (example != null) {
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java
index 67fc8384a770..35abe9dca4c3 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java
@@ -611,6 +611,9 @@ public String getRef() {
 
     public Mustache.Lambda getLambdaExample() {
         if (exampleJsonNode != null) {
+            if (exampleJsonNode.isValueNode()) {
+                return new JsonOutputLambda(exampleJsonNode.asText());
+            }
             return new JsonOutputLambda(exampleJsonNode);
         }
         if (example != null) {
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java
index 192d77d8038d..78b56d47dc71 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java
@@ -16,8 +16,10 @@
 
 package org.openapitools.codegen;
 
+import com.fasterxml.jackson.databind.ObjectMapper;
 import org.testng.annotations.Test;
 
+import java.io.StringWriter;
 import java.util.Collections;
 
 import static org.testng.Assert.assertEquals;
@@ -37,4 +39,26 @@ public void equalityIncludesJsonExampleNodeWithoutHashingIt() {
         assertNotEquals(codegenParameter, codegenParameter2);
         assertEquals(codegenParameter.hashCode(), codegenParameter2.hashCode());
     }
+
+    @Test
+    public void lambdaExampleUsesLegacyTextForJsonValueNodes() throws Exception {
+        CodegenParameter codegenParameter = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER);
+        codegenParameter.setExample(new ObjectMapper().readTree("\"doggie\""));
+
+        StringWriter writer = new StringWriter();
+        codegenParameter.getLambdaExample().execute(null, writer);
+
+        assertEquals(writer.toString(), "doggie");
+    }
+
+    @Test
+    public void lambdaExampleStreamsJsonForObjectNodes() throws Exception {
+        CodegenParameter codegenParameter = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER);
+        codegenParameter.setExample(new ObjectMapper().readTree("{\"value\":\"doggie\"}"));
+
+        StringWriter writer = new StringWriter();
+        codegenParameter.getLambdaExample().execute(null, writer);
+
+        assertEquals(writer.toString(), "{\n  \"value\" : \"doggie\"\n}");
+    }
 }
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java
index 5670dd8752c6..9c74ea079559 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java
@@ -20,6 +20,7 @@
 import org.testng.annotations.Test;
 
 import java.io.IOException;
+import java.io.StringWriter;
 
 import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotEquals;
@@ -38,4 +39,26 @@ public void equalityIncludesJsonExampleNodeWithoutHashingIt() throws IOException
         assertNotEquals(property, property2);
         assertEquals(property.hashCode(), property2.hashCode());
     }
+
+    @Test
+    public void lambdaExampleUsesLegacyTextForJsonValueNodes() throws Exception {
+        CodegenProperty property = new CodegenProperty();
+        property.setExample(new ObjectMapper().readTree("\"doggie\""));
+
+        StringWriter writer = new StringWriter();
+        property.getLambdaExample().execute(null, writer);
+
+        assertEquals(writer.toString(), "doggie");
+    }
+
+    @Test
+    public void lambdaExampleStreamsJsonForObjectNodes() throws Exception {
+        CodegenProperty property = new CodegenProperty();
+        property.setExample(new ObjectMapper().readTree("{\"value\":\"doggie\"}"));
+
+        StringWriter writer = new StringWriter();
+        property.getLambdaExample().execute(null, writer);
+
+        assertEquals(writer.toString(), "{\n  \"value\" : \"doggie\"\n}");
+    }
 }

From 39145da5f7e904d71f7d86f43cb13918e50d6823 Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 18:20:56 +0200
Subject: [PATCH 37/42] Make JSON output tests line-ending neutral

Compare streamed JSON output structurally in tests instead of asserting exact pretty-printer line endings, which differ between Unix and Windows builds.
---
 .../openapitools/codegen/CodegenParameterTest.java   |  7 ++++---
 .../openapitools/codegen/CodegenPropertyTest.java    | 12 ++++++------
 .../templating/mustache/JsonOutputLambdaTest.java    |  7 ++++---
 3 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java
index 78b56d47dc71..06c53cb0c7a8 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenParameterTest.java
@@ -26,6 +26,7 @@
 import static org.testng.Assert.assertNotEquals;
 
 public class CodegenParameterTest {
+    private static final ObjectMapper MAPPER = new ObjectMapper();
 
     @Test
     public void equalityIncludesJsonExampleNodeWithoutHashingIt() {
@@ -43,7 +44,7 @@ public void equalityIncludesJsonExampleNodeWithoutHashingIt() {
     @Test
     public void lambdaExampleUsesLegacyTextForJsonValueNodes() throws Exception {
         CodegenParameter codegenParameter = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER);
-        codegenParameter.setExample(new ObjectMapper().readTree("\"doggie\""));
+        codegenParameter.setExample(MAPPER.readTree("\"doggie\""));
 
         StringWriter writer = new StringWriter();
         codegenParameter.getLambdaExample().execute(null, writer);
@@ -54,11 +55,11 @@ public void lambdaExampleUsesLegacyTextForJsonValueNodes() throws Exception {
     @Test
     public void lambdaExampleStreamsJsonForObjectNodes() throws Exception {
         CodegenParameter codegenParameter = CodegenModelFactory.newInstance(CodegenModelType.PARAMETER);
-        codegenParameter.setExample(new ObjectMapper().readTree("{\"value\":\"doggie\"}"));
+        codegenParameter.setExample(MAPPER.readTree("{\"value\":\"doggie\"}"));
 
         StringWriter writer = new StringWriter();
         codegenParameter.getLambdaExample().execute(null, writer);
 
-        assertEquals(writer.toString(), "{\n  \"value\" : \"doggie\"\n}");
+        assertEquals(MAPPER.readTree(writer.toString()), MAPPER.readTree("{\"value\":\"doggie\"}"));
     }
 }
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java
index 9c74ea079559..60742d39b8ba 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/CodegenPropertyTest.java
@@ -26,15 +26,15 @@
 import static org.testng.Assert.assertNotEquals;
 
 public class CodegenPropertyTest {
+    private static final ObjectMapper MAPPER = new ObjectMapper();
 
     @Test
     public void equalityIncludesJsonExampleNodeWithoutHashingIt() throws IOException {
-        ObjectMapper mapper = new ObjectMapper();
         CodegenProperty property = new CodegenProperty();
         CodegenProperty property2 = new CodegenProperty();
 
-        property.setExample(mapper.readTree("{\"value\":\"first\"}"));
-        property2.setExample(mapper.readTree("{\"value\":\"second\"}"));
+        property.setExample(MAPPER.readTree("{\"value\":\"first\"}"));
+        property2.setExample(MAPPER.readTree("{\"value\":\"second\"}"));
 
         assertNotEquals(property, property2);
         assertEquals(property.hashCode(), property2.hashCode());
@@ -43,7 +43,7 @@ public void equalityIncludesJsonExampleNodeWithoutHashingIt() throws IOException
     @Test
     public void lambdaExampleUsesLegacyTextForJsonValueNodes() throws Exception {
         CodegenProperty property = new CodegenProperty();
-        property.setExample(new ObjectMapper().readTree("\"doggie\""));
+        property.setExample(MAPPER.readTree("\"doggie\""));
 
         StringWriter writer = new StringWriter();
         property.getLambdaExample().execute(null, writer);
@@ -54,11 +54,11 @@ public void lambdaExampleUsesLegacyTextForJsonValueNodes() throws Exception {
     @Test
     public void lambdaExampleStreamsJsonForObjectNodes() throws Exception {
         CodegenProperty property = new CodegenProperty();
-        property.setExample(new ObjectMapper().readTree("{\"value\":\"doggie\"}"));
+        property.setExample(MAPPER.readTree("{\"value\":\"doggie\"}"));
 
         StringWriter writer = new StringWriter();
         property.getLambdaExample().execute(null, writer);
 
-        assertEquals(writer.toString(), "{\n  \"value\" : \"doggie\"\n}");
+        assertEquals(MAPPER.readTree(writer.toString()), MAPPER.readTree("{\"value\":\"doggie\"}"));
     }
 }
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java
index 3151861c5001..62a71cf38201 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/templating/mustache/JsonOutputLambdaTest.java
@@ -29,6 +29,7 @@
 import static org.testng.Assert.assertFalse;
 
 public class JsonOutputLambdaTest {
+    private static final ObjectMapper MAPPER = new ObjectMapper();
 
     @Test
     public void writesStringValue() throws Exception {
@@ -41,14 +42,14 @@ public void writesStringValue() throws Exception {
 
     @Test
     public void writesPrettyJsonNodeValue() throws Exception {
-        ObjectNode node = new ObjectMapper().createObjectNode();
+        ObjectNode node = MAPPER.createObjectNode();
         node.put("name", "example");
         node.put("id", 123);
         StringWriter output = new StringWriter();
 
         new JsonOutputLambda(node).execute(mock(Template.Fragment.class), output);
 
-        assertEquals(output.toString(), "{\n  \"name\" : \"example\",\n  \"id\" : 123\n}");
+        assertEquals(MAPPER.readTree(output.toString()), MAPPER.readTree("{\"name\":\"example\",\"id\":123}"));
     }
 
     @Test
@@ -59,7 +60,7 @@ public void omitsNullFieldsFromSwaggerSchemas() throws Exception {
 
         new JsonOutputLambda(schema).execute(mock(Template.Fragment.class), output);
 
-        assertEquals(output.toString(), "{\n  \"type\" : \"string\",\n  \"example\" : \"doggie\"\n}");
+        assertEquals(MAPPER.readTree(output.toString()), MAPPER.readTree("{\"type\":\"string\",\"example\":\"doggie\"}"));
         assertFalse(output.toString().contains("\"title\" : null"));
     }
 }

From c812434775c528e46c5c06d8b9e57333dee096ff Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 18:49:56 +0200
Subject: [PATCH 38/42] Pin Rust Axum time dependency below 0.3.52

---
 .../src/main/resources/rust-axum/Cargo.mustache                  | 1 +
 .../petstore/rust-axum/output/apikey-authorization/Cargo.toml    | 1 +
 samples/server/petstore/rust-axum/output/apikey-auths/Cargo.toml | 1 +
 samples/server/petstore/rust-axum/output/multipart-v3/Cargo.toml | 1 +
 samples/server/petstore/rust-axum/output/openapi-v3/Cargo.toml   | 1 +
 samples/server/petstore/rust-axum/output/ops-v3/Cargo.toml       | 1 +
 .../petstore-with-fake-endpoints-models-for-testing/Cargo.toml   | 1 +
 samples/server/petstore/rust-axum/output/petstore/Cargo.toml     | 1 +
 .../server/petstore/rust-axum/output/ping-bearer-auth/Cargo.toml | 1 +
 .../rust-axum/output/rust-axum-array-params-test/Cargo.toml      | 1 +
 .../petstore/rust-axum/output/rust-axum-header-uuid/Cargo.toml   | 1 +
 .../rust-axum/output/rust-axum-integer-types-test/Cargo.toml     | 1 +
 .../server/petstore/rust-axum/output/rust-axum-oneof/Cargo.toml  | 1 +
 .../server/petstore/rust-axum/output/rust-axum-sse/Cargo.toml    | 1 +
 .../server/petstore/rust-axum/output/rust-axum-test/Cargo.toml   | 1 +
 .../rust-axum/output/rust-axum-validation-test/Cargo.toml        | 1 +
 16 files changed, 16 insertions(+)

diff --git a/modules/openapi-generator/src/main/resources/rust-axum/Cargo.mustache b/modules/openapi-generator/src/main/resources/rust-axum/Cargo.mustache
index 1400f29b749c..24e82186b01e 100644
--- a/modules/openapi-generator/src/main/resources/rust-axum/Cargo.mustache
+++ b/modules/openapi-generator/src/main/resources/rust-axum/Cargo.mustache
@@ -63,6 +63,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/apikey-authorization/Cargo.toml b/samples/server/petstore/rust-axum/output/apikey-authorization/Cargo.toml
index 06de4219f131..0ea13de71a86 100644
--- a/samples/server/petstore/rust-axum/output/apikey-authorization/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/apikey-authorization/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/apikey-auths/Cargo.toml b/samples/server/petstore/rust-axum/output/apikey-auths/Cargo.toml
index a9b49a596740..7b23e7c66cc5 100644
--- a/samples/server/petstore/rust-axum/output/apikey-auths/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/apikey-auths/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/multipart-v3/Cargo.toml b/samples/server/petstore/rust-axum/output/multipart-v3/Cargo.toml
index 98afe1093576..b73866f18e6b 100644
--- a/samples/server/petstore/rust-axum/output/multipart-v3/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/multipart-v3/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/openapi-v3/Cargo.toml b/samples/server/petstore/rust-axum/output/openapi-v3/Cargo.toml
index bcf71bc5d5f2..8af2c463a06a 100644
--- a/samples/server/petstore/rust-axum/output/openapi-v3/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/openapi-v3/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/ops-v3/Cargo.toml b/samples/server/petstore/rust-axum/output/ops-v3/Cargo.toml
index 7eeac251f8be..63d3a24c05e7 100644
--- a/samples/server/petstore/rust-axum/output/ops-v3/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/ops-v3/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/petstore-with-fake-endpoints-models-for-testing/Cargo.toml b/samples/server/petstore/rust-axum/output/petstore-with-fake-endpoints-models-for-testing/Cargo.toml
index 4502ad161539..c1f8289810cb 100644
--- a/samples/server/petstore/rust-axum/output/petstore-with-fake-endpoints-models-for-testing/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/petstore-with-fake-endpoints-models-for-testing/Cargo.toml
@@ -44,6 +44,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/petstore/Cargo.toml b/samples/server/petstore/rust-axum/output/petstore/Cargo.toml
index f4e921bb11e5..55af9c98652c 100644
--- a/samples/server/petstore/rust-axum/output/petstore/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/petstore/Cargo.toml
@@ -43,6 +43,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/ping-bearer-auth/Cargo.toml b/samples/server/petstore/rust-axum/output/ping-bearer-auth/Cargo.toml
index c5fc44b6e217..641d92c20c60 100644
--- a/samples/server/petstore/rust-axum/output/ping-bearer-auth/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/ping-bearer-auth/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-array-params-test/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-array-params-test/Cargo.toml
index d16c08a479fe..70a0af2c1b35 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-array-params-test/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-array-params-test/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-header-uuid/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-header-uuid/Cargo.toml
index 44dce408865b..faf0f8579dae 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-header-uuid/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-header-uuid/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-integer-types-test/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-integer-types-test/Cargo.toml
index 4347523f3050..d29717fabc01 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-integer-types-test/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-integer-types-test/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-oneof/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-oneof/Cargo.toml
index accdeba829d0..54712ef54c7c 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-oneof/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-oneof/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-sse/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-sse/Cargo.toml
index 026bfe987aa5..4ee48caa750b 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-sse/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-sse/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-test/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-test/Cargo.toml
index cae6e0b81cd6..4364349d0012 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-test/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-test/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",
diff --git a/samples/server/petstore/rust-axum/output/rust-axum-validation-test/Cargo.toml b/samples/server/petstore/rust-axum/output/rust-axum-validation-test/Cargo.toml
index 80ba4c330ed2..ae3c325765e1 100644
--- a/samples/server/petstore/rust-axum/output/rust-axum-validation-test/Cargo.toml
+++ b/samples/server/petstore/rust-axum/output/rust-axum-validation-test/Cargo.toml
@@ -42,6 +42,7 @@ regex = "1"
 serde = { version = "1", features = ["derive"] }
 serde_html_form = "0.2"
 serde_json = { version = "1", features = ["raw_value"] }
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", default-features = false, features = [
     "signal",
     "rt-multi-thread",

From 41551f2cf1be6502e3f8b7576dae06e1669d7ecc Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 18:55:59 +0200
Subject: [PATCH 39/42] Pin Rust Salvo time dependency below 0.3.52

---
 .../src/main/resources/rust-salvo/Cargo.mustache                 | 1 +
 samples/server/petstore/rust-salvo/output/petstore/Cargo.toml    | 1 +
 2 files changed, 2 insertions(+)

diff --git a/modules/openapi-generator/src/main/resources/rust-salvo/Cargo.mustache b/modules/openapi-generator/src/main/resources/rust-salvo/Cargo.mustache
index 5662d1e81ead..816165b1ab4a 100644
--- a/modules/openapi-generator/src/main/resources/rust-salvo/Cargo.mustache
+++ b/modules/openapi-generator/src/main/resources/rust-salvo/Cargo.mustache
@@ -45,6 +45,7 @@ async-trait = "0.1"
 base64 = "0.22"
 serde = { version = "1", features = ["derive"] }
 serde_json = "1"
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", features = ["macros", "rt-multi-thread", "signal"] }
 tracing = "0.1"
 tracing-subscriber = { version = "0.3", features = ["env-filter"] }
diff --git a/samples/server/petstore/rust-salvo/output/petstore/Cargo.toml b/samples/server/petstore/rust-salvo/output/petstore/Cargo.toml
index 3884c5a81f42..d1528471387e 100644
--- a/samples/server/petstore/rust-salvo/output/petstore/Cargo.toml
+++ b/samples/server/petstore/rust-salvo/output/petstore/Cargo.toml
@@ -22,6 +22,7 @@ async-trait = "0.1"
 base64 = "0.22"
 serde = { version = "1", features = ["derive"] }
 serde_json = "1"
+time = ">=0.3, <0.3.52"
 tokio = { version = "1", features = ["macros", "rt-multi-thread", "signal"] }
 tracing = "0.1"
 tracing-subscriber = { version = "0.3", features = ["env-filter"] }

From 4abf208193a989eeae9278d5e01a30373eb62f3b Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 19:24:37 +0200
Subject: [PATCH 40/42] Document streaming example template rendering

---
 docs/templating.md                                | 15 +++++++++++++++
 docs/usage.md                                     |  2 +-
 .../openapitools/codegen/CodegenConstants.java    |  2 +-
 .../org/openapitools/codegen/DefaultCodegen.java  |  2 +-
 4 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/docs/templating.md b/docs/templating.md
index d42abd03c992..a6a2a3ad80f4 100644
--- a/docs/templating.md
+++ b/docs/templating.md
@@ -813,6 +813,16 @@ Supporting files can either be processed through the templating engine or copied
 
 More variables can be found [here](https://github.com/OpenAPITools/openapi-generator/blob/master/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenProperty.java).
 
+### Rendering Examples
+
+When rendering `example` values from `CodegenProperty` or `CodegenParameter` in Mustache templates, use `lambdaExample` instead of direct `example` interpolation:
+
+```mustache
+{{#hasExample}}{{#lambdaExample}}{{/lambdaExample}}{{/hasExample}}
+```
+
+The `example` field is still present for compatibility and scalar example values, but it is not a complete rendering API for templates. The `lambdaExample` section streams object and array examples as JSON while preserving scalar example rendering. This is a context-specific lambda on example-bearing objects, not an entry in the global `lambda` map. When embedding an example in a language string, JSON string, or HTML text context, wrap `lambdaExample` in the appropriate escaping lambda for that context, such as `lambda.escapeJavaString`, `lambda.escapeJsonString`, or `lambdaEscapeHtml`.
+
 
 ## Mustache Lambdas
 
@@ -835,6 +845,11 @@ Many generators (*those extending DefaultCodegen*) come with a small set of lamb
 - `indented_8` - Prepends 8 spaces indention from second line of a fragment on. First line will be indented by Mustache.
 - `indented_12` - Prepends 12 spaces indention from second line of a fragment on. First line will be indented by Mustache.
 - `indented_16` -Prepends 16 spaces indention from second line of a fragment on. First line will be indented by Mustache.
+- `trim` - Removes leading and trailing whitespace from a fragment.
+- `trimLineBreaks` - Replaces duplicate line breaks in a fragment with a single line break.
+- `trimWhitespace` - Replaces duplicate whitespace in a fragment with a single space.
+- `trimTrailingWithNewLine` - Removes trailing whitespace from a fragment and appends a line break.
+- `trimTrailing` - Removes trailing whitespace from a fragment.
 
 Some generators provide additional lambdas. Lambda is invoked by `lambda.[lambda name]` expression. For example: `{{#lambda.lowercase}}FRAGMENT TO LOWERCASE{{/lambda.lowercase}}` to lower case text between `lambda.lowercase`.
 
diff --git a/docs/usage.md b/docs/usage.md
index 26bc451f1923..7abbe99cd22f 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -487,7 +487,7 @@ OPTIONS
             variable templating of servers.
 
         --skip-operation-example
-            Skip examples defined in operations to avoid out of memory errors.
+            Skip examples defined in operations.
 
         --skip-validate-spec
             Skips the default behavior of validating an input specification.
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java
index c23b7d9310a3..f59bb1e67e6b 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java
@@ -354,7 +354,7 @@ public static enum ENUM_PROPERTY_NAMING_TYPE {camelCase, PascalCase, snake_case,
     public static final String REMOVE_OPERATION_ID_PREFIX_COUNT_DESC = "Count of delimiter for the prefix. Use -1 for last Default: 1";
 
     public static final String SKIP_OPERATION_EXAMPLE = "skipOperationExample";
-    public static final String SKIP_OPERATION_EXAMPLE_DESC = "Skip examples defined in operations to avoid out of memory errors.";
+    public static final String SKIP_OPERATION_EXAMPLE_DESC = "Skip examples defined in operations.";
 
     public static final String STRIP_PACKAGE_NAME = "stripPackageName";
     public static final String STRIP_PACKAGE_NAME_DESC = "Whether to strip leading dot-separated packages from generated model classes";
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java
index 98ed3467c1b3..8837cf89a778 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java
@@ -4772,7 +4772,7 @@ public CodegenOperation fromOperation(String path,
             }
         }
 
-        // check skipOperationExample, which can be set to true to avoid out of memory errors for large spec
+        // check skipOperationExample, which can be set to true to omit operation examples from generated output
         if (!isSkipOperationExample() && operation.getResponses() != null) {
             // generate examples
             ExampleGenerator generator = new ExampleGenerator(schemas, this.openAPI);

From 3a9e23b15d420ebf0ed3ddd0139c90b3f4eacf97 Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 19:49:42 +0200
Subject: [PATCH 41/42] Remove stale C# Functions example fallback

---
 .../src/main/resources/csharp-functions/api_doc.mustache        | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache b/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache
index 428086cfa59f..3f28326f8d43 100644
--- a/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache
+++ b/modules/openapi-generator/src/main/resources/csharp-functions/api_doc.mustache
@@ -72,7 +72,7 @@ namespace Example
             {{/useHttpClient}}
             {{#allParams}}
             {{#isPrimitiveType}}
-            var {{paramName}} = {{#lambdaExample}}{{/lambdaExample}}{{^lambdaExample}}{{#hasExample}}{{{example}}}{{/hasExample}}{{^hasExample}}default({{{dataType}}}){{/hasExample}}{{/lambdaExample}};  // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}}
+            var {{paramName}} = {{#hasExample}}{{#lambdaExample}}{{/lambdaExample}}{{/hasExample}}{{^hasExample}}default({{{dataType}}}){{/hasExample}};  // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}}
             {{/isPrimitiveType}}
             {{^isPrimitiveType}}
             var {{paramName}} = new {{{dataType}}}(); // {{{dataType}}} | {{{description}}}{{^required}} (optional) {{/required}}{{#defaultValue}} (default to {{{.}}}){{/defaultValue}}

From 815295e1f672b8fbb4ec249fae3d208e15ade869 Mon Sep 17 00:00:00 2001
From: Vaclav Haisman 
Date: Tue, 30 Jun 2026 20:06:24 +0200
Subject: [PATCH 42/42] Revert "SpringCodegenTest: Disable OOM test for now."

This reverts commit 7651ac214170e6876d839a48e450a9d10031d9ec.
---
 .../org/openapitools/codegen/java/spring/SpringCodegenTest.java  | 1 -
 1 file changed, 1 deletion(-)

diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java
index 1c17ce599e80..d80a39acf901 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/spring/SpringCodegenTest.java
@@ -8147,7 +8147,6 @@ void schemaMappingWithNullableAllOfRendersNullableJavaProperty() throws IOExcept
     }
 
     @Test
-    @Ignore("Huge test used only to test OOME.")
     void issue23849() throws IOException {
         File output = Files.createTempDirectory("issue23849").toFile().getCanonicalFile();
         output.deleteOnExit();