curl --request POST \
--url https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit \
--header 'x-api-key: <api-key>'import requests
url = "https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit"
headers = {"x-api-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-api-key': '<api-key>'}};
fetch('https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit', 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://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"clientId": "<string>",
"jobPostingId": "<string>",
"resumeId": "<string>",
"status": "saved",
"statusChangedAt": "2023-11-07T05:31:56Z",
"matchScore": 50,
"matchScorecard": {
"dimensions": [
{
"dimension": "<string>",
"score": 50,
"rationale": "<string>"
}
],
"missingKeywords": [
"<string>"
],
"strengths": [
"<string>"
],
"modelMeta": {
"provider": "<string>",
"model": "<string>"
},
"updatedAt": "2023-11-07T05:31:56Z",
"resume": {
"id": "<string>",
"name": "<string>"
}
},
"tailoredResumeId": "<string>",
"tailoring": {
"sourceResumeId": "<string>",
"changes": [
{
"kind": "headline",
"label": "<string>",
"before": "<string>",
"after": "<string>",
"reason": "<string>"
}
],
"refused": [
{
"kind": "headline",
"label": "<string>",
"reason": "<string>"
}
],
"match": {
"score": 50,
"dimensions": [
{
"dimension": "<string>",
"score": 50,
"rationale": "<string>"
}
]
},
"modelMeta": {
"provider": "<string>",
"model": "<string>"
},
"updatedAt": "2023-11-07T05:31:56Z",
"sourceScore": 50
},
"tailorError": "<string>",
"applySource": "tailored",
"notes": "<string>",
"coverLetter": "<string>",
"coverLetterTone": "neutral",
"coverLetterGeneratedAt": "2023-11-07T05:31:56Z",
"submittedVia": "manual",
"submittedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"posting": {
"id": "<string>",
"clientId": "<string>",
"source": "manual",
"externalId": "<string>",
"url": "<string>",
"title": "<string>",
"company": "<string>",
"location": "<string>",
"isRemote": true,
"employmentType": "full_time",
"salaryMin": -1,
"salaryMax": -1,
"salaryCurrency": "<string>",
"descriptionRaw": "<string>",
"descriptionParsed": {
"summary": "<string>",
"responsibilities": [
"<string>"
],
"requirements": [
"<string>"
],
"keywords": [
"<string>"
]
},
"postedAt": "2023-11-07T05:31:56Z",
"fetchedAt": "2023-11-07T05:31:56Z",
"reviewError": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"resume": {
"id": "<string>",
"name": "<string>"
}
}Submit the filled application form
The user’s go-ahead for a run waiting on its filled form: it presses the form’s submit and reports the site’s confirmation. Only a run waiting for a decision can be submitted. Requires authentication.
curl --request POST \
--url https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit \
--header 'x-api-key: <api-key>'import requests
url = "https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit"
headers = {"x-api-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-api-key': '<api-key>'}};
fetch('https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit', 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://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://hiresweep.com/api/openapi/applications/{id}/attempts/{attemptId}/submit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"clientId": "<string>",
"jobPostingId": "<string>",
"resumeId": "<string>",
"status": "saved",
"statusChangedAt": "2023-11-07T05:31:56Z",
"matchScore": 50,
"matchScorecard": {
"dimensions": [
{
"dimension": "<string>",
"score": 50,
"rationale": "<string>"
}
],
"missingKeywords": [
"<string>"
],
"strengths": [
"<string>"
],
"modelMeta": {
"provider": "<string>",
"model": "<string>"
},
"updatedAt": "2023-11-07T05:31:56Z",
"resume": {
"id": "<string>",
"name": "<string>"
}
},
"tailoredResumeId": "<string>",
"tailoring": {
"sourceResumeId": "<string>",
"changes": [
{
"kind": "headline",
"label": "<string>",
"before": "<string>",
"after": "<string>",
"reason": "<string>"
}
],
"refused": [
{
"kind": "headline",
"label": "<string>",
"reason": "<string>"
}
],
"match": {
"score": 50,
"dimensions": [
{
"dimension": "<string>",
"score": 50,
"rationale": "<string>"
}
]
},
"modelMeta": {
"provider": "<string>",
"model": "<string>"
},
"updatedAt": "2023-11-07T05:31:56Z",
"sourceScore": 50
},
"tailorError": "<string>",
"applySource": "tailored",
"notes": "<string>",
"coverLetter": "<string>",
"coverLetterTone": "neutral",
"coverLetterGeneratedAt": "2023-11-07T05:31:56Z",
"submittedVia": "manual",
"submittedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"posting": {
"id": "<string>",
"clientId": "<string>",
"source": "manual",
"externalId": "<string>",
"url": "<string>",
"title": "<string>",
"company": "<string>",
"location": "<string>",
"isRemote": true,
"employmentType": "full_time",
"salaryMin": -1,
"salaryMax": -1,
"salaryCurrency": "<string>",
"descriptionRaw": "<string>",
"descriptionParsed": {
"summary": "<string>",
"responsibilities": [
"<string>"
],
"requirements": [
"<string>"
],
"keywords": [
"<string>"
]
},
"postedAt": "2023-11-07T05:31:56Z",
"fetchedAt": "2023-11-07T05:31:56Z",
"reviewError": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"resume": {
"id": "<string>",
"name": "<string>"
}
}Authorizations
An API key from Settings → Developers → API keys in Hiresweep.
Response
The application, with its run submitting.
The ID of the application.
The client this application is for; null for your own.
Where the application stands in the pipeline.
saved, reviewing, reviewed, tailoring, ready, applying, needs_action, submitted, screening, interview, offer, rejected, withdrawn, ghosted How well the chosen resume answers the posting.
0 <= x <= 100The per-dimension breakdown behind the score.
Show child attributes
Show child attributes
The copy of the chosen resume tailored to this posting, if any.
What tailoring changed, what it refused, and how the copy scores.
Show child attributes
Show child attributes
Why the last tailoring failed, if it did.
Whether an apply run attaches the tailored copy or the resume itself.
tailored, original The user's own notes about this application.
The application's cover letter as plain text, once there is one.
The tone the cover letter was last written in.
neutral, warm, formal, concise When the cover letter was last written by AI.
Whether the application was sent by hand or assisted.
manual, assisted Show child attributes
Show child attributes
Show child attributes
Show child attributes