atlassian-api / atlassian-python-api

Atlassian Python REST API wrapper
https://atlassian-python-api.readthedocs.io
Apache License 2.0
1.34k stars 661 forks source link

[Confluence] better documentation required #1008

Open DawidKrysiak opened 2 years ago

DawidKrysiak commented 2 years ago

calling the update update = confluence.update_page( parent_id=None, page_id=page_id, title=title, body=page_content )

returns with:

No space or no content type, or setup a wrong version type set to content, or status param is not draft and status content is current

so further params are needed for successful operation - none given in the documentation.

Spacetown commented 2 years ago

You should use a Editor which is aware of the inline documentation.

DawidKrysiak commented 2 years ago

Hi, Not sure the intent of the remark. Inline documentation in your code? I looked at the code, tried to populate all switches - no avail. Usual issues reported a thousand times (missing content type etc...) Tried to tinker with all possible combinations -page update to page type 'wiki' using recommended 'representation=storage' will paste the text with all formatting (either html or atlassian wiki formatting) as plain text? Using 'representation=wiki' will create a beautiful page, but... During the first attempt of editing it through the browser, atlassian will throw out errors stating it's not capable to convert the document to 'storage'.

Spacetown commented 2 years ago

The arguments are documented inline (can be more 😄): https://github.com/atlassian-api/atlassian-python-api/blob/f14682a6b25f0b392bac672f7da1b2287751e1a2/atlassian/confluence.py#L1479-L1504

This is used for example in VS Code:

Bildschirmfoto 2022-07-16 um 15 36 52

The used API, whiche returns you're error message, is documented here

DawidKrysiak commented 2 years ago

Hi when I choose representation='wiki' it works fine, but of course I have to use the markdown language that is missing many essential options. When I switch to 'storage', it either fails with "No space or no content type, or setup a wrong version type set to content, or status param is not draft and status content is current" or (sometimes when I use escape from html) posts a raw html code.

Kind regards Dawid

The arguments are documented inline (can be more 😄): https://github.com/atlassian-api/atlassian-python-api/blob/f14682a6b25f0b392bac672f7da1b2287751e1a2/atlassian/confluence.py#L1479-L1504

This is used for example in VS Code: Bildschirmfoto 2022-07-16 um 15 36 52

The used API, whiche returns you're error message, is documented here

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

gonchik commented 2 years ago

Hi @DawidKrysiak , I will be happy if you provide PR related to the docs, because sometimes I forgot to extend the docs. That's my bad,

joestump commented 11 months ago

The problem is with escaping. Somewhere in your content is an & or something that the XML parser doesn't like. I ran into this issue first with &, but have now hit the same issue when using parentheses in the jqlQuery argument for XML macros in the Confluence pages.

The raw source from the UI shows "Hello (World)" as does my template, but if I try and update the template it fails. Updating the "raw" source in the UI works.