{"openapi":"3.0.3","info":{"title":"API: public (v1)","version":"1","description":"Automatically generated OpenAPI specification for the public API."},"servers":[{"url":"https://demo.sgalinski.de/api/public/v1","description":"Current API server"}],"paths":{"/context":{"get":{"summary":"Public context endpoint","description":"","tags":["Examples"],"responses":{"200":{"description":"Context payload","content":{"application/json":{"schema":{"type":"object","properties":{"api":{"type":"string"},"version":{"type":"string"},"code":{"type":"string"},"tenant":{"type":"string"}}},"example":{"api":"public","version":"1","code":"ABC","tenant":"default"}}}}},"parameters":[{"name":"code","in":"query","required":true,"description":"","schema":{"type":"string","example":"ABC","pattern":"^[A-Z]{3}$"}},{"name":"includeScopes","in":"query","required":false,"description":"","schema":{"type":"boolean","example":false}}]}},"/examples":{"get":{"summary":"List example items","description":"Provides pagination, query validation and cache control for list endpoints.","tags":["Examples"],"responses":{"200":{"description":"List result with pagination metadata","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","description":"ExampleItem"}}}}}},"parameters":[{"name":"page","in":"query","required":false,"description":"Page number (1-based)","schema":{"type":"integer","minimum":1}},{"name":"limit","in":"query","required":false,"description":"Maximum number of items","schema":{"type":"integer","minimum":1,"maximum":50}},{"name":"search","in":"query","required":false,"description":"Search by name or type","schema":{"type":"string","minLength":2,"maxLength":80}},{"name":"includeDraft","in":"query","required":false,"description":"","schema":{"type":"boolean","example":false}}]}},"/examples/{id}":{"get":{"summary":"Get one example item","description":"Returns a single list item and demonstrates path validation.","tags":["Examples"],"responses":{"200":{"description":"Single item","content":{"application/json":{"schema":{"type":"object","description":"ExampleItem"}}}},"400":{"description":"Validation failed"},"404":{"description":"Example not found"}},"parameters":[{"name":"id","in":"path","required":true,"description":"Unique item ID","schema":{"type":"integer","pattern":"^\\d+$"}}]}},"/rendering-context":{"get":{"summary":"Inspect rendering context","description":"","tags":["Examples"],"responses":{"200":{"description":"TypoScript context information"}},"parameters":[]}},"/test":{"get":{"summary":"Public context endpoint","description":"","tags":["Examples"],"responses":{"200":{"description":"Context payload","content":{"application/json":{"schema":{"type":"object","properties":{"api":{"type":"string"},"version":{"type":"string"},"code":{"type":"string"},"tenant":{"type":"string"}}},"example":{"api":"public","version":"1","code":"ABC","tenant":"default"}}}}},"parameters":[{"name":"code","in":"query","required":true,"description":"","schema":{"type":"string","example":"ABC","pattern":"^[A-Z]{3}$"}},{"name":"includeScopes","in":"query","required":false,"description":"","schema":{"type":"boolean","example":false}}]}},"/example/error":{"get":{"summary":"Legacy Example Error","description":"","tags":["Legacy"],"responses":{"200":{"description":"Success"}},"parameters":[]}},"/example/list":{"get":{"summary":"Legacy Example List","description":"","tags":["Legacy"],"responses":{"200":{"description":"Success"}},"parameters":[]}},"/docs.json":{"get":{"summary":"openAPI Docs","description":"","tags":["OpenAPI"],"responses":{"200":{"description":"Success"}},"parameters":[]}},"/docs/ui":{"get":{"summary":"openAPI Docs UI","description":"","tags":["OpenAPI"],"responses":{"200":{"description":"Success"}},"parameters":[]}},"/pages":{"get":{"summary":"List pages","description":"Returns a paginated list of pages resources.","tags":["pages"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/pages"}}}}}},"parameters":[{"name":"page","in":"query","required":false,"description":"Page number (1-based)","schema":{"type":"integer"}},{"name":"perPage","in":"query","required":false,"description":"Items per page","schema":{"type":"integer","example":50}},{"name":"sort","in":"query","required":false,"description":"Sort field (prefix with - for DESC)","schema":{"type":"string"}},{"name":"filter","in":"query","required":false,"description":"Filter by fields: filter[field]=value","schema":{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"integer"}]}},"explode":false,"style":"form"},{"name":"skipCount","in":"query","required":false,"description":"If set to true, the total record count for pagination is skipped for better performance.","schema":{"type":"boolean"}}]}},"/pages/{id}":{"get":{"summary":"Get pages","description":"Returns a single pages resource by ID.","tags":["pages"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/pages"}}}},"404":{"description":"Not Found"}},"parameters":[{"name":"id","in":"path","required":true,"description":"The resource ID","schema":{"type":"integer"}}]}},"/health":{"get":{"summary":"Global health check","description":"","tags":["System"],"responses":{"200":{"description":"API is healthy","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string"},"service":{"type":"string"}}},"example":{"status":"ok","service":"sg_apicore"}}}}},"parameters":[]}},"/contents":{"get":{"summary":"List tt_content","description":"Returns a paginated list of tt_content resources.","tags":["tt_content"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/tt_content"}}}}}},"parameters":[{"name":"page","in":"query","required":false,"description":"Page number (1-based)","schema":{"type":"integer"}},{"name":"perPage","in":"query","required":false,"description":"Items per page","schema":{"type":"integer","example":50}},{"name":"sort","in":"query","required":false,"description":"Sort field (prefix with - for DESC)","schema":{"type":"string"}},{"name":"filter","in":"query","required":false,"description":"Filter by fields: filter[field]=value","schema":{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"integer"}]}},"explode":false,"style":"form"},{"name":"skipCount","in":"query","required":false,"description":"If set to true, the total record count for pagination is skipped for better performance.","schema":{"type":"boolean"}}]}},"/contents/{id}":{"get":{"summary":"Get tt_content","description":"Returns a single tt_content resource by ID.","tags":["tt_content"],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/tt_content"}}}},"404":{"description":"Not Found"}},"parameters":[{"name":"id","in":"path","required":true,"description":"The resource ID","schema":{"type":"integer"}}]}}},"components":{"securitySchemes":[],"schemas":{"tt_content":{"type":"object","properties":{"uid":{"type":"integer","description":"Field: uid"},"pid":{"type":"integer","description":"Field: pid"},"header":{"type":"string","description":"Header (HTML allowed)"},"bodytext":{"type":"string","description":"Text"},"CType":{"type":"string","description":"Type (Possible values: header, text, list, textpic, image, textmedia, bullets, table, uploads, menu_abstract, menu_categorized_content, menu_categorized_pages, menu_pages, menu_subpages, menu_recently_updated, menu_related_pages, menu_section, menu_section_pages, menu_sitemap, menu_sitemap_pages, shortcut, div, html, form_formframework, indexedsearch_pi2, --div--, tx_project_theme_megamenu_manualHierarchy, tx_project_theme_megamenu_default, tx_project_theme_megamenu_2levelsTree, tx_project_theme_megamenu_3levelsTree, sgaccount_login, sgaccount_account, sgaccount_register, sgaccount_edit, sgaccount_forgot, sgaccount_confirm, sgcomments_comment, sgnews_overview, sgnews_latest, sgnews_listbycategory, sgnews_newsbyauthor, sgjobs_joblist, sgjobs_jobapplication, sgjobs_jobteaser, gridelements_pi1, mask_sg_testimonial, mask_highlight_box, mask_sg_accordion, mask_sg_feature_comparison, mask_popup, mask_sg_card, mask_google_maps_element, mask_sg_downloads, mask_sg_gallery, mask_sg_products, mask_sg_slide, mask_sg_static_map, mask_tabs, mask_image_map, mask_icon_with_text, df_tabs_plugin1, sfeventmgt_pieventlist, sfeventmgt_pieventdetail, sfeventmgt_pieventregistration, sfeventmgt_pieventsearch, sfeventmgt_pieventcalendar, sfeventmgt_pipayment, sfeventmgt_piuserreg, sgcookieoptin_optin, sgcookieoptin_cookielist, sgteaser_teaser, sgteaser_teasermultidimension, sgvideo_video)"}}},"pages":{"type":"object","properties":{"uid":{"type":"integer","description":"Field: uid"},"pid":{"type":"integer","description":"Field: pid"},"title":{"type":"string","description":"Page title"},"doktype":{"type":"string","description":"Type (Possible values: 1, 6, 4, 7, 3, 254, 199, 117, 116)"},"slug":{"type":"string","description":"URL Segment, without trailing slash"}}}}},"tags":[{"name":"Examples"},{"name":"Legacy"},{"name":"pages"},{"name":"System"},{"name":"tt_content"},{"name":"OpenAPI"}]}