MoneticAI Resume API
Integrate AI-powered resume improvement, tailoring, cover letters, LinkedIn optimization, and more into your product with a single endpoint.
Overview
The MoneticAI Resume API lets you call AI-powered resume services programmatically. Submit resume text and receive improved output in seconds.
- One endpoint, multiple AI models
- Structured JSON responses
- Locale support: English, Russian, Ukrainian
- Usage tracking and quota management
- Paid API token required — docs are free
Authentication
All API requests require a Bearer token in the Authorization header.
Authorization: Bearer moneticai_your_token_here
Tokens are created in your dashboard and shown only once. Store them securely.
Endpoint
https://moneticai.com/api/v1/resume/improve
Request Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| model | string | required | AI model to use (see below) |
| resume_text | string | required | Plain text resume content |
| job_description | string | conditional | Required for resume_tailoring and cover_letter |
| locale | string | optional | en / ru / uk (default: en) |
| output_format | string | optional | json / text / markdown (default: json) |
Supported Models
resume_improvement
Improve clarity, structure, wording, and impact.
resume_tailoring
+ job_description
Tailor resume to a specific job description.
ats_resume
Convert to ATS-safe plain text format.
cover_letter
+ job_description
Generate a cover letter for the role.
linkedin_headline
Generate LinkedIn headline options.
linkedin_about
Generate LinkedIn About section.
recruiter_message
Short outreach message to a recruiter.
career_summary
Professional summary in multiple lengths.
LinkedIn Analysis
https://moneticai.com/api/v1/linkedin/analyze
Analyse a LinkedIn profile text and return scores, strengths, improvements, headline options, and keyword gaps.
| Field | Type | Required | Description |
|---|---|---|---|
| linkedin_text | string | required | Plain text copy of the LinkedIn profile (100–50,000 chars) |
| target_position | string | optional | Target job title to tailor the analysis |
| locale | string | optional | en / ru / uk (default: en) |
Available on: Growth, Business, Enterprise plans.
LinkedIn SEO Optimisation
https://moneticai.com/api/v1/linkedin/seo
Optimise a LinkedIn profile for recruiter search visibility. Returns an SEO-optimised headline, About section, recommended skills, and keyword density analysis.
| Field | Type | Required | Description |
|---|---|---|---|
| linkedin_text | string | required | Plain text copy of the LinkedIn profile (100–50,000 chars) |
| target_role | string | optional | Target job title to optimise toward |
| target_keywords | array | optional | List of keywords to prioritise (max 20) |
| locale | string | optional | en / ru / uk (default: en) |
Available on: Growth, Business, Enterprise plans.
Career AI Coach
https://moneticai.com/api/v1/career-coach
Stateless AI career coaching. Send a message with optional resume/job context and conversation history. Returns coaching reply, next steps, and resources.
| Field | Type | Required | Description |
|---|---|---|---|
| message | string | required | User question or request (5–2,000 chars) |
| resume_text | string | optional | Candidate resume for personalised advice |
| job_description | string | optional | Target job description for contextual coaching |
| history | array | optional | Prior messages: [{"role":"user","content":"..."}, {"role":"assistant","content":"..."}] |
| locale | string | optional | en / ru / uk (default: en) |
Available on: Growth, Business, Enterprise plans.
Resume vs Job Match
https://moneticai.com/api/v1/resume/match
Score how well a resume matches a job description. Returns match score, ATS score, keyword gaps, missing skills, and a prioritised fix list.
| Field | Type | Required | Description |
|---|---|---|---|
| resume_text | string | required | Plain text resume content (50–30,000 chars) |
| job_description | string | required | Full job description text (50–30,000 chars) |
| target_position | string | optional | Target job title for context |
| job_title | string | optional | Job title from the posting |
| job_company | string | optional | Company name from the posting |
| locale | string | optional | en / ru / uk (default: en) |
Available on: all plans.
Apply Kit
https://moneticai.com/api/v1/apply-kit
One-shot application kit. Returns a tailored resume, cover letter, LinkedIn recruiter message, follow-up message, short pitch, and keyword plan — all in one call.
| Field | Type | Required | Description |
|---|---|---|---|
| resume_text | string | required | Plain text resume content (100–30,000 chars) |
| job_description | string | required | Full job description text (50–30,000 chars) |
| target_position | string | optional | Target job title |
| company | string | optional | Target company name |
| humanize | boolean | optional | Apply humanization pass (default: true) |
| humanization_level | string | optional | light / balanced / heavy (default: balanced) |
Available on: Business, Enterprise plans.
Premium Career Audit
https://moneticai.com/api/v1/premium-career-audit
Deep career audit across resume, ATS readiness, LinkedIn, job match, and recruiter perception. Returns 14 scored dimensions, executive summary, priority fixes, 7-day plan, and 30-day roadmap.
| Field | Type | Required | Description |
|---|---|---|---|
| resume_text | string | conditional | Resume text (min 50 chars). Required if no linkedin_url. |
| linkedin_url | string | conditional | LinkedIn profile URL. Required if no resume_text. |
| job_description | string | optional | Target job description for match scoring |
| target_position | string | optional | Target job title |
| company | string | optional | Target company |
| humanize | boolean | optional | Apply humanization pass (default: true) |
| humanization_level | string | optional | light / balanced / heavy (default: balanced) |
Available on: Business, Enterprise plans.
Code Examples
curl -X POST https://moneticai.com/api/v1/resume/improve \
-H "Authorization: Bearer moneticai_your_token" \
-H "Content-Type: application/json" \
-d '{
"model": "resume_tailoring",
"resume_text": "John Doe\nSenior PHP Developer...",
"job_description": "We are looking for a PHP developer...",
"locale": "en"
}'
<?php
$response = (new \GuzzleHttp\Client())->post(
'https://moneticai.com/api/v1/resume/improve',
[
'headers' => [
'Authorization' => 'Bearer moneticai_your_token',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'model' => 'resume_tailoring',
'resume_text' => 'John Doe\nSenior PHP Developer...',
'job_description' => 'We are looking for a PHP developer...',
'locale' => 'en',
],
'timeout' => 60,
]
);
$data = json_decode($response->getBody(), true);
echo $data['result']['tailored_text'];
const response = await fetch('https://moneticai.com/api/v1/resume/improve', {
method: 'POST',
headers: {
'Authorization': 'Bearer moneticai_your_token',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'resume_tailoring',
resume_text: 'John Doe\nSenior PHP Developer...',
job_description: 'We are looking for a PHP developer...',
locale: 'en',
}),
});
const data = await response.json();
console.log(data.result.tailored_text);
Response Example
{
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"model": "resume_tailoring",
"status": "completed",
"result": {
"tailored_text": "...",
"tailored_summary": "...",
"prioritized_skills": ["PHP", "Laravel", "MySQL"],
"missing_evidence_notes": [],
"warnings": []
},
"usage": {
"input_characters": 1842,
"output_characters": 2103,
"ai_tokens_used": 1204
},
"quota": {
"monthly_limit": 1000,
"used": 11,
"remaining": 989
}
}
Error Codes
| HTTP Status | error | When |
|---|---|---|
| 401 | missing_token / invalid_token / token_revoked | Token missing, invalid, expired, or revoked |
| 402 | insufficient_balance | Insufficient balance — top up your account to continue |
| 422 | validation_error | Missing required fields or invalid model |
| 429 | rate_limit_exceeded | Per-minute request limit exceeded |
| 500 | generation_failed | Internal error — retry with the returned request_id |
Plans & Limits
Starter API
- 100 requests/mo
- 20 req/min
- 20,000 chars max
- 3 models
Growth API
- 1,000 requests/mo
- 60 req/min
- 50,000 chars max
- 10 models
Business API
- 10,000 requests/mo
- 120 req/min
- 100,000 chars max
- 11 models
Enterprise API
- Unlimited
- 300 req/min
- 200,000 chars max
- 11 models
Contact us
Content Safety Policy
The MoneticAI API will never:
- Invent work history, employers, or job titles
- Invent metrics, achievements, or tools
- Invent certifications or degrees
- Change dates or employment periods
- Promise interview results, ATS pass rates, or job offers
The API improves wording, structure, clarity, and relevance using only the information you provide. When evidence is missing, warnings are returned.
Integration templates
Import a ready-made template into your automation or API tool, then replace moneticai_your_token with your real API token.
n8n workflow
Ready-to-import n8n automation
Postman collection
All API endpoints pre-configured
Insomnia collection
All API endpoints pre-configured
Ready to integrate?
Create an account, get an API token in your dashboard, and start building.