r28034 2026-01-09 acota FIX: PSR1.Files.SideEffects.FoundWithSymbols and PSR1.Methods.CamelCapsMethodName.NotCamelCaps [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28032 2026-01-09 acota FIX: PSR2.Methods.FunctionCallSignature.CloseBracketLine and PSR2.Methods.FunctionCallSignature.EmptyLine [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28031 2026-01-09 acota FIX: Squiz.WhiteSpace.SuperfluousWhitespace.EndLine [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28030 2026-01-09 acota CHG: Disable PSR rules for PHPCS as we kept classes in one file on purpose [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28029 2026-01-09 acota CHG: Dropping todo; considered a later stage should ResourceSpace go down a more OOP approach [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/api/openapi.php
r28028 2026-01-09 acota CHG: Dropping the templated code, example now documented in KB - https://www.resourcespace.com/knowledge-base/developers/openapi [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28024 2026-01-09 acota CHG: Dropping the specialised responses for new_user and create_resource_type_field as the resulting SDK code will struggle to match the correct response [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28020 2026-01-09 acota NEW: API binding docs for resource_file_readonly [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28019 2026-01-09 acota NEW: API binding docs for get_resource_access [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28018 2026-01-09 acota NEW: API binding docs for checkperm [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28017 2026-01-09 acota NEW: API binding docs for get_processing_message [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28016 2026-01-09 acota NEW: API binding docs for get_edit_access [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28015 2026-01-09 acota NEW: API binding docs for get_featured_collections [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28013 2026-01-09 acota NEW: API binding docs for create_resource_type_field and enforced POST request for the API binding [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_bindings.php
M /branches/20251127_acota_q13599/include/api_openapi.php
r28011 2026-01-09 acota NEW: Finished the ResourceTypeField type [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28009 2026-01-08 acota NEW: API binding docs for get_resource_type_fields - still a WIP [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28008 2026-01-08 acota NEW: API binding docs for get_users_by_permission [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28007 2026-01-08 acota NEW: API binding docs for get_user_message [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28005 2026-01-08 acota NEW: API binding docs for get_dash_search_data [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28003 2026-01-08 acota NEW: API binding docs for get_profile_image [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28002 2026-01-08 acota NEW: API binding docs for get_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28001 2026-01-08 acota NEW: API binding docs for get_users [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r28000 2026-01-08 acota NEW: API binding docs for get_collections_resource_count [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27997 2026-01-08 acota NEW: API binding docs for get_resource_collections [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27996 2026-01-08 acota NEW: API binding docs for get_data_by_field [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27995 2026-01-08 acota NEW: API binding docs for get_node_id [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27994 2026-01-08 acota NEW: API binding docs for get_resource_all_image_sizes [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27993 2026-01-08 acota NEW: API binding docs for resource_log_last_rows [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27992 2026-01-08 acota NEW: API binding docs for search_public_collections [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27991 2026-01-08 acota NEW: API binding docs for get_user_collections [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27989 2026-01-07 acota NEW: API binding docs for get_field_options [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27988 2026-01-07 acota NEW: API binding docs for get_related_resources [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27987 2026-01-07 acota NEW: API binding docs for get_resource_types [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27986 2026-01-07 acota NEW: API binding docs for get_alternative_files [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27985 2026-01-07 acota NEW: API binding docs for get_resource_data [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27984 2026-01-07 acota NEW: API binding docs for get_resource_path [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27981 2026-01-07 acota NEW: API binding docs for get_resource_log [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27980 2026-01-07 acota NEW: API binding docs for get_resource_field_data [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27979 2026-01-07 acota NEW: API binding docs for search_get_previews [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27978 2026-01-07 acota NEW: API binding docs for do_search [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27976 2026-01-06 acota NEW: API binding docs for do_search - still a WIP [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27975 2026-01-06 acota CHG: Simplify references by using the actual object class (helps with quick peaks at the object definition too) [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27974 2026-01-06 acota NEW: API binding docs for upload_multipart [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27972 2026-01-06 acota NEW: API binding docs for upload_file_by_url [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27971 2026-01-06 acota NEW: API binding docs for upload_file [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27970 2026-01-06 acota NEW: API binding docs for save_user [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27969 2026-01-06 acota NEW: API binding docs for new_user [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27967 2026-01-06 acota NEW: API binding docs for delete_resources_in_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27966 2026-01-06 acota CHG: Updating zircote/swagger-php to add support for patternProperties. REV: Partially r27962. [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/api/openapi.php
M /branches/20251127_acota_q13599/composer.lock
M /branches/20251127_acota_q13599/include/api_openapi.php
r27962 2026-01-02 acota NEW: API binding docs for toggle_active_state_for_nodes and WIP for its response to support patternProperties [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/api/openapi.php
M /branches/20251127_acota_q13599/include/api_openapi.php
r27961 2026-01-02 acota NEW: API binding docs for mark_email_as_invalid [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27960 2026-01-02 acota NEW: API binding docs for save_tab [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27959 2026-01-02 acota NEW: API binding docs for reorder_tabs and delete_tabs [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27958 2026-01-02 acota NEW: API binding docs for reorder_featured_collections [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27957 2026-01-02 acota NEW: API binding docs for send_collection_to_admin [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27956 2026-01-02 acota NEW: API binding docs for show_hide_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27955 2026-01-02 acota NEW: API binding docs for relate_all_resources. Introducing new IdsListParamValue type. [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27954 2026-01-02 acota NEW: API binding docs for send_user_message [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27953 2026-01-02 acota CHG: Added an example for save_collection as it was in the KB [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27952 2026-01-02 acota NEW: API binding docs for save_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27951 2026-01-02 acota NEW: API binding docs for update_related_resource [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27949 2025-12-31 acota CHG: Make ReplaceResourceFileResponse props required (technically more correct) [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27948 2025-12-31 acota NEW: API binding docs for replace_resource_file [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27947 2025-12-31 acota FIX: Incorrect type [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27946 2025-12-31 acota NEW: API binding docs for add_resource_nodes_multi [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27945 2025-12-31 acota NEW: API binding docs for add_resource_nodes [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27944 2025-12-31 acota NEW: API binding docs for set_node [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27943 2025-12-31 acota CHG: Updated the example/template used for new documentation [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27942 2025-12-31 acota NEW: API binding docs for delete_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27941 2025-12-31 acota NEW: API binding docs for create_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27940 2025-12-31 acota NEW: API binding docs for collection_remove_resources [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27939 2025-12-31 acota NEW: API binding docs for remove_resource_from_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27938 2025-12-31 acota NEW: API binding docs for collection_add_resources and introduced a new re-usable CollectionParam [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27937 2025-12-31 acota NEW: Re-usable StringResponse model [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27936 2025-12-31 acota NEW: API binding docs for add_resource_to_collection [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27935 2025-12-31 acota NEW: API binding docs for delete_alternative_file [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27934 2025-12-31 acota NEW: API binding docs for delete_access_keys. Also added a date-time format [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27932 2025-12-31 acota CHG: Renaming BaseQuery model to BindingFunctionDiscriminator to reflect its true purpose [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27930 2025-12-31 acota NEW: API binding docs for add_alternative_file [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27929 2025-12-31 acota NEW: API binding documentation [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27928 2025-12-30 acota CHG: update_field binding schema to re-use the new ResourceParam [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27927 2025-12-30 acota NEW: API binding docs and introducing a new re-usable ResourceParam [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27925 2025-12-30 acota CHG: Do not escape slashes (e.g. for URLs) [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/api/openapi.php
r27924 2025-12-30 acota CHG: Updating depending to address the last merge conflict on composer.lock [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/composer.lock
r27923 2025-12-30 acota CHG: update branch from /trunk [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599
M /branches/20251127_acota_q13599/api/index.php
M /branches/20251127_acota_q13599/composer.json
M /branches/20251127_acota_q13599/composer.lock
M /branches/20251127_acota_q13599/dbstruct/help_resource.txt
M /branches/20251127_acota_q13599/include/collections_functions.php
M /branches/20251127_acota_q13599/include/config_functions.php
M /branches/20251127_acota_q13599/include/do_search.php
M /branches/20251127_acota_q13599/include/do_search_keywords.php
M /branches/20251127_acota_q13599/include/general_functions.php
M /branches/20251127_acota_q13599/include/image_processing.php
M /branches/20251127_acota_q13599/include/node_functions.php
M /branches/20251127_acota_q13599/include/render_functions.php
M /branches/20251127_acota_q13599/include/search_functions.php
M /branches/20251127_acota_q13599/include/searchbar.php
M /branches/20251127_acota_q13599/include/version.php
M /branches/20251127_acota_q13599/js/global.js
M /branches/20251127_acota_q13599/languages/en.php
M /branches/20251127_acota_q13599/pages/dash_tile.php
M /branches/20251127_acota_q13599/pages/team/ajax/graph.php
M /branches/20251127_acota_q13599/pages/tools/filestore_sync.php
M /branches/20251127_acota_q13599/pages/upload_batch.php
M /branches/20251127_acota_q13599/plugins/action_dates/hooks/all.php
M /branches/20251127_acota_q13599/plugins/action_dates/languages/en.php
M /branches/20251127_acota_q13599/plugins/clip/scripts/generate_vectors.php
M /branches/20251127_acota_q13599/plugins/faces/hooks/all.php
M /branches/20251127_acota_q13599/plugins/faces/include/faces_functions.php
M /branches/20251127_acota_q13599/plugins/faces/scripts/faces_config.template.ini
M /branches/20251127_acota_q13599/plugins/faces/scripts/faces_service_wrapper.py
M /branches/20251127_acota_q13599/plugins/image_banks/pages/search.php
M /branches/20251127_acota_q13599/plugins/lightbox_preview/include/utility.php
M /branches/20251127_acota_q13599/plugins/video_bookend/pages/bookend.php
A /branches/20251127_acota_q13599/tests/test_list/000391_allow_unicode_characters.php
r27922 2025-12-30 acota FIX: Incorrect types [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27877 2025-12-04 acota FIX: Missing input reference to the delete_resource schema [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27876 2025-12-04 acota CHG: Documenting delete_resource and new model for ID properties [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27875 2025-12-04 acota CHG: Finish documenting update_field [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27872 2025-12-04 acota CHG: Documenting create_resource and some re-usable models [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27864 2025-12-04 acota CHG: update branch from /trunk [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599
M /branches/20251127_acota_q13599/include/collections_functions.php
M /branches/20251127_acota_q13599/include/render_functions.php
M /branches/20251127_acota_q13599/include/reporting_functions.php
M /branches/20251127_acota_q13599/login.php
M /branches/20251127_acota_q13599/pages/collections_featured.php
M /branches/20251127_acota_q13599/pages/tools/filestore_sync.php
M /branches/20251127_acota_q13599/plugins/clip/scripts/generate_vectors.php
M /branches/20251127_acota_q13599/plugins/consentmanager/hooks/all.php
M /branches/20251127_acota_q13599/plugins/consentmanager/include/consent_functions.php
r27863 2025-12-04 acota CHG: Dropping the function property overloading as I find it unnecessary considering the discriminator has no mappings (meaning the function and schema names should match) [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27862 2025-12-04 acota CHG: Use existing constant values [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27861 2025-12-04 acota CHG: Dropping the commented discriminator mapping since we the function must match the schema name [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27860 2025-12-03 acota CHG: Cleaning up more of the openapi documentation [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27859 2025-12-03 acota CHG: WIP on formalising POST requests to help code generators [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27857 2025-12-03 acota CHG: Re-arranging the OpenAPI spec to use a fake query object which will discriminate on the function for (the RPC binding action name) [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27849 2025-12-02 acota CHG: Making user an internal query param required as part of the security schema [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27848 2025-12-02 acota CHG: Updating signature example based on https://www.resourcespace.com/knowledge-base/api/ [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27842 2025-12-02 acota CHG: update branch from /trunk [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599
M /branches/20251127_acota_q13599/api/iiif/handler2.php
M /branches/20251127_acota_q13599/include/config.default.php
M /branches/20251127_acota_q13599/include/definitions.php
M /branches/20251127_acota_q13599/include/encryption_functions.php
M /branches/20251127_acota_q13599/include/general_functions.php
M /branches/20251127_acota_q13599/include/iiif_functions.php
M /branches/20251127_acota_q13599/include/image_processing.php
M /branches/20251127_acota_q13599/languages/en.php
M /branches/20251127_acota_q13599/login.php
M /branches/20251127_acota_q13599/pages/ajax/autocomplete_user.php
M /branches/20251127_acota_q13599/pages/ajax/category_tree_lazy_load.php
M /branches/20251127_acota_q13599/pages/ajax/userlist_select_update.php
M /branches/20251127_acota_q13599/pages/ajax/username_list_update.php
M /branches/20251127_acota_q13599/pages/edit_fields/9_ajax/suggest_keywords.php
M /branches/20251127_acota_q13599/pages/team/ajax/graph.php
M /branches/20251127_acota_q13599/pages/tools/staticsync.php
M /branches/20251127_acota_q13599/plugins/clip/hooks/all.php
M /branches/20251127_acota_q13599/plugins/faces/scripts/faces_tag.php
M /branches/20251127_acota_q13599/plugins/openai_gpt/hooks/all.php
M /branches/20251127_acota_q13599/plugins/totp/config/config.php
M /branches/20251127_acota_q13599/plugins/totp/hooks/all.php
M /branches/20251127_acota_q13599/plugins/totp/include/totp_functions.php
M /branches/20251127_acota_q13599/plugins/totp/languages/en.php
M /branches/20251127_acota_q13599/plugins/totp/pages/setup.php
M /branches/20251127_acota_q13599/plugins/transform/languages/en.php
M /branches/20251127_acota_q13599/plugins/transform/pages/crop.php
M /branches/20251127_acota_q13599/plugins/transform/pages/setup.php
r27831 2025-11-28 acota CHG: WIP on mapping ResourceSpace API to the OpenAPI spec [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/include/api_openapi.php
r27827 2025-11-28 acota CHG: Provide more fail information (backtrace) when the spec file cannot be generated [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/api/openapi.php
r27825 2025-11-27 acota NEW: api/openapi.php endpoint and its associated test [branches/20251127_acota_q13599][q13599]

A /branches/20251127_acota_q13599/api/openapi.php
A /branches/20251127_acota_q13599/include/api_openapi.php
A /branches/20251127_acota_q13599/tests/test_list/001379_api_validate_openapi_spec.php
r27824 2025-11-27 acota NEW: dependency on zircote/swagger-php [branches/20251127_acota_q13599][q13599]

M /branches/20251127_acota_q13599/composer.json
M /branches/20251127_acota_q13599/composer.lock
r27816 2025-11-27 acota NEW: Branch for OpenAPI spec [q13599]

A /branches/20251127_acota_q13599