PARSERGet Started

PARSER GUIDES

Upload URLs to Parser or Classifier

POST

/api/v1/process/urls

Upload documents by URL to either a parser or a document classifier.

Provide exactly one of parserId or classifierId. Classifier URL uploads route documents to target parsers and return routing status.

Each request accepts up to 20 public HTTP or HTTPS URLs, with a maximum of 100 MB per file. URLs must return the file without browser cookies, embedded credentials, or sign-in. PARSER validates every redirect, follows no more than five redirects, and blocks local, private-network, and cloud-metadata destinations.

The batch is queued only after every file has been stored. If a transfer fails before queueing, retry the complete request.

Authorization

bearerAuth

authorization: <token>

Your API key. Include it directly in the Authorization header as the API key value (e.g., 'authorization: your-api-key-here')

In: header

Request Body

application/json

parserId?string

Format: uuid

classifierId?string

Format: uuid

urls\*array<string\>

Items1 <= items <= 20

externalIds?array<string|null\>

custom?array<object|null\>

folderId?string

Parser folder ID. Not supported for classifier uploads.

Response Body

200

application/json

400

application/json

curl -X POST "https://api.PARSER.com/api/v1/process/urls" \  -H "Content-Type: application/json" \  -d '{    "urls": [      "http://example.com"    ]  }'

200400

{
  "success": true,
  "result": [
    {
      "id": "2b9b1243-3d94-42b0-9515-729c7404e3b7",
      "name": "sample-invoice.pdf",
      "url": "https://documents.PARSER.com/resources/t/01dd1542-7aac-463c-8eda-a7e042fd5876/p/d1458cd7-8692-488f-8b3f-0fddade05f9c/d/2b9b1243-3d94-42b0-9515-729c7404e3b7/sample-invoice.pdf?sig=70adb475a196e71cd2f82c40623bb9be94647aff0d187120ee39c9fd9c7a10d0",
      "isProcessed": false,
      "status": "processing",
      "message": "Extraction started: EXTRACT (f19c7e5b-efb1-48fd-bcd1-876b7aa211a7) job initiated",
      "operationName": "f19c7e5b-efb1-48fd-bcd1-876b7aa211a7",
      "documentId": "2b9b1243-3d94-42b0-9515-729c7404e3b7",
      "pageCount": 1,
      "externalId": "doc-123",
      "custom": {
        "batchId": "xyz",
        "customerId": "pqr"
      },
      "parserId": "a257721a-d31e-4fba-b43e-0ebfc3bf1cca",
      "classifierId": "633243f0-1b9a-412f-a7d1-5ec71b3bfdac",
      "routing": {
        "status": "routed",
        "category": "string",
        "targetParserId": "c1414b5c-cc7f-4042-9bc2-fa9363157ee6",
        "targetParserName": "string",
        "reasoning": "string",
        "error": "string"
      }
    }
  ]
}
{
  "error": true,
  "message": "Parser ID mismatch"
}
Upload Files to Parser or Classifier POSTUpload one or more files to either a parser or a document classifier. Provide exactly one target: - \parserId\ to extract data with that parser. - \classifierId\ to classify and route documents to configured target parsers. Classifier uploads return routing status for each document. Classifiers do not extract data themselves; routed documents are extracted by the target parsers.Open guide → Upload File POSTUpload a document file to process and extract data. \*\*What you need:\*\* - \*\*Parser ID\*\*: Find it in Parser Settings -> General Settings - \*\*API Key\*\*: Generate it from Team Settings -> API Keys \*\*How to use:\*\* - Endpoint: \POST /api/v1/process/{parserId}/files\ - Send the request as \multipart/form-data\ with field name \file\ - (Optional) Provide additional fields: - \folderId\: Folder UUID to assign the created document(s) - \externalIds\: JSON-encoded array of external IDs (one per uploaded file) - \custom\: JSON-encoded array of tracking objects (one per uploaded file) - Include your API key in the \Authorization\ header \*\*What you get:\*\* - Response includes \documentId\ for the uploaded document - Document status will be \processing\ initially - Use the \documentId\ with the "Get Document Data" endpoint to retrieve extracted data once processing is completeOpen guide →