Read a job posting
curl --request POST \
--url https://rxresu.me/api/openapi/applications/ai/posting-parses \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"input": "<string>"
}
'import requests
url = "https://rxresu.me/api/openapi/applications/ai/posting-parses"
payload = { "input": "<string>" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({input: '<string>'})
};
fetch('https://rxresu.me/api/openapi/applications/ai/posting-parses', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://rxresu.me/api/openapi/applications/ai/posting-parses",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'input' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://rxresu.me/api/openapi/applications/ai/posting-parses"
payload := strings.NewReader("{\n \"input\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://rxresu.me/api/openapi/applications/ai/posting-parses")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"input\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://rxresu.me/api/openapi/applications/ai/posting-parses")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"input\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"role": "<string>",
"company": "<string>",
"location": "<string>",
"salary": "<string>",
"requirements": [
"<string>"
],
"jobDescription": "<string>",
"sourceUrl": "<string>",
"postingSource": {
"method": "paste",
"format": "text",
"truncated": true,
"completeness": "unknown",
"requestedUrl": "<string>",
"resolvedUrl": "<string>",
"retrievedAt": "2023-11-07T05:31:56Z",
"providerFetchedAt": "2023-11-07T05:31:56Z",
"fallbackReason": "unsafe-url"
},
"enrichmentWarning": "ai-unavailable",
"filledBy": "ai"
}{
"defined": true,
"code": "BAD_REQUEST",
"status": 400,
"message": "Invalid application or AI request.",
"data": "<unknown>"
}{
"defined": true,
"code": "POSTING_UNREADABLE",
"status": 422,
"message": "That link couldn't be read. Paste the posting text instead.",
"data": "<unknown>"
}{
"defined": true,
"code": "RATE_LIMIT_EXCEEDED",
"status": 429,
"message": "Too many web requests. Try again later.",
"data": "<unknown>"
}{
"defined": true,
"code": "BAD_GATEWAY",
"status": 502,
"message": "The AI provider returned an error or is unreachable.",
"data": "<unknown>"
}{
"defined": true,
"code": "<string>",
"status": 123,
"message": "<string>",
"data": "<unknown>"
}Applications
Read a job posting
Reads a job link or pasted posting text into role, company, location, salary and requirements, and returns the posting text to save with the application. Links must be public https pages. Without an AI provider, only a page’s own job data (JSON-LD) fills the fields. Requires authentication.
POST
/
applications
/
ai
/
posting-parses
Read a job posting
curl --request POST \
--url https://rxresu.me/api/openapi/applications/ai/posting-parses \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"input": "<string>"
}
'import requests
url = "https://rxresu.me/api/openapi/applications/ai/posting-parses"
payload = { "input": "<string>" }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({input: '<string>'})
};
fetch('https://rxresu.me/api/openapi/applications/ai/posting-parses', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://rxresu.me/api/openapi/applications/ai/posting-parses",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'input' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://rxresu.me/api/openapi/applications/ai/posting-parses"
payload := strings.NewReader("{\n \"input\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://rxresu.me/api/openapi/applications/ai/posting-parses")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"input\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://rxresu.me/api/openapi/applications/ai/posting-parses")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"input\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"role": "<string>",
"company": "<string>",
"location": "<string>",
"salary": "<string>",
"requirements": [
"<string>"
],
"jobDescription": "<string>",
"sourceUrl": "<string>",
"postingSource": {
"method": "paste",
"format": "text",
"truncated": true,
"completeness": "unknown",
"requestedUrl": "<string>",
"resolvedUrl": "<string>",
"retrievedAt": "2023-11-07T05:31:56Z",
"providerFetchedAt": "2023-11-07T05:31:56Z",
"fallbackReason": "unsafe-url"
},
"enrichmentWarning": "ai-unavailable",
"filledBy": "ai"
}{
"defined": true,
"code": "BAD_REQUEST",
"status": 400,
"message": "Invalid application or AI request.",
"data": "<unknown>"
}{
"defined": true,
"code": "POSTING_UNREADABLE",
"status": 422,
"message": "That link couldn't be read. Paste the posting text instead.",
"data": "<unknown>"
}{
"defined": true,
"code": "RATE_LIMIT_EXCEEDED",
"status": 429,
"message": "Too many web requests. Try again later.",
"data": "<unknown>"
}{
"defined": true,
"code": "BAD_GATEWAY",
"status": 502,
"message": "The AI provider returned an error or is unreachable.",
"data": "<unknown>"
}{
"defined": true,
"code": "<string>",
"status": 123,
"message": "<string>",
"data": "<unknown>"
}Authorizations
apiKeybearerAuthcookieAuth
The API key to authenticate requests.
Body
application/json
Required string length:
1 - 100000Response
OK
What the posting asks for, one short item each.
The posting's text, to save with the application.
The link, when a link was given.
Show child attributes
Show child attributes
Available options:
ai-unavailable What filled the fields: the AI provider, the page's own job data, or nothing (fill them in).
Available options:
ai, page, none