API routes (Click a route to expand it, click here to expand/collapse all)
Debug API
GET/debug/getSomeReportLinks/{idCustomer}/{idDepartment}
Returns some report links
Parameter Location Type Requirements Optional Default value Description
idCustomer URI-Path string No idCustomer
idDepartment URI-Path string No idDepartment
minSize URI-Query int Yes 1000 Minimum report size
maxSize URI-Query int Yes 2097152 Maximum report size
count URI-Query int Yes 3 Amount of items to look for
Response HTTP Type Description
Success 200 direct output Directly outputs text
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/analyze
Analyze a PDF and summarize results
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
start URI-Query int Yes 1 ObjectID starting position
end URI-Query int Yes null ObjectID end position. Default to last object.
outputMemorySpikes URI-Query bool Yes false If true, will output on which objects the peak memory was raised significantly. Note that this will cause the output to not be pure JSON anymore.
imageAnalysis URI-Query bool Yes false If true, additional analysis on images is output.
fontAnalysis URI-Query bool Yes false If true, additional analysis on fonts is output.
xobjectAnalysis URI-Query bool Yes false If true, additional analysis on stream xobjectForms is output.
otherObjectAnalysis URI-Query bool Yes false If true, additional analysis on other stream object types is output.
Response HTTP Type Description
Success 200 object Analysis
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/ancestrySummary/{ids}
For each given object ID, returns an ancestry summary on how this object is reached.
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
ids URI-Path string No Comma separated list of object IDs
implode URI-Query bool Yes true True to implode path-arrays into strings separated by " -> ", false to present paths as arrays of object IDs
Response HTTP Type Description
Success 200 object Ancestry summary per object
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/invertedReferenceTree
Output the inverted reference tree, displaying for all objects where they are referred from.
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
Response HTTP Type Description
Success 200 direct output Directly outputs text
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/output/{ids}
Output all objects by the IDs provided.
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
ids URI-Path string No Comma separated list of object IDs. Can also be provided as range with a single dash separator. If values are prefixed with P, they'll indicate page numbers.
resolveDepth URI-Query int Yes 0 Depth of indirect object references to resolve and embed
arrayLimit URI-Query int Yes 20 Arrays with more items than this will not be traversed and just listed by a summary string.
stringLimit URI-Query int Yes 100 Strings longer than this limit will not be displayed and just listed by their length.
flatten URI-Query bool Yes false Flatten the referenced objects into this object.
outputStream URI-Query bool Yes false Output decompressed stream context.
outputRecompressedImage URI-Query bool Yes false Output image.
Response HTTP Type Description
Success 200 direct output Directly outputs text
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/recompress
Recompression in debug/dev mode
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
Response HTTP Type Description
Success 200 direct output Directly outputs text
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/refPaths/{ids}
For each given object ID, returns the full list of reference paths to reach the object.
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
ids URI-Path string No Comma separated list of object IDs
implode URI-Query bool Yes true True to implode path-arrays into strings separated by " -> ", false to present paths as arrays of object IDs
detailed URI-Query bool Yes false True to annotate each step with dictionary and array sub-locations.
pagesAsRoot URI-Query bool Yes true True to treat the Pages dictionary object as root, False to treat the Catalog object as root.
Response HTTP Type Description
Success 200 object RefPaths per object
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/debug/{source}/referenceTree
Output the reference tree, displaying for all objects where they refer to.
Parameter Location Type Requirements Optional Default value Description
source URI-Path string No ID of the source to use; check API code for list.
Response HTTP Type Description
Success 200 direct output Directly outputs text
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
Default APIs
GET/
Provides the API-specification. Only enabled if API exposure is enabled.
Parameter Location Type Requirements Optional Default value Description
format URI-Query string
enum: [ "KateAPI", "InternalAPIMap", "OpenAPI", "Swagger" ]
Yes "KateAPI" Documentation format. We support KateAPI documentation, Swagger/OpenAPI documentation and raw output of the internal API-map cache.
openApiVersion URI-Query int
enum: [ 2, 3 ]
Yes 2 Version 3 is crappy with request bodies, so we prefer version 2 (which only sucks regarding Response definitions; hence we prefer KateAPI documentation).
Response HTTP Type Description
Success 200 object The API-documentation.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
Recompression API
GET/recompress/{url}
Recompress a PDF by given URL; with all default parameters tuned by Nick.
Parameter Location Type Requirements Optional Default value Description
url URI-Path string
pattern: [^?]+
No Original PDF URL
compressionProfile URI-Query string
enum: [ "off", "low", "medium", "max" ]
Yes "max" Compression profile
keepAsLatest URI-Query bool Yes false If true, keeps a copy of the downloaded input as soruce "latest" for Debugger API
Response HTTP Type Description
Success 200 object One-time URL to compressed PDF and some statistics
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
Authentication scheme:
JWTAuth
Required flags:
reports:*
Uncategorized APIs
GET/pdf/download/{ott}/{filename}
Navigation request, not an API endpoint. Outputs a previously generated temporary report to the browser as download.
Parameter Location Type Requirements Optional Default value Description
ott URI-Path string No One time file token
filename URI-Path string No Report filename. Can be modified as desired; only used for browser output headers.
Response HTTP Type Description
Success 200 void Direct download output, so no API response.
InvalidOneTimeTokenException 404 File or token does not exist. These links can only be used once. If you experience this on first time access, your security software or network software might have pre-accessed it. In that case, it is recommended to consult your network/security administrator.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/pdf/render/{ott}/{filename}
Navigation request, not an API endpoint. Outputs a previously generated temporary report to the browser.
Parameter Location Type Requirements Optional Default value Description
ott URI-Path string No One time file token
filename URI-Path string No Report filename. Can be modified as desired; only used for browser output headers.
Response HTTP Type Description
Success 200 void Direct file output, so no API response.
InvalidOneTimeTokenException 404 File or token does not exist. These links can only be used once. If you experience this on first time access, your security software or network software might have pre-accessed it. In that case, it is recommended to consult your network/security administrator.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/reportTypes Authentication required
Returns REDGroups corresponding to available report types for authorized customer-department.
Parameter Location Type Requirements Optional Default value Description
getAll URI-Query bool Yes false If true, list all, value true only allowed on requests by RED-Flow.
Response HTTP Type Description
Success 200 int[] Available ReportType REDGroups
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
Yes
Authentication scheme:
JWTAuth
Required flags:
('kate' OR 'kate:migration') AND ('reports:*' OR 'kate:migration')
GET/reportTypes/status/{statusId} Authentication required
Returns REDGroups corresponding to available report types for authorized customer-department and the current status.
Parameter Location Type Requirements Optional Default value Description
statusId URI-Path int No The id of the current status
Response HTTP Type Description
Success 200 int[] Available ReportType REDGroups
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
Yes
Authentication scheme:
JWTAuth
Required flags:
('kate' OR 'kate:migration') AND ('reports:*' OR 'kate:migration')
GET/reportTypes/{idREDGroup}/icon.png
Directly outputs the ReportType icon
Parameter Location Type Requirements Optional Default value Description
idREDGroup URI-Path int No REDGroup ID of the ReportType
Response HTTP Type Description
Success 200 png PNG Icon for given ReportType
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
No
GET/{idREDSet}/reports Authentication required
Returns all previously made Reports with some metadata, all the links should work.
Parameter Location Type Requirements Optional Default value Description
idREDSet URI-Path string No ID of REDSet to get the generated reports for.
Response HTTP Type Description
Success 200 Report[] A list of objects with a refreshed SSBin link of the report and some additional information
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
Yes
Authentication scheme:
JWTAuth
Required flags:
reports:*
POST/allocateReportUpload Authentication required
Allocates an URI for use to upload a report to of a valuation.
Parameter Location Type Requirements Optional Default value Description
valuationId POST-body string
minLength: 1
maxLength: 36
pattern: ^[a-z-_0-9]+$
No The id of the valuation this report belongs to.
reportType POST-body string
minLength: 3
maxLength: 50
pattern: ^[a-z-_0-9]+$
No The type of the report this is.
fileName POST-body string
minLength: 1
maxLength: 255
pattern: ^[a-zA-Z-_0-9 ]+\.pdf$
No The desired filename for downloading, include its extension. Currently only files of type PDF are allowed.
Response HTTP Type Description
Success 200 string The URI to upload the binary file content to.
ConfigurationException 500 Invalid microservice configuration. See details for details.
IncorrectFileExtension 400 File does not have an allowed extension
SSBinExpiredFileURLException 403 This file URL has expired and is no longer valid. With the proper privileges, it can still be used to issue a new signed file URL.
SSBinInvalidAllocationTokenException 404 The allocated state for this upload token could not be found.
SSBinInvalidSignatureException 403 This signature of this file URL could not be verified, rendering it invalid. The public key used for verification does not match the signature. Note that the filename is also signed.
SSBinMalformedFileURLException 400 File URL representing securely stored static binary is malformed/invalid.
SSBinNotFoundException 404 Binary file content not found.
SSBinRevokedAudienceException 403 This file URL has been revoked; it's intended audience has been blacklisted.
SSBinUnregisteredSigningServiceException 500 The signing service encoded in the file URL has not been registered/configured on the ssbin-service; so no key-pair is available.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
Yes
Authentication scheme:
JWTAuth
Required flags:
kate AND reports:*
POST/getNewURL Authentication required
Used to generate a new shareable link intended for external parties, denoted by audience.
Parameter Location Type Requirements Optional Default value Description
fileURL POST-body string
minLength: 1
maxLength: 510
pattern: ^https:\/\/reports.+\.pdf$
No Any previously generated fileURL.
audience POST-body string
enum: [ "kate", "pp", "taxapay", "ing", "rabo", "abn", "rnhb", "triodos", "ReadAPI" ]
No The audience this new link is intended for.
newFileName POST-body string
minLength: 1
maxLength: 255
pattern: ^[a-zA-Z0-9-_]+\.pdf$
Yes null The filename used in the new link, by default the existing name.
valuationId POST-body string
minLength: 1
maxLength: 36
pattern: ^[a-zA-Z0-9-_]+$
Yes null The id of the valuation this report belongs to.
reportType POST-body string
minLength: 3
maxLength: 50
pattern: ^[a-zA-Z0-9-_]+$
Yes null The type of the report this is.
Response HTTP Type Description
Success 200 ?string The newly created url.
ConfigurationException 500 Invalid microservice configuration. See details for details.
SSBinExpiredFileURLException 403 This file URL has expired and is no longer valid. With the proper privileges, it can still be used to issue a new signed file URL.
SSBinInvalidAllocationTokenException 404 The allocated state for this upload token could not be found.
SSBinInvalidSignatureException 403 This signature of this file URL could not be verified, rendering it invalid. The public key used for verification does not match the signature. Note that the filename is also signed.
SSBinMalformedFileURLException 400 File URL representing securely stored static binary is malformed/invalid.
SSBinNotFoundException 404 Binary file content not found.
SSBinRevokedAudienceException 403 This file URL has been revoked; it's intended audience has been blacklisted.
SSBinUnregisteredSigningServiceException 500 The signing service encoded in the file URL has not been registered/configured on the ssbin-service; so no key-pair is available.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
Yes
Authentication scheme:
JWTAuth
Required flags:
kate AND reports:*
POST/{fileFormat}/generate/{reportType}/{mode} Authentication required
Generates given report for given dataset, and returns a temporary one-time or permanent download/view link.
Parameter Location Type Requirements Optional Default value Description
reportType URI-Path string No Report-type. This should be a Report REDGroup ID, or its alias, as defined in the ReportType-model.
fileFormat URI-Path string
enum: [ "PDF" ]
Yes "PDF" Report file format to generate.
language POST-body string Yes "en" Language-tag to generate report in.
timezone POST-body string Yes "Europe\/Amsterdam" Timezone to represent date/times in.
mode URI-Path string
enum: [ "ssbin", "tempOutput", "tempDownload" ]
Yes "tempOutput" If set to "permanent", stores the report at SSBin and adds audit-trail entry. If set to "temporary", the report can be downloaded/previewed once and is deleted afterwards.
filename POST-body string Yes null Report filename
stamp POST-body string Yes "PREVIEW" stamp on the report, normal calls can not change this.
REDSet POST-body string
format: json
Yes null Full REDSet to generate report for, including embeds. Either "REDSet" or "idREDSet" is required.
idREDSet POST-body string Yes null ID of REDSet to generate report for. Either "REDSet" or "idREDSet" is required.
idGroups POST-body int[] Yes null idGroups of the REDSet. Used to determine the data-collection this dataset is located in.
collection POST-body string
pattern: ^[a-z]{1,32}$
Yes null Predetermined name of the data-collection. Can be used instead of idGroups.
Response HTTP Type Description
Success 200 string Link to report for download/view. Either permanently SSBin-link, or one-time download/preview link.
MissingRequiredParameterException 400 The request is missing a required input parameter. See details for involved parameter.
InvalidParameterException 400 The request has an invalid argument. See details for involved parameter and invalidation.
AuthenticationFailedException 401 Authentication failed. Re-authenticate and retry. See error details for details.
UnauthorizedException 403 Authorization for requested method rejected. See error details for details.
Authentication required:
Yes
Authentication scheme:
JWTAuth
Required flags:
kate AND reports:*
Authentication schemes (Click an authentication scheme to expand it)
JWTAuth
Result wrappers (Click a result-wrapper to expand it)
Success
Error