Skip to content

Getting Started

This guide walks through the typical Resumly SDK workflow.

1. Install and Authenticate

pip install resumly
from resumly import ResumlyClient

client = ResumlyClient(api_key="rly_your_api_key")

2. Upload Your Base Resume

result = client.upload_base_resume("my_resume.pdf")
base = client.get_base_resume()
print(base["base_resume"]["name"])

3. Search for Jobs

# AI-generate a search query and run it
client.embed_base_resume()
search = client.generate_and_run_search()

# Browse results
jobs = client.get_relevant_jobs()
for job in jobs["jobs"][:5]:
    print(f"{job['title']} @ {job['company']}")

4. Create a Tailored Resume

result = client.create_resume(
    job_description="Senior Engineer at Acme. Python, AWS.",
    cover_letter=True,
    interview_question=True,
)
job_id = result["job_id"]

5. Review and Export

# View comparison
comparison = client.get_resume_comparison(job_id)

# Get insights
insights = client.get_resume_insights(job_id)

# Export PDF
client.export_resume_pdf(job_id, path="tailored.pdf")

6. Cover Letter and Interview Prep

# Cover letter
cl = client.get_cover_letter(job_id)
print(cl["cover_letter_text"])

# Interview questions
questions = client.get_interview_questions(job_id)
for q in questions["questions"][:3]:
    print(f"  Q: {q}")

# Evaluate an answer
score = client.check_interview_answer(
    job_id,
    question="Tell me about a challenging project.",
    answer="I led the migration of our monolith to microservices...",
)

7. Auto-Apply

eligible = client.get_auto_apply_eligible_jobs()
client.queue_auto_apply(job_id="...", resume_id="...")
status = client.get_auto_apply_status()

8. Build AI Agents

Every SDK method maps to a single API call, making it easy to use Resumly as a tool in AI agent frameworks:

# LangChain / CrewAI / custom agents
tools = {
    "search_jobs": lambda: client.generate_and_run_search(),
    "create_resume": lambda desc: client.create_resume(job_description=desc),
    "apply": lambda jid, rid: client.queue_auto_apply(jid, rid),
}

Error Handling

from resumly import ResumlyError, AuthenticationError, RateLimitError

try:
    client.create_resume(job_url="https://example.com/job")
except AuthenticationError:
    print("Check your API key")
except RateLimitError as e:
    print(f"Rate limited. Retry after {e.retry_after}s")
except ResumlyError as e:
    print(f"API error: {e}")