API Overview
The Resume Builder API, developed using ASP.NET Core, allows developers to programmatically create, manage, and export professional resumes and cover letters. It enables customization of resumes and cover letters based on job details provided by the user. The API uses user data to generate tailored resumes and cover letters for specific job applications. Additionally, it provides a job-matching percentage to indicate how well the user’s profile aligns with the job requirements and identifies key skills the user needs to develop to improve their suitability for the role.
Resume/Cover Letter Creation
Build resumes and cover letters with customizable sections like personal info, experience, and skills.
Template Management (Unavailable)
Choose from a variety of resume and cover letter templates tailored to different industries.
Export Options (Only JSON model Right now)
Export resumes and cover letters as PDF, Word, or HTML with configurable styling.
User Management
Manage user profiles and their associated resumes.
Base URL
https://api.resumebuilder.com/v1
Authentication
A admin pass code is needed to access the API. Please contact Naresh Koirala for assistance.
Getting Started
- Contact the administrator for the pass code.
- General Inquiries, and send a request on what features you would like to see.
- You will be send a PASS Code make sure to save it.
Model Structure
Use these kind of Structure Models to interact with the API.
Model structure needed for return Job Req. (returnJob)
Main return Job data -> (returnJob)
{
string? JobName { get; set; } = string.Empty;
ResumeModel? Resume { get; set; } = new ResumeModel();
CoverLetterModel? CoverLetter { get; set; } = new CoverLetterModel();
string? JobKeywords { get; set; } = string.Empty;
string? JobPercentage { get; set; } = string.Empty;
}
ResumeModel @ returnJob -> (Resume)
{
string TitleKeyword { get; set; } = string.Empty;
string Summary { get; set; } = string.Empty;
string ProgramingLanguage { get; set; } = string.Empty;
string Frameworks { get; set; } = string.Empty;
string RelevantKeywords { get; set; } = string.Empty;
List Projects { get; set; } = new List();
string WorkExperience { get; set; } = string.Empty;
string Education { get; set; } = string.Empty;
string Certificates { get; set; } = string.Empty;
}
ProjectsModel @ Resume -> (Projects)
{
string ProjectName { get; set; } = string.Empty;
string Description { get; set; } = string.Empty;
string Bullet1 { get; set; } = string.Empty;
string Bullet2 { get; set; } = string.Empty;
string Bullet3 { get; set; } = string.Empty;
}
CoverLetterModel @ returnJob ->(Resume)
{
string Title { get; set; } = string.Empty;
string Body1 { get; set; } = string.Empty;
string Body2 { get; set; } = string.Empty;
string Body3 { get; set; } = string.Empty;
}
Model structuring for User Registration/Update
The data user need to send format for registration --> (UserRegisterDto)
{
string pass { get; set; } = string.Empty;
string firstName { get; set; } = string.Empty;
string lastName { get; set; } = string.Empty;
string email { get; set; } = string.Empty;
string mobile { get; set; } = string.Empty;
string location { get; set; } = string.Empty;
string province { get; set; } = string.Empty;
string jobField { get; set; } = string.Empty;
string? portfolioUrl { get; set; } = null;
string? linkedInUrl { get; set; } = null;
string? userSummary { get; set; } = null;
List education { get; set; } = new List();
List workExperience { get; set; } = new List();
List certificates { get; set; } = new List();
List skills { get; set; } = new List();
List projects { get; set; } = new List();
}
For updating user info use the same format just instead of pass add publiId --> (UpdateUserDTO)
{
string pass { get; set; } = string.Empty; --> REMOVE
string publicId { get; set; } = string.Empty; --> ADD
[....] -> OTHER ALL ARE SAME
}
CertificateEntryDto
{
string certificateName { get; set; } = string.Empty;
string details { get; set; } = string.Empty;
}
EducationEntryDto
{
string institutionName { get; set; } = string.Empty;
string date { get; set; } = string.Empty;
string? location { get; set; } = null;
string? details { get; set; } = null;
}
ProjectEntryDto
{
string projectName { get; set; } = string.Empty;
string? description { get; set; } = null;
}
SkillsEntryDto
{
string skillName { get; set; } = string.Empty;
}
WorkEntryDto
{
string companyName { get; set; } = string.Empty;
string date { get; set; } = string.Empty;
string? location { get; set; } = null;
string? details { get; set; } = null;
}
API Endpoints
The API is organized into controllers for jobs and users. Below are the available endpoints.
JobController
{"publicId": "string", "jobName": "string", "jobDescription": "string"}
{jobName, ResumeJson, CoverLetterJson}
{"publicId": "string", "jobName": "string", "jobDescription": "string"}
{jobName, MatchPercentage, KeySkills}
{"publicId": "string", "jobName": "string", "jobDescription": "string"}
{complete ReturnJobModel object}
Endpoint | Method | Description | Expected Format | Response Format |
---|---|---|---|---|
/Job/fetch-rcl-json |
GET | Fetch Resume & Cover Letter JSON data |
|
|
/Job/get-matchKeys |
GET | Get match skills percentage and key job skills to improve |
|
|
/Job/get-all |
GET | Get complete job analysis with resume, cover letter, and match data |
|
|
UserController
Endpoint | Method | Description | Parameters/Body | Response |
---|---|---|---|---|
/User/register |
POST | Register a new user | JSON body containing user details (UserRegisterDto) | JSON response with Success message and public ID |
/User/update |
PUT | Update an existing user | JSON body containing updated user details (UpdateUserDto) | JSON response with Success message |
/User/delete/{publicId} |
DELETE | Delete a user by public ID | publicId (path) - Unique public ID of the user |
JSON response with Success message |
/User/getUser/{publicId} |
GET | Retrieve a user by public ID | publicId (path) - Unique public ID of the user |
JSON response with user details |
Code Examples
Use these examples to interact with the API using popular tools and languages.
WILL HAVE EXAMPLE IN FUTURE!!!
Support & Resources
Please contact Naresh Koirala for any issues, feature requests, or support related to the Resume Builder API.