> ## Documentation Index
> Fetch the complete documentation index at: https://docs.urantia.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Scripture Passages

> Returns the passages for a reference. Use `2.47` (chapter and verse), `2.47-49` (a range of up to 50), or `2` (a whole chapter). Each text has its own number of levels (`refLevels`): the Dhammapada, the Japji, and the Shinto oracles have one (`Dhp 183`), Epictetus has three (`Epictetus 3.22.5`), and the others have two. A ref with fewer numbers names a whole part, such as `Epictetus 3.22`. The ref prefix is optional: `BG 2.47` and `2.47` are the same.



## OpenAPI

````yaml GET /scriptures/{corpus}/{ref}
openapi: 3.1.0
info:
  title: Urantia Papers API
  version: 1.0.0
  description: >-
    A developer and AI-agent friendly API for the Urantia Papers. Provides
    full-text search, structured content access, and audio URLs for all 17,000+
    paragraphs across 197 papers.
servers:
  - url: https://api.urantia.dev
    description: Production
  - url: http://localhost:3000
    description: Local development
security: []
paths:
  /scriptures/{corpus}/{ref}:
    get:
      tags:
        - Scriptures
      summary: Get scripture passages by reference
      description: >-
        Returns the passages for a reference. Use `2.47` (chapter and verse),
        `2.47-49` (a range of up to 50), or `2` (a whole chapter). Each text has
        its own number of levels (`refLevels`): the Dhammapada, the Japji, and
        the Shinto oracles have one (`Dhp 183`), Epictetus has three (`Epictetus
        3.22.5`), and the others have two. A ref with fewer numbers names a
        whole part, such as `Epictetus 3.22`. The ref prefix is optional: `BG
        2.47` and `2.47` are the same.
      operationId: getScripturePassages
      parameters:
        - schema:
            type: string
            minLength: 1
            maxLength: 64
            description: >-
              Corpus id, slug, or ref prefix, e.g. `bhagavad-gita`, `bg`, or
              `dhammapada`
          required: true
          description: >-
            Corpus id, slug, or ref prefix, e.g. `bhagavad-gita`, `bg`, or
            `dhammapada`
          name: corpus
          in: path
        - schema:
            type: string
            minLength: 1
            maxLength: 32
            description: >-
              A passage (`2.47`, `BG 2.47`, `Dhp 183`, `Epictetus 3.22.5`), a
              short range (`2.47-49`), or a whole chapter (`2`)
          required: true
          description: >-
            A passage (`2.47`, `BG 2.47`, `Dhp 183`, `Epictetus 3.22.5`), a
            short range (`2.47-49`), or a whole chapter (`2`)
          name: ref
          in: path
          example: '2:5.1'
      responses:
        '200':
          description: The passages
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      corpus:
                        type: object
                        properties:
                          id:
                            type: string
                          slug:
                            type: string
                          religion:
                            type: string
                          title:
                            type: string
                          translator:
                            type: string
                          year:
                            type: integer
                          refPrefix:
                            type: string
                          urantiaSection:
                            type:
                              - string
                              - 'null'
                            description: >-
                              The Paper 131 section headed with this religion,
                              or null when Paper 131 has no such heading
                        required:
                          - id
                          - slug
                          - religion
                          - title
                          - translator
                          - year
                          - refPrefix
                          - urantiaSection
                      passages:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                            ref:
                              type: string
                            division:
                              type: integer
                            divisionTitle:
                              type:
                                - string
                                - 'null'
                            subdivision:
                              type:
                                - integer
                                - 'null'
                            text:
                              type: string
                          required:
                            - id
                            - ref
                            - division
                            - divisionTitle
                            - subdivision
                            - text
                    required:
                      - corpus
                      - passages
                required:
                  - data
              example:
                data:
                  corpus:
                    id: bhagavad-gita-besant-1922
                    slug: bhagavad-gita
                    religion: Hinduism
                    title: The Bhagavad Gita
                    translator: Annie Besant (4th edition)
                    year: 1922
                    refPrefix: BG
                    urantiaSection: '131:4'
                  passages:
                    - id: bhagavad-gita-besant-1922:BG 2.47
                      ref: BG 2.47
                      division: 2
                      divisionTitle: null
                      subdivision: null
                      text: >-
                        Thy business is with the action only, never with its
                        fruits; so let not the fruit of action be thy motive,
                        nor be thou to inaction attached.
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
        '400':
          description: Invalid reference
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
        '404':
          description: Corpus or passage not found
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
        '429':
          description: Too many requests
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '500':
          description: Internal server error
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
components:
  headers:
    X-RateLimit-Limit:
      description: The number of requests allowed in the current window.
      schema:
        type: integer
      example: 200
    X-RateLimit-Remaining:
      description: The number of requests left in the current window.
      schema:
        type: integer
      example: 199
    X-RateLimit-Reset:
      description: The time the window resets, in Unix seconds.
      schema:
        type: integer
      example: 1791152213
  schemas:
    ProblemDetails:
      type: object
      description: An RFC 9457 problem details object. Every error response uses it.
      properties:
        type:
          type: string
          format: uri
          description: A URI that names the error type.
        title:
          type: string
          description: The short name of the status.
        status:
          type: integer
          description: The HTTP status code.
        detail:
          type: string
          description: What went wrong in this request.
      required:
        - type
        - title
        - status
        - detail
      example:
        type: https://urantia.dev/errors/not-found
        title: Not Found
        status: 404
        detail: Paragraph not found

````

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