Import Profile From GitHub
Imports a GitHub profile and repositories directly via the GitHub REST API (no AI parsing) and creates a new RESUME document from the result. Free users can only import their own OAuth-connected GitHub account (`usernameOrUrl` is ignored in that case); paid users may import any public username, subject to the hidden 50/day shared-token cap described on `GET /profiles/import/quota`.
Your personal API key — vw_ followed by 64 hex characters. The same key is also accepted
as Authorization: Bearer vw_....
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/profiles/import/github" \ -H "Content-Type: application/json" \ -d '{ "usernameOrUrl": "octocat", "replaceMaster": false }'{ "success": true, "message": "GitHub profile imported successfully", "data": { "id": "doc_123", "userId": "user_123", "type": "RESUME", "title": "GitHub Import (octocat)", "slug": "github-import-octocat", "tags": [], "content": {}, "templateId": "executive-clarity", "schemaVersion": 1, "revision": 1, "visibility": "PRIVATE", "createdAt": "2026-04-01T10:00:00.000Z", "updatedAt": "2026-04-01T10:00:00.000Z" }}Get Profile Import QuotaGET
Returns the caller's current GitHub and LinkedIn import quota status in one call. - **GitHub import** is a real GitHub OAuth-backed integration (up to 30 of the account's most recently updated repositories, deterministically mapped to skills by repository language — no AI is involved). Free users get 1 import/day and may only import their own OAuth-connected GitHub account. Paid users (any active AI Credits or Portfolio Pro/Bundle plan) may import any public GitHub username, but are still capped at a hidden 50 imports/day — this protects the single shared `config.github.token` request budget used by every paid import and the GitHub sync cron job from being exhausted by one account. - **LinkedIn import** is not a LinkedIn API integration — it's an AI parse of raw text the user pastes in (copied profile text, or text extracted from an exported PDF). Free users get 1 import/month; paid users get unlimited imports. Both import types share a single `replaceMaster` request flag and always create a brand-new RESUME document from the imported data, in addition to optionally overwriting the master profile.
Import Profile From LinkedInPOST
Parses raw copy-pasted LinkedIn profile text (or text extracted from an exported PDF) using AI and creates a new RESUME document from the result. This is an AI-parsed paste, not a LinkedIn API integration. Free users get 1 import/month; paid users (AI Credits or Portfolio Pro/Bundle) get unlimited imports.