API Documentation

Parse resumes and extract structured data via REST API

🚀 Quick Start

Get your API key from the dashboard and start parsing resumes!

curl -X GET 'https://parseresumeai.com/api/parse.php?key=YOUR_API_KEY&file=https://example.com/resume.pdf'

Base URL

https://parseresumeai.com/api

For production: https://parseresumeai.com/api

🔐 Authentication

All API requests require an API key. You can provide it in three ways:

Option 1: Authorization Header (Recommended)

Authorization: Bearer YOUR_API_KEY

Option 2: Query Parameter

?key=YOUR_API_KEY

Option 3: JSON Body

{ "key": "YOUR_API_KEY", "file": "..." }

📡 Endpoints

Parse Resume

Parse a resume file and extract structured data.

GET or POST /api/parse.php

Cost: $0.07 per parse

Method 1: GET with Query Parameters

curl -X GET 'https://parseresumeai.com/api/parse.php?key=YOUR_API_KEY&file=https://example.com/resume.pdf'

Method 2: File Upload (multipart/form-data)

curl -X POST https://parseresumeai.com/api/parse.php \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@/path/to/resume.pdf"

Method 3: POST with File URL (JSON)

Provide API key via Authorization header OR in the JSON body.

Option A: API key in header (recommended)

curl -X POST https://parseresumeai.com/api/parse.php \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "file": "https://example.com/resume.pdf" }'

Option B: API key in JSON body

curl -X POST https://parseresumeai.com/api/parse.php \
  -H "Content-Type: application/json" \
  -d '{ "file": "https://example.com/resume.pdf", "key": "YOUR_API_KEY" }'

Supported File Types

  • PDF (.pdf)
  • Microsoft Word (.doc, .docx)
  • Plain Text (.txt)
  • Images (.png, .jpg, .jpeg)

Maximum File Size: 10 MB

Note: This API is designed to parse one resume per request. If a file contains multiple resumes, unexpected results may occur.

✅ Success Response (200 OK)

{
  "success": true,
  "data": {
    "parsed": {
      "name": "John Doe",
      "title": "Senior Software Engineer",
      "brief": "Experienced developer...",
      "contact": {
        "email": "john@example.com",
        "phone": "+1 (555) 123-4567",
        "linkedin": "linkedin.com/in/johndoe"
      },
      "employment_history": [...],
      "education": [...],
      "certifications": ["AWS Certified Solutions Architect", "PMP"],
      "skills": ["Python", "JavaScript", "React"],
      "languages": ["English", "Spanish"],
      "awards": [...]
    },
    "meta": {
      "filename": "resume.pdf",
      "file_type": "pdf",
      "file_size": 245678,
      "file_hash": "abc123def456...",
      "status": "success",
      "processing_time": 3.45,
      "error_message": null,
      "cost": 0.07,
      "balance_before": 5.00,
      "balance_after": 4.93,
      "source": "api"
    }
  },
  "usage": {
    "cost": 0.07,
    "balance_remaining": 4.93,
    "calls_made": 5
  }
}

❌ Error Responses

400

Bad Request

Invalid request format or unsupported file type.

{ "success": false, "error": "Invalid file type..." }
401

Unauthorized

Invalid or missing API key.

{ "success": false, "error": "Invalid or inactive API key." }
402

Payment Required

Insufficient account balance.

{ "success": false, "error": "Insufficient balance...", "balance": 0.03, "cost": 0.07 }
405

Method Not Allowed

Invalid HTTP method (must be GET or POST).

{ "success": false, "error": "Method not allowed. Use GET or POST." }
500

Internal Server Error

Parsing failed due to server error.

{ "success": false, "error": "Failed to parse resume" }

💻 Code Examples

cURL Command Line

# GET with query parameters
curl -X GET 'https://parseresumeai.com/api/parse.php?key=YOUR_API_KEY&file=https://example.com/resume.pdf'
# POST with file upload
curl -X POST 'https://parseresumeai.com/api/parse.php' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'file=@resume.pdf'

🎯 Getting Your API Key

  1. Log in to your dashboard
  2. Scroll to the "API keys" section
  3. Enter an optional note for the key
  4. Click "Create a new key"
  5. Copy and save the API key (you won't be able to see it again!)

⚡ Rate Limits & Pricing

Currently, there are no rate limits. However, each parse costs $0.07 from your account balance.

You can add funds to your balance anytime from the dashboard.