Bug 50721 - [Kelvin API] write and publish API documentation
Summary: [Kelvin API] write and publish API documentation
Status: CLOSED FIXED
Alias: None
Product: UCS@school
Classification: Unclassified
Component: HTTP-API (Kelvin)
Version: UCS@school 4.4
Hardware: Other Linux
: P5 normal
Target Milestone: ---
Assignee: Daniel Tröder
QA Contact: Ole Schwiegert
URL:
Keywords:
Depends on:
Blocks: 50637
  Show dependency treegraph
 
Reported: 2020-01-16 15:40 CET by Daniel Tröder
Modified: 2021-02-23 09:29 CET (History)
1 user (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Customer ID:
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Tröder univentionstaff 2020-01-16 15:40:58 CET
The documentation should contain:
* resources
* methods
* authentication
* expected attributes and formats
* missing parts (e.g. pagination)
* examples (curl / JSON)

The documentation should be written using Sphinx and published on docs.univenion.de.
Comment 1 Ole Schwiegert univentionstaff 2020-01-21 12:40:59 CET
Installation and configuration
Installation

This can done either through -> This can be done either through
Comment 2 Daniel Tröder univentionstaff 2020-01-22 02:13:13 CET
Finished the documentation.

Content tree:
-------------


Overview
    Components
Installation and configuration
    Installation
    Configuration
        Token validity
        Log level
        Configuration of user object management (import configuration)
        Python hooks for user object management (import-user)
Authentication and authorization
    Authentication
    Authorization
OpenAPI / Swagger / ReDoc
    Interactive API browser
    Generating client code from OpenAPI schema
Resources
    Resource Roles
        Resource representation
        List / Search
        Retrieve
    Resource Schools
        Resource representation
        List / Search
        Retrieve
    Resource Users
        Resource representation
            school[s]
            school_classes
            udm_properties
        List / Search
        Retrieve
        Create
        Modify / Move
            PUT example
            PATCH example
            Move
        Delete
Known Issues
    Rebuilding the UDM REST API Client
    No pagination


[feature/kelvin] 5b4c39d54 Bug #50721: documentation stub
[feature/kelvin] 17d18ff2a Bug #50721: include theme, add build instructions
[feature/kelvin] 9f8d92cd4 Bug #50721: document Kelvin API
[feature/kelvin] a874ecece Bug #50721: API documentation
Comment 3 Daniel Tröder univentionstaff 2020-01-22 02:23:22 CET
Commited copy of HTML build to "docs.univention.de" git repo:

[master 55b6065] Bug #50721: complete ucsschool-kelvin-rest-api docu
Comment 4 Ole Schwiegert univentionstaff 2020-01-22 06:56:56 CET
User Resource:
1 school_classes must exist (als URLs) in schools -> ... (as URLs) ...

2 In the user resource urls are represented as "https://<fqdn>/ucsschool/kelvin/v1/schools/DEMOSCHOOL"

In the other resource examples the (I presume original) URLs like
"https://m66.uni.dtr/ucsschool/kelvin/v1/schools/DEMOSCHOOL"
show.

I personally prefer the version with <fqdn> but at the very least it should be consistent.

OpenAPI/Swagger/ReDoc:

3 To use it, a token must first be retrieved by by clicking -> ... retrieved by clicking

Installation and Configuration:
4 The differences are explained in chapter TODO. -> Remove the TODO
Comment 5 Ole Schwiegert univentionstaff 2020-01-22 07:04:43 CET
commit 481c7457 Bug #50721: Fix minor issues with the documentation.

I fixed the mentioned issues with this commit.
Comment 6 Daniel Tröder univentionstaff 2020-01-22 10:49:09 CET
Thanks, I reviewed the change.

I moved the section about file locations and import hooks from the readme to the installation page:

[feature/kelvin f7fdae9e1] Bug #50721: move section about file locations and import hooks from readme to installation page

.. and pushed it into the docs repo:

[master fd3e748] Bug #50721: add section about file locations and import hooks
Comment 7 Ole Schwiegert univentionstaff 2020-01-22 11:51:15 CET
Changes look good. I VERIFY as soon as the doc is published.
Comment 8 Ole Schwiegert univentionstaff 2020-01-22 12:29:49 CET
Published -> VERIFIED
Comment 9 Daniel Tröder univentionstaff 2021-02-23 09:29:46 CET
A Kelvin API app with the changes in this bug has been published.