Skip to content

Conversation

skerbis
Copy link
Member

@skerbis skerbis commented Mar 20, 2025

Erweiterung der README.md mit Nutzungshinweisen und Entwicklerdokumentation

Summary by CodeRabbit

  • Documentation
    • Expanded API usage guidelines, including instructions for API token creation, authorization practices, and examples for querying and creating content.
    • Introduced an integrated interface for testing and accessing API documentation.
    • Provided detailed steps for developing custom API endpoints along with best practices and resource references.

Erweiterung der README.md mit Nutzungshinweisen und Entwicklerdokumentation
@skerbis skerbis requested a review from dergel March 20, 2025 14:33
Copy link

coderabbitai bot commented Mar 20, 2025

Walkthrough

The documentation has been updated to include a comprehensive guide on using APIs within the REDAXO framework. It details steps for creating an API token in the backend, using authorization headers, and provides examples for querying and creating articles. New content covers the use of Swagger UI for interactive API documentation and testing, as well as detailed instructions for developing custom API endpoints—including creating a RoutePackage, registration, and parameter validation. Best practices, security measures, and references to external resources are also provided. No changes were made to exported or public entities.

Changes

File(s) Change Summary
README.md Added comprehensive sections on API usage: instructions for API token creation, usage of authorization headers, article querying/creation examples, a Swagger UI guide for API testing, detailed steps for developing custom API endpoints with RoutePackages, parameter validation guidance, best practices, and external resource references.

Sequence Diagram(s)

sequenceDiagram
    participant Dev as Developer
    participant BA as Backend API
    participant CA as Custom API Endpoint
    participant SW as Swagger UI

    Dev->>BA: Request API Token
    BA-->>Dev: Return API Token
    Dev->>CA: Send API request with token
    CA->>CA: Validate parameters
    CA-->>Dev: Return response
    Dev->>SW: Access docs & test endpoints
Loading

Poem

I'm a rabbit, hopping with glee,
New API docs have set me free.
Tokens are made and headers fly,
Swagger UI shows the way to try.
Custom endpoints lead the play—
Hoppin' code, hooray, hooray!
🥕🐰


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (6)
README.md (6)

9-21: Review of the "Allgemeine Verwendung der APIs" Section
The new section clearly explains how to create an API-Token and introduces the general usage of the APIs. However, several list items (lines 15–20) exhibit minor grammatical and punctuation issues as flagged by LanguageTool (e.g., missing commas and phrasing concerns). It would be helpful to review and polish these instructions for clarity and consistency.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~15-~15: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...Im Backend zu "API" > "Token" navigieren 2. Auf das "+" Symbol klicken, um einen neuen ...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~16-~16: Wenn es sich hier um eine Infinitivgruppe (‚zu‘ + Grundform) handelt, muss in der Regel ein Komma gesetzt werden.
Context: ...Symbol klicken, um einen neuen Token zu erstellen 3. Einen Namen für den Token eingeben 4...

(KOMMA_INFINITIVGRUPPEN)


[uncategorized] ~16-~16: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...icken, um einen neuen Token zu erstellen 3. Einen Namen für den Token eingeben 4. De...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~17-~17: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...en 3. Einen Namen für den Token eingeben 4. Den generierten Token kopieren oder einen e...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~18-~18: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...ken kopieren oder einen eigenen eingeben 5. Die benötigten Scopes (Zugriffsrechte) f...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~19-~19: Fehlendes Komma: Teilsätze, Einschübe, Aufzählungen und direkte Rede müssen durch ein Komma vom Rest des Satzes getrennt werden.
Context: ...n Scopes (Zugriffsrechte) für den Token auswählen 6. Den Token speichern ### API verwend...

(AI_DE_KOMMA_MISSING_COMMA)


[uncategorized] ~19-~19: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...(Zugriffsrechte) für den Token auswählen 6. Den Token speichern ### API verwenden ...

(AI_DE_GGEC_REPLACEMENT_OTHER)


