Public API

Access consultant profiles programmatically

Flipping the Recruiting Model

This is ongoing work - an MVP showcasing what's possible when we flip the switch on recruiting.

Too often, through LinkedIn or email, we receive messages saying our profile "looks perfect" and asking us to send a CV. Then silence. We fill in the same information across multiple legacy systems, doing recruiters' administrative work, while our data remains locked in platforms we don't control.

Time to flip it. Instead of chasing opportunities, we provide constantly updated, machine-readable profiles. Recruiters can pull data into whatever system they use. No more copy-pasting into forms. No more PDF attachments lost in inboxes.

LinkedIn doesn't let us easily access our own data through an API - our professional history is effectively trapped. But today, with AI, we can reclaim our source of truth. We can still copy-paste to LinkedIn when needed, but we're no longer forced to use a GUI as our primary interface. Our data. Our schema. Our API.

This API is simply an example of how things could work. Imagine recruiters fetching profile data directly via API, populating their forms with information that's always current, easily importing into their templates and systems. No manual data entry, no stale PDFs, no repeated requests for "an updated CV."

Of course, for this to truly work at scale, it would need to become a standard - an open schema that freelancers and recruiters alike could adopt. Maybe one day? For now, this is just a small experiment showing what's possible.

Fun times ahead.

Base URL: https://func-cvbot-dev-swc.azurewebsites.net/api

This API provides read-only access to public consultant profiles. No authentication required. Rate limiting may apply.

Endpoints

GET /consultant-public/{consultant_id}

Get Consultant Profile

Returns the full public profile for an active consultant.

Path Parameters

  • consultant_id Unique consultant identifier (lowercase alphanumeric with hyphens)

Example Request

curl https://func-cvbot-dev-swc.azurewebsites.net/api/consultant-public/claudio-torres

Response

200 OK Returns the consultant profile

{ "id": "claudio-torres", "schema_version": "2.0", "name": "Claudio Torres", "title": null, "bio_short": null, "lastModified": "2026-02-08T20:44:29+00:00", "personal": { "name": "Claudio Torres", "headline": "CTO | Azure/M365/AI Architect | From Boardroom to Production Without Handoffs", "location": { "city": "Stockholm", "region": "Greater Stockholm Metropolitan Area", "country": "Sweden" }, "company": { "name": "Enknapp", "legal_name": "Edge Pharos AB" }, "contact": { "email": "claudio@enknapp.nu", "phone": "+46760225400", "linkedin": "linkedin.com/in/claudiotorresacevedo", "website": "www.enknapp.nu" } }, "engagement": { "available_from": "2026-02-15", "available_from_note": "Mid-February 2026 for interesting challenges", "work_arrangements": ["remote", "hybrid", "onsite"], "f_skatt": true, "pricing": "contact_directly", "pricing_note": "..." }, "summary": { "short": "One of few who can lead a project from vision to production without handoffs.", "full": "I take projects from boardroom vision to production..." }, "skills": { "categories": { "microsoft_365": ["SharePoint Online ...", ...], "security_compliance": ["Microsoft Purview ...", ...], ... }, "languages": [ {"name": "Swedish", "level": "native"}, ... ] }, "certifications": [ ... ], "employment": [ ... ], "contracts": [ ... ], "education": [ ... ], "attributes": { ... }, "card": { ... }, "_links": { "self": "/api/consultant-public/claudio-torres", "photo": "/api/consultant-photo/claudio-torres", "chat": "/api/chat?consultant_id=claudio-torres" } }

Error Responses

404 Not Found Consultant not found or inactive

{ "error": "Consultant not found" }
GET /consultant-photo/{consultant_id}

Get Consultant Photo

Returns the consultant's profile photo as binary image data.

Path Parameters

  • consultant_id Unique consultant identifier

Example Request

curl -o photo.jpg https://func-cvbot-dev-swc.azurewebsites.net/api/consultant-photo/claudio-torres

Response

200 OK Returns the image

  • Content-Type image/jpeg or image/png
  • Body Binary image data

Error Responses

404 Not Found Consultant or photo not found

Response Schema

The consultant profile contains the following sections:

Top-level fields

Metadata and identification

personal

Basic personal and company information

engagement

Availability and work preferences

skills

Technical skills grouped by category

employment & contracts

Work history including roles, dates, technologies, and key results

certifications & education

Professional certifications and educational background

card

Summarized profile data optimized for card or list display

_links

HATEOAS links for navigation