PHPackages                             sharpapi/laravel-resume-parser - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. sharpapi/laravel-resume-parser

ActiveLibrary[API Development](/categories/api)

sharpapi/laravel-resume-parser
==============================

AI Resume Parser/CV Parser for Laravel powered by SharpAPI.com

v1.0.5(3mo ago)9718MITPHPPHP ^8.1

Since Nov 13Pushed 3mo agoCompare

[ Source](https://github.com/sharpapi/laravel-resume-parser)[ Packagist](https://packagist.org/packages/sharpapi/laravel-resume-parser)[ Docs](https://github.com/sharpapi/laravel-resume-parser)[ RSS](/packages/sharpapi-laravel-resume-parser/feed)WikiDiscussions master Synced yesterday

READMEChangelog (5)Dependencies (6)Versions (7)Used By (0)

[![SharpAPI GitHub cover](https://camo.githubusercontent.com/82bb36706c1e71276b3dca4ec9120353bb51c8f22bb62543bf056db5c28da36d/68747470733a2f2f73686172706170692e636f6d2f73686172706170692d6769746875622d6c61726176656c2d62672e6a7067 "SharpAPI Laravel Client")](https://camo.githubusercontent.com/82bb36706c1e71276b3dca4ec9120353bb51c8f22bb62543bf056db5c28da36d/68747470733a2f2f73686172706170692e636f6d2f73686172706170692d6769746875622d6c61726176656c2d62672e6a7067)

Resume Parser/CV Parser for Laravel with AI-powered SharpAPI
============================================================

[](#resume-parsercv-parser-for-laravel-with-ai-powered-sharpapi)

🚀 Leverage AI API to streamline resume parsing and data extraction in your HR Tech applications.
------------------------------------------------------------------------------------------------

[](#-leverage-ai-api-to-streamline-resume-parsing-and-data-extraction-in-your-hr-tech-applications)

Supported resume files - **11 file formats**: **DOC, DOCX, TXT, RTF, PDF, JPG, JPEG, JPE, PNG, TIFF, TIF**

And yes - it handles those **flattened PDFs** where the entire resume is just images instead of text.

[![Latest Version on Packagist](https://camo.githubusercontent.com/f41ddecbb35d09a174da45ada70d743d7ae24f0d5b9aac608790a50a1fb82899/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f73686172706170692f6c61726176656c2d726573756d652d7061727365722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/sharpapi/laravel-resume-parser)[![Total Downloads](https://camo.githubusercontent.com/80c90c915b21b856f723bb45b50390531afeffc72ab0c84819eca6e9c03daf11/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f73686172706170692f6c61726176656c2d726573756d652d7061727365722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/sharpapi/laravel-resume-parser)

Check the details at SharpAPI's [Resume Parsing API](https://sharpapi.com/en/catalog/ai/hr-tech/resume-cv-parsing) page.

---

Requirements
------------

[](#requirements)

- PHP &gt;= 8.1
- Laravel &gt;= 10.48.29

---

Installation
------------

[](#installation)

Follow these steps to install and set up the SharpAPI Laravel Resume Parser package.

1. Install the package via `composer`:

```
composer require sharpapi/laravel-resume-parser
```

2. Register at [SharpAPI.com](https://sharpapi.com/) to obtain your API key.
3. Set the API key in your `.env` file:

```
SHARP_API_KEY=your_api_key_here
```

4. **\[OPTIONAL\]** Publish the configuration file:

```
php artisan vendor:publish --tag=sharpapi-resume-parser
```

---

Key Features
------------

[](#key-features)

- **Automated Resume Parsing with AI**: Efficiently parse and extract structured information from resumes in various formats, including PDF, DOC, DOCX, TXT, and RTF.
- **Multi-language Support**: Supports 80+ languages for parsing results.
- **Consistent Data Format**: Ensures predictable JSON structure for parsed data.
- **Robust Polling for Results**: Polling-based API response handling with customizable intervals.
- **API Availability and Quota Check**: Check API availability and current usage quotas with `ping` and `quota` endpoints.

---

Usage
-----

[](#usage)

You can inject the `ResumeParserService` class to access parsing functionalities. For best results, especially with batch processing, use Laravel’s queuing system to optimize job dispatch and result polling.

### Basic Workflow

[](#basic-workflow)

1. **Dispatch Job**: Send a resume file to the API using `parseResume`, which returns a status URL.
2. **Poll for Results**: Use `fetchResults($statusUrl)` to poll until the job completes or fails.
3. **Process Result**: After completion, retrieve the results from the `SharpApiJob` object returned.

> **Note**: Each job typically takes a few seconds to complete. Once completed successfully, the status will update to `success`, and you can process the results as JSON, array, or object format.

---

### Controller Example

[](#controller-example)

Here is an example of how to use `ResumeParserService` within a Laravel controller:

```