22-29: Fenced Code Block Lacks Language Identifier
The code block that shows the Authorization header (lines 26–28) does not specify a language. For better readability and to comply with markdownlint (MD040), consider adding a language identifier (for example, use “bash” instead of “”).

🧰 Tools
🪛 markdownlint-cli2 (0.17.2)

26-26: Fenced code blocks should have a language specified
null

(MD040, fenced-code-language)


61-65: Clarify Instructions for Swagger UI Access
The steps to open the Swagger UI are clear. A minor improvement would be to add a comma after “Mit dem Token autorisieren” (step 2) for enhanced readability.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~62-~62: Fehlendes Komma: Teilsätze, Einschübe, Aufzählungen und direkte Rede müssen durch ein Komma vom Rest des Satzes getrennt werden.
Context: ... Im REDAXO-Backend zu "API" > "OpenAPI" navigieren 2. Mit dem Token autorisieren (durch Kl...

(AI_DE_KOMMA_MISSING_COMMA)


176-237: Endpoint Overview Table is Detailed
The comprehensive table listing the endpoints, methods, statuses, and test availability is very helpful. In future iterations, consider revisiting endpoint statuses as more functionalities become fully implemented.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~178-~178: Hier scheint es einen Tippfehler zu geben. Überlegen Sie, ihn zu korrigieren.
Context: ...te Endpunkte Wenn getestet, dann wurde explicit nochmal geprüft, ob die Funktionalität ...

(AI_DE_GGEC_REPLACEMENT_ORTHOGRAPHY_SPELL)


[style] ~178-~178: Möchten Sie ein Synonym verwenden?
Context: ...kte Wenn getestet, dann wurde explicit nochmal geprüft, ob die Funktionalität exakt so...

(NOCHMAL)


[uncategorized] ~178-~178: Diese Verbform sieht falsch aus. Überlegen Sie, sie zu ersetzen.
Context: ...b die Funktionalität exakt so umgesetzt sind, wie sie in REDAXO/Core verwendet wurde...

(AI_DE_GGEC_REPLACEMENT_VERB_FORM)


[uncategorized] ~180-~180: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...det wurde. * Passende Extension Points * Vorhandene Klassen wurden genutzt * Feld...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~181-~181: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...ints * Vorhandene Klassen wurden genutzt * Felder sind auf das Nötigste reduziert. ...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~182-~182: Meinten Sie das Nomen „Add-ons“ (= Erweiterung, Zubehörteil)?
Context: ...iert. Keine Felder von externen/anderen AddOns/PlugIns werden ausgegeben oder verarbei...

(ADD_ON)


[uncategorized] ~190-~190: Möglicherweise passen das Nomen und die Wörter, die das Nomen beschreiben, grammatisch nicht zusammen.
Context: .../slices | GET | Slices eines Artikel anzeigen | ❌ | | /api/structure/...

(DE_AGREEMENT)


[uncategorized] ~192-~192: Möglicherweise passen das Nomen und die Wörter, die das Nomen beschreiben, grammatisch nicht zusammen.
Context: ...}/slices/{slice_id} | GET | Slice eines Artikel anzeigen | ❌ | | /api/structure...

(DE_AGREEMENT)


[uncategorized] ~193-~193: Möglicherweise passen das Nomen und die Wörter, die das Nomen beschreiben, grammatisch nicht zusammen.
Context: ...}/slices/{slice_id} | PUT/PATCH | Slice eines Artikel ändern | ❌ | | /api/structure...

(DE_AGREEMENT)


[uncategorized] ~224-~224: Möglicherweise passen das Nomen und die Wörter, die das Nomen beschreiben, grammatisch nicht zusammen.
Context: ... | POST | Userrole einem Users hinzufügen | ❌ | | /api/users/{id}...

(DE_AGREEMENT)

🪛 markdownlint-cli2 (0.17.2)

180-180: Unordered list style
Expected: dash; Actual: asterisk

(MD004, ul-style)


181-181: Unordered list style
Expected: dash; Actual: asterisk

(MD004, ul-style)


182-182: Unordered list style
Expected: dash; Actual: asterisk

