HR Tech

AI-powered API

Related Skills Generator

Generates a list of related skills with their corresponding relevance scores.

By providing a skill, this API returns related skills and their weights as float values ranging from 1.0 to 10.0, where 10 represents the highest relevance.

This API is valuable for developers building skills assessment tools, career development platforms, or educational software. It helps in identifying complementary skills, enhancing skills matching algorithms, and supporting personalized learning paths. Use cases include creating skill recommendation engines, enhancing employee training programs, and improving career development resources.

Only the content parameter is required.

You can specify the language of the output, which defaults to English.

You can limit the output with the max_quantity parameter.

Try it live — no signup needed

Live demo

Paste a short text and watch this API process it in real time.

That was a live API response. Get your own API key and 100,000 free trial words — no credit card required.

Double opt-in, unsubscribe anytime.

AI jobs involve two key steps:

  1. Submitting the AI job: Initiating the process by sending the job request.
  2. Monitoring and receiving results: Continuously checking the job status and obtaining the final output upon successful completion.


Implement it with an AI coding agent

An alternative to the SDKs: copy this prompt into Claude Code, Cursor or Copilot. It holds everything the agent needs to call this endpoint directly over HTTP, including authentication, request format, job polling, rate limits and error handling.

# Implement the SharpAPI "Related Skills Generator" endpoint

You are adding an integration with SharpAPI's Related Skills Generator API to this codebase. This brief is an alternative to the official SharpAPI SDKs (PHP/Laravel, JavaScript/Node, Python, Flutter, .NET): it describes everything needed to call the API directly over HTTP. If the project already uses a SharpAPI SDK, use the SDK instead.

## What it does

By providing a skill, this API returns related skills and their weights as float values ranging from 1.0 to 10.0, where 10 represents the highest relevance. This API is valuable for developers building skills assessment tools, career development platforms, or educational software. It helps in identifying complementary skills, enhancing skills matching algorithms, and supporting personalized learning paths. Use cases include creating skill recommendation engines, enhancing employee training programs, and improving career development resources. Only the `content` parameter is required. You can specify the language of the output, which defaults to `English`. You can limit the output with the `max_quantity` parameter.

## Authentication and base URL

- Base URL: `https://sharpapi.com/api/v1`
- Send `Authorization: Bearer <API key>`, `Accept: application/json` and a `User-Agent` that names your app on every request.
- Read the API key from configuration or an environment variable (for example `SHARPAPI_API_KEY`). Never hard-code or commit it. The key is in the SharpAPI dashboard: https://sharpapi.com/dashboard

## Endpoints

### `POST https://sharpapi.com/api/v1/hr/related_skills`
Related Skills
Request body: `application/json`
- `content` (string), e.g. `Laravel`
- `language` (string), e.g. `English`
Example:

```json
{
    "content": "Laravel",
    "language": "English"
}
```

### `GET https://sharpapi.com/api/v1/hr/parse_resume/job/status/{uuid}`
Related Skills - Job Results
- path parameter `uuid` (required), string, e.g. `"76650524-36f6-4062-9afa-de8fc6be4ebd"`

## Asynchronous job flow

This is an asynchronous AI endpoint. Mirror the official SDK client:

1. POST the request. The API answers `202 Accepted` with `{"job_id": "...", "status_url": "..."}` (the `Location` header holds the same URL).
2. GET `status_url` with the same headers. While `data.attributes.status` is `new` or `pending`, wait the number of seconds in the `Retry-After` header (10 seconds if it is missing) and poll again.
3. Stop when the status is `success` or `failed`. The result is in `data.attributes.result`, already decoded as JSON.
4. A `failed` job is a normal response, not an HTTP error: report it to the caller as a failure.
5. Give up after 180 seconds of polling in total and surface a timeout error.

Run the whole flow in a background job or queue, never inside a web request. SharpAPI can also call your own webhook when a job finishes (Dashboard → Webhooks), which avoids polling.

## Successful job result

```json
{
    "data": {
        "id": "bac70cd7-5347-4443-9632-c82019f73e9a",
        "type": "api_job_result",
        "attributes": {
            "type": "hr_related_skills",
            "result": {
                "skill": "Quicken",
                "related_skills": [
                    {
                        "name": "Accounting",
                        "weight": 8.7
                    },
                    {
                        "name": "Bookkeeping",
                        "weight": 7
                    },
                    {
                        "name": "Financial Management",
                        "weight": 6.8
                    }
                ]
            },
            "status": "success"
        }
    }
}
```

## Errors to handle

