> ## Documentation Index
> Fetch the complete documentation index at: https://omniflow-vpn.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get v1pages 1

> Public. One published document, returned as a parsed block structure rather than as HTML or as the operator's source text. The browser renders text nodes from it, so nothing an operator typed can become markup on the origin that holds the session cookie — there is no sanitiser in the path because there is nothing to sanitise.
A draft, a deleted page, and a slug that never existed all answer 404: distinguishing them would tell an anonymous visitor whether a given address exists as a draft.
The language falls back rather than 404ing, because the address is what a provider approved and what somebody bookmarked.



## OpenAPI

````yaml https://raw.githubusercontent.com/kewldan/omniflow/main/api/openapi.yaml get /v1/pages/{slug}
openapi: 3.0.3
info:
  title: Omniflow API
  version: 1.0.0
  description: >-
    Customer, commerce, payment, wallet, fulfillment, and operations API for
    Omniflow.
servers: []
security: []
paths:
  /v1/pages/{slug}:
    get:
      tags:
        - catalog
      description: >-
        Public. One published document, returned as a parsed block structure
        rather than as HTML or as the operator's source text. The browser
        renders text nodes from it, so nothing an operator typed can become
        markup on the origin that holds the session cookie — there is no
        sanitiser in the path because there is nothing to sanitise.

        A draft, a deleted page, and a slug that never existed all answer 404:
        distinguishing them would tell an anonymous visitor whether a given
        address exists as a draft.

        The language falls back rather than 404ing, because the address is what
        a provider approved and what somebody bookmarked.
      operationId: getPublishedPage
      parameters:
        - in: path
          name: slug
          required: true
          schema:
            type: string
        - in: query
          name: locale
          schema:
            type: string
            enum:
              - ru
              - en
      responses:
        '200':
          description: The page
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublishedPage'
        '404':
          $ref: '#/components/responses/Problem'
components:
  schemas:
    PublishedPage:
      type: object
      required:
        - slug
        - kind
        - locale
        - title
        - document
        - updatedAt
      properties:
        slug:
          type: string
        kind:
          type: string
          enum:
            - faq
            - terms
            - offer
            - privacy
            - custom
        locale:
          type: string
        title:
          type: string
        document:
          $ref: '#/components/schemas/PageDocument'
        updatedAt:
          type: string
          format: date-time
    PageDocument:
      type: object
      required:
        - blocks
      description: >-
        A parsed document. It is deliberately not HTML and deliberately not the
        operator's source text: a renderer that emits text nodes from this
        cannot produce markup, which is why there is no sanitiser anywhere in
        the path.
      properties:
        blocks:
          type: array
          items:
            $ref: '#/components/schemas/PageBlock'
    Problem:
      type: object
      required:
        - type
        - title
        - status
      properties:
        type:
          type: string
          format: uri
        title:
          type: string
        status:
          type: integer
        detail:
          type: string
        request_id:
          type: string
    PageBlock:
      type: object
      required:
        - kind
      properties:
        kind:
          type: string
          enum:
            - heading
            - paragraph
            - list
        spans:
          type: array
          items:
            $ref: '#/components/schemas/PageSpan'
        items:
          type: array
          items:
            type: array
            items:
              $ref: '#/components/schemas/PageSpan'
        ordered:
          type: boolean
    PageSpan:
      type: object
      required:
        - text
      description: >-
        One run of inline content. `href` is present only for a validated https
        address.
      properties:
        text:
          type: string
        href:
          type: string
  responses:
    Problem:
      description: Request failed
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/Problem'

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.