Skip to content

Page title and text by URL.

Converts a URL to LLM-friendly text

Job web.page.text

Your AI asks

checks the price first
telipot run jina-reader.web.page.text \
  --input-json '{"url":"https://example.com","Accept":"application/json"}' \
  --quote

Price

Free
Priced· before it runs

jina-reader.web.page.text

FreeNo account

Whose account it uses

No account neededSelected identity for this example

What it sends

{
  "url": "https://example.com",
  "Accept": "application/json"
}

No credential is needed for this call.

What it costs

Free

no charge from the provider

Preview the price first. --quote runs nothing.

For developers · run it

Shell · runs the task on the named account

telipot run jina-reader.web.page.text \
  --input-json '{"url":"https://example.com","Accept":"application/json"}'

url

string · required · path

The page to read

Accept

string · required · const "application/json" · headers

The answer is the JSON envelope; without it the page text comes back as plain markdown

code

number

status

number

data

object

Full output schema · JSONNested fields and constraints

Output JSON Schema

{
  "type": "object",
  "required": [
    "code",
    "status"
  ],
  "properties": {
    "code": {
      "type": "number"
    },
    "status": {
      "type": "number"
    },
    "data": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "content": {
          "type": "string"
        },
        "publishedTime": {
          "type": "string"
        },
        "warning": {
          "type": "string"
        },
        "httpStatus": {
          "type": "number"
        },
        "usage": {
          "type": "object",
          "properties": {
            "tokens": {
              "type": "number"
            }
          }
        }
      }
    }
  }
}

A real answer

examples/jina-reader.web.page.text.json

{
  "code": 200,
  "status": 20000,
  "data": {
    "title": "Example Domain",
    "description": "",
    "url": "https://example.com/",
    "content": "This domain is for use in documentation examples without needing permission. This is not a service; avoid relying on it for testing and monitoring purposes.",
    "publishedTime": "Fri, 02 Oct 2026 16:11:02 GMT",
    "warning": "This is a cached snapshot of the original page, consider retry with caching opt-out.",
    "httpStatus": 200,
    "usage": {
      "tokens": 28
    }
  }
}