- `401` 401 Unauthorized: "Unauthorized"
- `402` 402 Payment Required: "You have exceeded your monthly words quota [1694]. Please login to the dashboard and increase number of credits."
- `404` 404 Not Found: "Resource Not Found"
- `422` 422 Unprocessable Content: "The content field is required."
- `429` 429 Too Many Requests: "Too Many Attempts."
- `500` 500 Internal Server Error: "Server Error"
- `503` 503 Service Unavailable: "Service Unavailable"
- `429`: rate limited. Wait the `Retry-After` seconds and retry, at most 3 times.
- `402`: the word quota is used up. Do not retry; tell the user to add credits or upgrade.
- `5xx`: retry later with backoff.

## Implementation rules
- Wrap the calls in one small client or service with a typed method for this endpoint, and map the result to a typed object or DTO.
- Track `X-RateLimit-Limit` and `X-RateLimit-Remaining`. When the remaining count drops to 3 or below, slow down (double the polling interval).
- `GET https://sharpapi.com/api/v1/ping` checks connectivity and `GET https://sharpapi.com/api/v1/quota` returns the remaining words: use them for a health check.
- Write tests with the HTTP layer mocked: success, `pending` then `success`, `failed` job, `422` validation error, `429` retry, and a missing API key.
- Full API reference: https://sharpapi.com/documentation
SharpAPI SOC 2 Type II

SharpAPI is now SOC 2 Type II compliant. You can check details at our Trust Center Portal.

Your data is your data. Learn how we protect it and comply with global privacy standards in our Data Handling and Compliance policy .

Step 1. Submit the AI Job request

Endpoint: POST - /v1/hr/related_skills

Attribute Type Mandatory Description
content String Yes Skill to generate related skills.
language String No Specify the language of the output, defaults to English.
max_quantity Number No Maximum number of related skills to generate.

REQUEST EXAMPLE:

{
    "content": "Quicken",
    "language": "English",
    "max_quantity":5
}

RESPONSE EXAMPLE:

{
  "status_url": "https://sharpapi.com/api/v1/content/translate/job/status/5de4887a-0dfd-49b6-8edb-9280e468c210",
  "job_id": "5de4887a-0dfd-49b6-8edb-9280e468c210"
}

Step 2. Monitor & Fetch AI Job Results

Endpoint: GET - /v1/hr/parse_resume/job/status/:uuid

An endpoint is used to check on the progress of the requested API job.

RESULT EXAMPLE:

{
  "data": {
    "type": "api_job_result",
    "id": "bac70cd7-5347-4443-9632-c82019f73e9a",
    "attributes": {
      "status": "success",
      "type": "hr_related_skills",
      "result": {
        "skill": "Quicken",
        "related_skills": [
          {
            "name": "Accounting",
            "weight": 8.7
          },
          {
            "name": "Bookkeeping",
            "weight": 7
          },
          {
            "name": "Financial Management",
            "weight": 6.8
          },
          {
            "name": "Financial Reporting",
            "weight": 7.5
          },
          {
            "name": "Microsoft Excel",
            "weight": 6.5
          },
          {
            "name": "QuickBooks",
            "weight": 9.2
          }
        ]
      }
    }
  }
}

SharpAPI Introduction Video

SharpAPI is a powerful AI-powered API, which provides a range of workflow automation endpoints to help improve efficiency across various industries. It has features for E-commerce, Content & Marketing Automation, SEO, HR Tech, and Travel & Hospitality industries.

Transforming HR Tech with AI-Powered Efficiency

So, you’re neck-deep in resumes and job descriptions, and your only defense against the deluge is a lukewarm cup of coffee. Enter SharpAPI. This isn’t just any old toolkit – this is a turbo-charged, HR tech hero. Here’s how each of these endpoint superheroes (cue dramatic music) can turn your hiring process from drudgery to, well, semi-automated bliss.

Job Positions API: Unlock Comprehensive HR Data

Imagine having access to a vast, meticulously structured database of over 16,000 job positions across various industries—all at your fingertips. This API doesn’t just list roles; it also offers related job positions with weighted relevancy scores, making it a perfect companion for HR platforms, job boards, AI-driven career matching, and workforce analytics.

HR Marketing Meets Automation: SharpAPI Content Tools

HR tech is about more than just hunting for the perfect hire – it’s about creating content that attracts them and keeps them glued to your brand. Enter SharpAPI’s content automation tools, here to make your marketing team and your brand look like absolute rockstars. Imagine having a set of tools so sharp, they could slice through a clunky sentence or rescue a dull job ad, turning it into a showstopper. Let’s dive in.

Like SharpAPI? Share it and earn 30% recurring commissions — forever.

Your clients already need AI. Get paid for recommending the easiest way to add it.