(MD004, ul-style)


183-183: Unordered list style
Expected: dash; Actual: asterisk

(MD004, ul-style)


190-190: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


192-192: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


193-193: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


195-195: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


197-197: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


200-200: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


204-204: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


206-206: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


207-207: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


208-208: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


209-209: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


210-210: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


221-221: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


223-223: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


224-224: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


225-225: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


227-227: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


229-229: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


230-230: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


231-231: Table column count
Expected: 5; Actual: 4; Too few cells, row will be missing data

(MD056, table-column-count)


262-287: Best Practices for API Development Section Could Benefit from Minor Refinements
This section provides very useful guidelines. However, several bullets (particularly between lines 266–279) exhibit minor grammatical, spacing, or punctuation inconsistencies (as noted by LanguageTool). Consider revising these points to ensure consistency and clarity in German.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~268-~268: Meinten Sie das Nomen „Add-ons“ (= Erweiterung, Zubehörteil)?
Context: ...ints aus, um Kompatibilität mit anderen AddOns zu gewährleisten 2. Sicherheit: ...

(ADD_ON)


[uncategorized] ~275-~275: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...rationen 3. Struktur und Standards: - Folgen Sie dem bestehenden API-Design-Mu...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~276-~276: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...ehenden API-Design-Muster für Konsistenz - Liefern Sie immer passende HTTP-Statuscodes zur...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~277-~277: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...s zurück (200, 201, 400, 401, 404, etc.) - Verwenden Sie die JSON-Struktur konsiste...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~280-~280: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...g"}` bei Fehlern) 4. Dokumentation: - Dokumentieren Sie die API-Endpunkte mit ...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~281-~281: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...nkte mit aussagekräftigen Beschreibungen - Nutzen Sie den OpenAPI-Standard für Para...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~284-~284: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...ameterdeklarationen 5. Performance: - Nutzen Sie QuerySets für Datenbankabfrag...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~285-~285: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...tzen Sie QuerySets für Datenbankabfragen - Implementieren Sie Paginierung bei Liste...

(AI_DE_GGEC_UNNECESSARY_SPACE)


288-304: Resource and References Section is Very Valuable
The sections on useful references (both internal and external) add significant value. Note that static analysis has flagged some markdown links for unpaired brackets; please verify that all links are correctly formatted with matching [ and ] characters.

🧰 Tools
🪛 LanguageTool

[typographical] ~294-~294: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...den Implementierungen: - [Structure.php](https://github.com/FriendsOfREDAXO/api/...

(UNPAIRED_BRACKETS)


[typographical] ~295-~295: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ....php) - Artikelstruktur API - [Media.php](https://github.com/FriendsOfREDAXO/api/...

(UNPAIRED_BRACKETS)


[typographical] ~296-~296: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...Media.php) - Medien API - [Templates.php](https://github.com/FriendsOfREDAXO/api/...

(UNPAIRED_BRACKETS)


[typographical] ~300-~300: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ... Ressourcen - REDAXO API-Dokumentation - Offizie...

(UNPAIRED_BRACKETS)


[typographical] ~301-~301: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...umentation - [Symfony Routing Komponente](https://symfony.com/doc/current/routing...

(UNPAIRED_BRACKETS)


[typographical] ~302-~302: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...ting-Komponente - OpenAPI-Spezifikation - Do...

(UNPAIRED_BRACKETS)


[typographical] ~303-~303: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...ion - RESTful API Design Best Practices - Allgemeine B...

(UNPAIRED_BRACKETS)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 921c7cc and 6b6f864.

📒 Files selected for processing (1)
  • README.md (2 hunks)
🧰 Additional context used
🪛 Gitleaks (8.21.2)
README.md

35-36:

(curl-auth-header)


42-43:

(curl-auth-header)

🪛 LanguageTool
README.md

[uncategorized] ~15-~15: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...Im Backend zu "API" > "Token" navigieren 2. Auf das "+" Symbol klicken, um einen neuen ...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~16-~16: Wenn es sich hier um eine Infinitivgruppe (‚zu‘ + Grundform) handelt, muss in der Regel ein Komma gesetzt werden.
Context: ...Symbol klicken, um einen neuen Token zu erstellen 3. Einen Namen für den Token eingeben 4...

(KOMMA_INFINITIVGRUPPEN)


[uncategorized] ~16-~16: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...icken, um einen neuen Token zu erstellen 3. Einen Namen für den Token eingeben 4. De...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~17-~17: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...en 3. Einen Namen für den Token eingeben 4. Den generierten Token kopieren oder einen e...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~18-~18: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...ken kopieren oder einen eigenen eingeben 5. Die benötigten Scopes (Zugriffsrechte) f...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~19-~19: Fehlendes Komma: Teilsätze, Einschübe, Aufzählungen und direkte Rede müssen durch ein Komma vom Rest des Satzes getrennt werden.
Context: ...n Scopes (Zugriffsrechte) für den Token auswählen 6. Den Token speichern ### API verwend...

(AI_DE_KOMMA_MISSING_COMMA)


[uncategorized] ~19-~19: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...(Zugriffsrechte) für den Token auswählen 6. Den Token speichern ### API verwenden ...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~55-~55: Meinten Sie das Nomen „Add-on“ (= Erweiterung, Zubehörteil)?
Context: ... - API-Dokumentation und Test-Tool Das AddOn bietet eine integrierte Swagger UI-Ober...

(ADD_ON)


[uncategorized] ~57-~57: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...: - Alle verfügbaren Endpunkte einsehen - Die benötigten Parameter für jeden Endpunkt...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~58-~58: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...en Parameter für jeden Endpunkt anzeigen - Die API direkt im Browser testen Um die...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~62-~62: Fehlendes Komma: Teilsätze, Einschübe, Aufzählungen und direkte Rede müssen durch ein Komma vom Rest des Satzes getrennt werden.
Context: ... Im REDAXO-Backend zu "API" > "OpenAPI" navigieren 2. Mit dem Token autorisieren (durch Kl...

(AI_DE_KOMMA_MISSING_COMMA)


[uncategorized] ~268-~268: Meinten Sie das Nomen „Add-ons“ (= Erweiterung, Zubehörteil)?
Context: ...ints aus, um Kompatibilität mit anderen AddOns zu gewährleisten 2. Sicherheit: ...

(ADD_ON)


[uncategorized] ~275-~275: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...rationen 3. Struktur und Standards: - Folgen Sie dem bestehenden API-Design-Mu...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~276-~276: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...ehenden API-Design-Muster für Konsistenz - Liefern Sie immer passende HTTP-Statuscodes zur...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~277-~277: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...s zurück (200, 201, 400, 401, 404, etc.) - Verwenden Sie die JSON-Struktur konsiste...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~280-~280: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...g"}` bei Fehlern) 4. Dokumentation: - Dokumentieren Sie die API-Endpunkte mit ...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~281-~281: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...nkte mit aussagekräftigen Beschreibungen - Nutzen Sie den OpenAPI-Standard für Para...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~284-~284: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...ameterdeklarationen 5. Performance: - Nutzen Sie QuerySets für Datenbankabfrag...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[uncategorized] ~285-~285: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...tzen Sie QuerySets für Datenbankabfragen - Implementieren Sie Paginierung bei Liste...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[typographical] ~294-~294: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...den Implementierungen: - [Structure.php](https://github.com/FriendsOfREDAXO/api/...

(UNPAIRED_BRACKETS)


[typographical] ~295-~295: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ....php) - Artikelstruktur API - [Media.php](https://github.com/FriendsOfREDAXO/api/...

(UNPAIRED_BRACKETS)


[typographical] ~296-~296: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...Media.php) - Medien API - [Templates.php](https://github.com/FriendsOfREDAXO/api/...

(UNPAIRED_BRACKETS)


[typographical] ~300-~300: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ... Ressourcen - REDAXO API-Dokumentation - Offizie...

(UNPAIRED_BRACKETS)


[typographical] ~301-~301: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...umentation - [Symfony Routing Komponente](https://symfony.com/doc/current/routing...

(UNPAIRED_BRACKETS)


[typographical] ~302-~302: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...ting-Komponente - OpenAPI-Spezifikation - Do...

(UNPAIRED_BRACKETS)


[typographical] ~303-~303: Zeichen ohne sein Gegenstück: ‚[‘ scheint zu fehlen
Context: ...ion - RESTful API Design Best Practices - Allgemeine B...

(UNPAIRED_BRACKETS)

🪛 markdownlint-cli2 (0.17.2)
README.md

26-26: Fenced code blocks should have a language specified
null

(MD040, fenced-code-language)

🔇 Additional comments (11)
README.md (11)

30-38: Example 1 ("Artikelliste abfragen") is Clear and Well-Formatted
The example clearly illustrates how to query the Artikelliste with a properly formatted bash code block.

🧰 Tools
🪛 Gitleaks (8.21.2)

35-36:

(curl-auth-header)


39-51: Example 2 ("Einen neuen Artikel anlegen") is Well-Established
This example provides a clear step‐by‐step instruction on creating a new article, and the code block is correctly formatted.

🧰 Tools
🪛 Gitleaks (8.21.2)

42-43:

(curl-auth-header)


53-60: Swagger UI Section is Comprehensive
The inclusion of detailed instructions for using the integrated Swagger UI is very useful for both API documentation and testing.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~55-~55: Meinten Sie das Nomen „Add-on“ (= Erweiterung, Zubehörteil)?
Context: ... - API-Dokumentation und Test-Tool Das AddOn bietet eine integrierte Swagger UI-Ober...

(ADD_ON)


[uncategorized] ~57-~57: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...: - Alle verfügbaren Endpunkte einsehen - Die benötigten Parameter für jeden Endpunkt...

(AI_DE_GGEC_REPLACEMENT_OTHER)


[uncategorized] ~58-~58: Das sieht falsch aus. Überlegen Sie, es zu ersetzen.
Context: ...en Parameter für jeden Endpunkt anzeigen - Die API direkt im Browser testen Um die...

(AI_DE_GGEC_REPLACEMENT_OTHER)


66-112: Custom API Endpoints Section is Informative
The new section on developing custom API endpoints, including the RoutePackage example in PHP, is well structured and provides valuable guidance.


114-126: RoutePackage Registration is Straightforward
The instructions and accompanying PHP code snippet for registering the RoutePackage are clear and easy to follow.


127-174: Parameter Validation and Processing Section Completes the Workflow
The provided PHP code for registering a route with parameter validation is well explained and adheres to common best practices.


238-246: Authorization Troubleshooting is a Practical Inclusion
The instructions for addressing potential Apache header issues via the provided .htaccess configuration are practical and valuable for users.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~238-~238: Hier scheint es einen Tippfehler zu geben. Überlegen Sie, ihn zu korrigieren.
Context: ...| ✅ | ✅ | ## Bei Problemen mit Authorization Es kann sein, dass der Apache nicht al...

(AI_DE_GGEC_REPLACEMENT_ORTHOGRAPHY_SPELL)

🪛 markdownlint-cli2 (0.17.2)

242-242: Fenced code blocks should have a language specified
null

(MD040, fenced-code-language)


248-251: Emphasis on API-Token Requirement is Clear
The section reinforces the necessity of an API-Token effectively.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~250-~250: Hier scheint es einen Tippfehler zu geben. Überlegen Sie, ihn zu korrigieren.
Context: ...en API-Token im Backend anlegen und die ensprechenden Scopes (Endpunkt) freigeben. ## API St...

(AI_DE_GGEC_REPLACEMENT_ORTHOGRAPHY_SPELL)


252-256: API Struktur Section Provides a Quick Navigation Tip
A brief pointer to check the API structure directly via the OpenAPI view is a useful addition.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~254-~254: Meinten Sie das Nomen „Add-on“ (= Erweiterung, Zubehörteil)?
Context: .... ## API Struktur Am besten direkt im AddOn unter OpenAPI nachsehen. Dort werden al...

(ADD_ON)


[uncategorized] ~256-~256: Meinten Sie das Nomen „Add-on“ (= Erweiterung, Zubehörteil)?
Context: ...nktioniert vielleicht nicht, und müssen AddOn Entwickler beachten Das API AddON funk...

(ADD_ON)


257-261: Clarification on Frontend vs. Backend Context is Informative
The explanation regarding potential issues when methods are registered only for the backend context is valuable for developers integrating with the API.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~258-~258: Meinten Sie das Nomen „Add-on“ (= Erweiterung, Zubehörteil)?
Context: ...ssen AddOn Entwickler beachten Das API AddON funktioniert aus dem Frontend-User-Kont...

(ADD_ON)


[uncategorized] ~258-~258: Hier scheint es einen Tippfehler zu geben. Überlegen Sie, ihn zu korrigieren.
Context: ...s dem Frontend-User-Kontext heraus. Das heisst, sollte es registrierte Methoden an bes...

(AI_DE_GGEC_REPLACEMENT_ORTHOGRAPHY_SPELL)


[uncategorized] ~258-~258: Das sieht falsch platziert oder unnötig aus. Überlegen Sie, es zu löschen.
Context: ...e es registrierte Methoden an bestimmten ExtensionPoints geben, welche nur im Bac...

(AI_DE_GGEC_UNNECESSARY_SPACE)


[typographical] ~259-~259: Möchten Sie einen Pfeil verwenden?
Context: ...t gesetzt wurden, z.B. (rex::isBackend) -> registerEP, dann werden diese nicht in ...

(PFEILE)


[uncategorized] ~259-~259: Der Artikel sieht falsch platziert oder unnötig aus. Überlegen Sie, ihn zu löschen.
Context: ... registerEP, dann werden diese nicht in der dieser API ausgeführt. D.h. diese AddOn...

(AI_DE_GGEC_UNNECESSARY_DETERMINER)


[uncategorized] ~260-~260: Meinten Sie das Nomen „Add-ons“ (= Erweiterung, Zubehörteil)?
Context: ...n der dieser API ausgeführt. D.h. diese AddOns müssen entsprechend angepasst werden. ...

(ADD_ON)


305-320: Additional Use Cases and Credits are Well-Outlined
The later sections outlining further (yet-to-be-addressed) API use cases for the frontend and backend, along with the credits section, are clear and properly organized.

🧰 Tools
🪛 LanguageTool

[style] ~305-~305: Diese Formulierung (‚noch nicht‘) ist umgangssprachlich und wirkt eventuell unhöflich. Möglicherweise bietet sich eine andere Formulierung an.
Context: ... Practices für RESTful APIs ## Weitere noch nicht beachtete Usecases ### FE API (Wird hi...

(IMMER_NOCH_NICHT)


[style] ~307-~307: Diese Formulierung (‚noch nicht‘) ist umgangssprachlich und wirkt eventuell unhöflich. Möglicherweise bietet sich eine andere Formulierung an.
Context: ...achtete Usecases ### FE API (Wird hier noch nicht behandelt) - GET API - für...

(IMMER_NOCH_NICHT)


[style] ~315-~315: Diese Formulierung (‚noch nicht‘) ist umgangssprachlich und wirkt eventuell unhöflich. Möglicherweise bietet sich eine andere Formulierung an.
Context: ... - Für Sonsiges ### BE API (Wird hier noch nicht behandelt) - für alles mit BE-User-...

(IMMER_NOCH_NICHT)

🪛 markdownlint-cli2 (0.17.2)

308-308: Code block style
Expected: fenced; Actual: indented

(MD046, code-block-style)


316-316: Code block style
Expected: fenced; Actual: indented

(MD046, code-block-style)


318-318: Trailing punctuation in heading
Punctuation: ':'

(MD026, no-trailing-punctuation)


319-319: Bare URL used
null

(MD034, no-bare-urls)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant