Developer API

Read-Only · v1

Labor market intelligence and career content, retrievable as structured JSON.

Labor market data and compliance evidence, retrievable as JSON

Search occupations, pull wage data, look up certifications, and resolve CIP-to-SOC mappings — all from live endpoints you can test right now. Sign in to retrieve your own analyses and compliance reports programmatically.

The Workforce Pell record — three public endpoints

The national record behind the approvals tracker and the state eligibility tracker, as JSON. No key, no account, no rate limit for reasonable use. Every program row carries its primary source and retrieval date; cite the endpoint and the record_last_verified date.

1. Approvals — every named program, all stages

Returns headline (federally_approved, state_certified, submitted_federal, submitted_state, named_programs, states_with_named_programs), funnel[] (per-state counts as the state posted them), programs[] (one row per named program: institution, program, status, stage dates, source_type, source_url, retrieved_at, status_summary, and a stack object with the four stackability gates and evidence links), data_last_updated, and record_last_verified.

curl -s https://semanticinsight.tech/api/v1/workforce-pell-approvals \
  | python3 -c "import json,sys; d=json.load(sys.stdin); print(d['headline']); print('verified:', d['record_last_verified'])"
GET, no params

2. Eligibility summary — every state that has published

Returns states (count with a published eligibility artifact), soc_listings, institutions, and per_state[] (state_code, state_name, list_type, soc_count, distinct_cips, has_cip_crosswalk, source_url, last_verified, app_window_close), plus data_last_updated and record_last_verified.

curl -s https://semanticinsight.tech/api/v1/workforce-pell-summary \
  | python3 -c "import json,sys; d=json.load(sys.stdin); print(d['states'], 'states'); print([s['state_code'] for s in d['per_state']])"
GET, no params

3. One state — its list and occupation model

Takes ?state=XX (two-letter code). Returns metadata (list_status, list_type, soc_count, lead_agency, source_url, notes) and the state’s occupation model — the SOC codes on its list with the fields the state published for each.

curl -s "https://semanticinsight.tech/api/v1/workforce-pell-state?state=NC" \
  | python3 -c "import json,sys; d=json.load(sys.stdin); print(d['metadata'])"
GET, state required

Dates. Each endpoint carries its own data_last_updated — the day that list last changed. Approvals moves when a program is loaded or its status flips; the summary moves when a state publishes or revises an eligibility list. They will often differ, and that is expected. record_last_verified is the same on both: the date of the last sweep that confirmed the record current against primary sources. Cite that one. Stages are never summed — state certification does not make funds usable; only federal approval does. Attribution. Every response carries license (CC BY 4.0) and cite_as; use the citation string when you republish. The written stackability trail (pathway_note) is shown on the tracker page; the API returns the four gate scores and the evidence and agreement URLs for every program.

Try it now

Pull a full occupation profile — tasks, technologies, certifications, wages, and projections. No account required.

GET /api/soc-profile/
29-1141 = Registered Nurses · Try any SOC code

This hits a live API endpoint. Explore all 18 in the Endpoints tab.

18 Reference EndpointsO*NET, BLS, IPEDS — browse docs and fire live requests now
Your DataRetrieve your analyses, compliance reports, and resume templates — requires sign-in
Partner APIGenerate resumes, cover letters, interviews, and market intelligence — request access
Compute Endpoints (Phase 2)Run analyses programmatically — coming later

What you get with an account

Every analysis produces structured JSON outputs across compliance, planning, and advising. Retrieve any of them through the My Data tab once you're signed in.

Program Review
Curriculum alignment & gap analysis
Perkins V CLNA
Labor market evidence for biennial CLNA
Workforce Pell
Short-term program eligibility evidence
Accreditation Evidence
Self-study data mapped to accreditor standards
WIOA / ETPL
Training provider eligibility documentation
Employer Insights
Regional hiring landscape for advisory boards
Curriculum & Career Readiness
Task-level gaps, emerging skills, keywords
Resume Templates
ATS-ready bullets & skills from employer language
Public reference data. 18 endpoints returning O*NET, BLS, and IPEDS data. No auth required to browse docs. Click Try It on any endpoint to fire a live request.

Retrieving Your Data

Your analyses and all eight report outputs are retrievable as structured JSON, scoped to your account.

What you can retrieve

Analyses         Your completed analyses with metadata
Reports          Full report JSON for any report type (Perkins V, Workforce Pell, etc.)
Program Reviews  Program-level alignment assessments
Resume Templates Generated resume data with bullets and skills

Available report types

perkins_v              Perkins V CLNA evidence
workforce_pell         Workforce Pell eligibility
wioa_etpl              WIOA / ETPL documentation
accreditation_evidence Accreditor self-study data
curriculum_career      Curriculum & career readiness
employer_insights      Employer insights brief

Sign in to view query examples and make live API calls.

Quick Start

Search reference data and retrieve your analyses in minutes.

1

Search occupations

Look up any O*NET occupation by title or keyword.

const resp = await fetch(
    'https://semanticinsight.tech/api/proxy?path=api/soc-search&q=registered+nurse',
    { credentials: 'include' }
);
const { results } = await resp.json();
2

Get a full occupation profile

const profile = await fetch(
    'https://semanticinsight.tech/api/proxy?path=api/soc-profile/29-1141',
    { credentials: 'include' }
).then(r => r.json());
// 30 tasks, 18 technologies, 12 certifications, BLS projections
3

Retrieve your analyses and reports

Sign in to access query examples for pulling your own data. See the My Data tab.

Labor market intelligence API. Detect what employers actually want for any occupation — emerging duties, fading tasks, skill demand, and employer signals from sentence-level analysis of real job postings. Also powers career content generation for platform integrations.
Request API Access

GET /api/v1/discover

Browse all occupations in the dataset with coverage stats. See how many metros, postings, and employers exist for each occupation, plus emerging cluster and fading task counts. Use any SOC code with /api/v1/market to pull full intelligence.

Browse Occupations

// List all occupations with national stats
curl -s "https://semanticinsight.tech/api/v1/discover" \
  -H "X-API-Key: YOUR_KEY"

// Search by occupation name
curl -s "https://semanticinsight.tech/api/v1/discover?search=nurse" \
  -H "X-API-Key: YOUR_KEY"

// Filter to one SOC code
curl -s "https://semanticinsight.tech/api/v1/discover?soc_code=15-2051" \
  -H "X-API-Key: YOUR_KEY"
Parameters
search
soc_code
analysis_id
Example Response
{
  "total_occupations": 341,
  "total_metros_covered": 115,
  "total_employers_in_dataset": 6165,
  "pipeline": {
    "postings_processed": 62171,
    "postings_in_analyses": 34504
  },
  "occupations": [
    {
      "soc_code": "29-1141.00",
      "occupation": "Registered Nurses",
      "metros_analyzed": 63,
      "total_postings": 531,
      "emerging_clusters": 20,
      "fading_tasks": 21,
      "usage": {
        "national": "POST /api/v1/market {\"soc_code\": \"29-1141.00\"}"
      }
    }
  ]
}

GET | POST /api/v1/market

Returns national labor market intelligence for an occupation — canonical tasks ranked by employer demand, emerging duty clusters with validated attestation statements, fading tasks, certifications, skills, and employers. Aggregated across all analyzed metros. Also supports institution-specific queries with CIP code.

Get Market Intelligence

// National intelligence by SOC code
curl -s -X POST "https://semanticinsight.tech/api/v1/market" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"soc_code": "15-2051.00"}'

// Institution-specific (metro-level)
curl -s -X POST "https://semanticinsight.tech/api/v1/market" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "222178", "cip_code": "11.0701"}'

// Filter to a specific employer
curl -s -X POST "https://semanticinsight.tech/api/v1/market" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "222178", "cip_code": "11.0701", "company": "Boeing"}'
Body (JSON)
soc_code
institution_id
cip_code
analysis_id
company
Example Response (National Mode)
{
  "meta": {
    "occupation": "Data Scientists",
    "soc_code": "15-2051",
    "data_level": "national_aggregate",
    "metros_analyzed": 23,
    "total_postings": 218,
    "total_employers": 159,
    "emerging_cluster_count": 43,
    "fading_task_count": 6,
    "pipeline": {
      "total_sentences_analyzed": 12669,
      "method": "sentence_level_semantic_comparison",
      "benchmark": "O*NET 30.2"
    }
  },
  "tasks": [
    { "task_tag": "Model Validation", "pct": 81,
      "top_evidence": [{ "company": "Highmark Health", "similarity": 0.856 }] }
  ],
  "emerging": [
    { "cluster": "Data Flow Creation", "employers": 35, "metros": 7,
      "attestation_statement": "Develop and manage data sourcing, integration, and analysis workflows to ensure reliable, scalable, and compliant data flow across organizational systems.",
      "employer_list": ["Booz Allen Hamilton", "CVS Health", "..."],
      "nearest_canonical_similarity": 0.706 }
  ],
  "fading": [
    { "task": "...", "pct_missing": 75, "confirming_metros": 5 }
  ]
}

Response Structure — Market

The /market response provides structured labor market intelligence. National mode aggregates across all metros. Key sections:

"meta"           occupation, soc_code, data_level, pipeline stats, national coverage
"tasks"          canonical tasks ranked by employer demand % — each with evidence sentences
"missing_tasks"  O*NET tasks NOT found in postings — curriculum alignment signal
"certifications" with demand % across postings
"skills"         confirmed technologies ranked by frequency
"employers"      companies in the analysis with posting count
"emerging"       duty clusters drifting from O*NET — each with a validated attestation statement, employer evidence, and semantic distance to nearest canonical task
"fading"         canonical tasks disappearing from employer demand

GET /api/v1/institution/{id}/programs

Returns all occupations with analysis data for an institution. Resolves institution → metro, finds completed analyses, cross-references with CIP-SOC crosswalk. Use this to see what intelligence is available for a school's programs.

Institution Program Catalog

// Get all available samples for MCTC Minneapolis
curl -s "https://semanticinsight.tech/api/v1/institution/174136/programs" \
  -H "X-API-Key: YOUR_KEY"

// Get catalog for any institution (use IPEDS unit ID)
curl -s "https://semanticinsight.tech/api/v1/institution/UNITID/programs" \
  -H "X-API-Key: YOUR_KEY"
Parameters
institution_id

GET /api/v1/institution/{id}/content

Pull all formatted content for every program at an institution in a single call. No CIP codes or analysis IDs needed. Returns fully assembled JSON for each occupation — resumes with date ranges, cover letters, interview questions, pitches, and portfolios.

Batch Content Retrieval

// All resumes for a school (default)
curl -s "https://semanticinsight.tech/api/v1/institution/225627/content?type=resume" \
  -H "X-API-Key: YOUR_KEY"

// All content types in one call
curl -s "https://semanticinsight.tech/api/v1/institution/225627/content?type=all" \
  -H "X-API-Key: YOUR_KEY"

// Just resumes and cover letters
curl -s "https://semanticinsight.tech/api/v1/institution/225627/content?type=resume,cover_letter" \
  -H "X-API-Key: YOUR_KEY"
Parameters
institution_id path
type
Example Response
{
  "institution": {
    "name": "Hardin-Simmons University",
    "city": "Abilene",
    "state": "TX"
  },
  "total_programs": 12,
  "programs": [
    {
      "soc_code": "29-1141",
      "occupation": "Registered Nurse",
      "posting_count": 10,
      "content": {
        "resume": {
          "sample_name": "Registered Nurse (Early Career)",
          "contact": { "headline": "Registered Nurse" },
          "education": { "degree_area_of_study": "BSN" },
          "experience": [
            { "job_title": "Registered Nurse", "job_details": ["..."] }
          ],
          "skills": [{ "category_name": "Clinical Skills" }],
          "certifications": [{ "certification_name": "BLS" }]
        }
      }
    }
  ]
}

Institution Summary

Get a complete sweep summary for any institution — program counts, alignment distribution, emerging market signals, employer landscape, and content sample counts. Ideal for building institution landing pages, onboarding dashboards, or executive briefings.

GET /api/v1/institution-summary

Returns a computed summary of an institution's sweep results — aggregate stats, alignment distribution, top programs, emerging skills (filtered and deduplicated), top regional employers, and content sample counts (deduplicated by occupation). All stats match what appears on the institution dashboard.

Institution Sweep Summary

# By IPEDS institution ID
curl -s "https://semanticinsight.tech/api/v1/institution-summary?id=222178" \
  -H "X-API-Key: YOUR_KEY"

# By sweep account user ID
curl -s "https://semanticinsight.tech/api/v1/institution-summary?uid=USER_ID" \
  -H "X-API-Key: YOUR_KEY"
Parameters (provide one)
id
uid
Example Response
{
  "institution": {
    "name": "Abilene Christian University",
    "ipeds_id": "222178",
    "location": "Abilene, TX",
    "metro_code": "10180"
  },
  "sweep": {
    "date": "2026-04-01",
    "quarter": "Q2 2026",
    "programs_analyzed": 64,
    "unique_occupations": 41,
    "postings_analyzed": 616,
    "programs_with_emerging": 53
  },
  "alignment": {
    "average": 70,
    "high": 91, "low": 27,
    "distribution": { "strong_80_plus": 11, "solid_70_79": 28, "developing_below_70": 25 }
  },
  "content": {
    "resumes": 41, "cover_letters": 41,
    "interview_prep": 41, "elevator_pitches": 41,
    "portfolios": 41, "total": 205
  },
  "top_programs": [ { "program_name": "Organizational Leadership", "task_alignment": 91, ... } ],
  "emerging_skills": [ { "tag": "Data Transformation", "employer_count": 4, "employers": [...], "occupations": [...] } ],
  "employers": [ "Abilene ISD", "Apple", "Cognizant", ... ],
  "employer_count": 290
}

Career Content

Five content types for career readiness — resumes, interviews, cover letters, elevator pitches, and portfolio templates. Each is generated from real employer posting analysis and formatted as structured JSON for platform integration. Resume, interview, cover letter, and pitch content use LLM formatting; portfolio templates are fully deterministic.

All content endpoints accept both GET (query parameters) and POST (JSON body). GET example: /api/v1/resume-content?institution_id=161767&cip_code=51.3801

GET | POST /api/v1/resume-content

Generate a market-validated resume sample. Returns structured JSON with contact, education (with coursework), experience (polished CAR bullets), skills (occupation-specific categories), and certifications (with issuing organizations). Every bullet traces to real employer postings.

Generate Resume Sample

// Full resolution: institution + program → best analysis → sample
curl -s -X POST "https://semanticinsight.tech/api/v1/resume-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "174136", "cip_code": "51.3801"}'

// Direct analysis lookup + institution context
curl -s -X POST "https://semanticinsight.tech/api/v1/resume-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "cip_code": "51.3801"}'

// Section mode — get just experience bullets or skills
curl -s -X POST "https://semanticinsight.tech/api/v1/resume-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "mode": "section", "section": "experience"}'
Body (JSON)
institution_id
cip_code
analysis_id
award_level
mode
section
Example Response
{
  "sample_name": "Registered Nurse — Entry-Level Clinical",
  "contact": { "headline": "Registered Nurse | BLS & ACLS Certified" },
  "education": {
    "institution_name": "Minneapolis Community & Technical College",
    "degree_area_of_study": "Associate of Science in Nursing",
    "description": "Relevant coursework: Pharmacology, Medical-Surgical Nursing..."
  },
  "experience": [
    {
      "job_title": "Staff Nurse — Medical-Surgical Unit",
      "organization_name": "Allina Health",
      "job_details": [
        "Administered medications to 6-8 patients per shift following physician orders and five-rights protocol, achieving 99.2% accuracy rate (cited by 83% of regional employers)",
        "Coordinated discharge planning with interdisciplinary teams for 15+ patients weekly, reducing readmission rates by 12%"
      ]
    }
  ],
  "skills": [
    { "category_name": "Clinical Skills", "skills": ["Patient Assessment", "IV Therapy", "Wound Care"] },
    { "category_name": "Technology", "skills": ["Epic EHR", "Cerner", "Pyxis MedStation"] }
  ],
  "certifications": [
    { "certification_name": "BLS for Healthcare Providers", "issuing_organization": "American Heart Association" }
  ],
  "frequency_map": { "Administer medications": 0.83, "Patient assessment": 0.79 }
}

Response Structure — Resume

The /resume-content response maps directly to standard resume builder fields:

"sample_name"        occupation headline + career stage
"sample_description" market provenance — metro, employers, duty %, cert demand, analysis ID
"contact"            name, email, phone, address, headline, LinkedIn
"education"          institution, degree, relevant coursework (from program_content)
"experience"         2 entries × 3 CAR bullets each (from polished_content)
"skills"             3 occupation-specific categories with grouped items
"certifications"     cert names + issuing organizations (from certification_issuers)
"frequency_map"      posting percentages for every duty, tech, and cert
"_metadata"          institution, CIP, SOC, metro, analysis_id, content layer status

GET | POST /api/v1/interview-content

Generate market-validated interview content. Two modes: prebuilt returns structured interview sets (general + employer-specific) with questions mapped to real employer duties. simulation_context returns a job description string grounded in real posting data for AI interview simulation.

Generate Interview Content

// Prebuilt interviews: institution + program → interview sets
curl -s -X POST "https://semanticinsight.tech/api/v1/interview-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "174136", "cip_code": "51.3801", "mode": "prebuilt"}'

// Direct analysis lookup
curl -s -X POST "https://semanticinsight.tech/api/v1/interview-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "mode": "prebuilt"}'

// Simulation context: job description for AI interview modal
curl -s -X POST "https://semanticinsight.tech/api/v1/interview-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "mode": "simulation_context", "company": "Allina Health"}'
Body (JSON)
institution_id
cip_code
analysis_id
mode
company
Example Response
{
  "interviews": [
    {
      "name": "Registered Nurses — General Interview",
      "description": "12 questions mapped to duties cited by 40%+ of employers in the Charlotte metro",
      "questions": [
        { "text": "Describe your approach to administering medications safely across a multi-patient assignment.",
          "source_duty": "Administer medications to patients",
          "posting_pct": 0.83 }
      ]
    },
    {
      "name": "Registered Nurses — Atrium Health",
      "description": "Employer-specific questions from Atrium Health postings"
    }
  ],
  "summary": { "interviews": 4, "questions": 36, "employers": 3 }
}

Response Structure — Interview Prebuilt

The prebuilt response includes both ready-to-use interview sets and individual questions:

"interviews"     array of interview sets, each with name + description + questions
                     ready to POST to any interview platform API
"questions"      individual questions with source_duty and posting_pct
                     ready to POST to any interview question bank
"summary"        total counts — interviews, questions, employers
"_metadata"      institution, SOC, metro, analysis_id, generation info

GET | POST /api/v1/cover-letter-content

Generate a market-validated cover letter sample. Returns structured JSON with all three sections — user_information, recipient (with real employer from analysis), and body (three paragraphs). Every letter is grounded in real employer posting data with market_data metadata for proof views.

Generate Cover Letter Sample

// Full resolution: institution + program → cover letter sample
curl -s -X POST "https://semanticinsight.tech/api/v1/cover-letter-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "161767", "cip_code": "51.3801"}'

// Direct analysis lookup
curl -s -X POST "https://semanticinsight.tech/api/v1/cover-letter-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID"}'
Body (JSON)
institution_id
cip_code
analysis_id
award_level

Response Structure — Cover Letter

The response maps directly to standard cover letter builder fields — all three sections:

"cover_letter"
  "sections.user_information"  name, email, phone, headline, address (with zip), LinkedIn
  "sections.recipient"         date, job_title, organization (real employer), address
  "sections.body"              salutation, section_one, section_two, section_three, closing, signature, enclosure
  "style"                      template, font_size, font_family, compact_mode
  "market_data"                top_duties with posting_pct, certifications, technologies, total_postings
"_metadata"                    institution, SOC, metro, analysis_id, degree_title

GET | POST /api/v1/pitch-content

Generate market-validated elevator pitch transcripts. Returns two variants per occupation: a Student Pitch (currently enrolled, seeking internships) and a Graduate Pitch (recently completed, seeking full-time). Each transcript is 80-120 words (~30-45 seconds spoken), conversational tone, with market_data metadata for proof views.

Generate Pitch Transcripts

// Full resolution: institution + program → pitch transcripts
curl -s -X POST "https://semanticinsight.tech/api/v1/pitch-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "161767", "cip_code": "51.3801"}'

// Direct analysis lookup
curl -s -X POST "https://semanticinsight.tech/api/v1/pitch-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID"}'
Body (JSON)
institution_id
cip_code
analysis_id

Response Structure — Pitch

Two pitch variants per occupation, structured for any pitch or video platform:

"pitch.pitches"      array of 2 variants (Student Pitch + Graduate Pitch)
  "name"             occupation + variant label
  "transcript"       80-120 word spoken pitch script
  "media_link"       blank (student records their own)
"pitch.market_data"  top_duties with posting_pct, certifications, top_employer
"_metadata"          institution, SOC, metro, analysis_id

GET | POST /api/v1/portfolio-content

Generate employer-verified portfolio template structures. Returns a set of folders organized by verified competency areas, ranked by employer demand frequency. Each folder includes the competency name, posting prevalence, employer names, sample duty sentences, and evidence guidance. Deterministic — no LLM. Content is generated from task distribution and employer duty sentences in the analysis data.

Generate Portfolio Template

// Full resolution: institution + program → portfolio template
curl -s -X POST "https://semanticinsight.tech/api/v1/portfolio-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "161767", "cip_code": "51.3801"}'

// Direct analysis lookup
curl -s -X POST "https://semanticinsight.tech/api/v1/portfolio-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID"}'
Body (JSON)
institution_id
cip_code
analysis_id

Response Structure — Portfolio

Folder-based portfolio template structured for any portfolio or gallery platform. Learners clone and fill folders with their own evidence.

"portfolio.name"          occupation + region
"portfolio.description"   template instructions with posting count
"portfolio.folders[]"     array of 4-6 competency folders
  "name"                  folder name (e.g., "01_PreventiveMaintenance")
  "display_name"          competency label
  "description"           posting count, task statement, employer names, evidence guidance
  "employer_evidence"     posting_count, posting_pct, companies[], sample_duties[]
"summary"                folder_count, occupation, region, employers[], technologies[]
"_metadata"              institution, SOC, metro, analysis_id, method: "deterministic"

Compliance & Institutional Reports

Eight structured compliance report types — all via GET | POST /api/v1/compliance-content. Every report is generated from real employer posting analysis with full BLS data versioning. No LLM — deterministic evidence extraction you can cite in federal submissions.

Workforce Pell Eligibility Evidence

Three-tier wage assessment (high-wage / wage-viable / below-threshold), demand determination, regional OEWS data, and employer-validated task alignment — structured for Workforce Pell short-term program eligibility applications. type: "workforce_pell"

Pull Workforce Pell Evidence

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "174136", "cip_code": "51.3801", "type": "workforce_pell"}'
Example Response
{
  "report_type": "workforce_pell",
  "program_information": {
    "institution": "Minneapolis Community & Technical College",
    "program": "Registered Nursing/Registered Nurse",
    "cip_code": "51.3801",
    "soc_code": "29-1141.00",
    "region": "Minneapolis-St. Paul-Bloomington, MN-WI",
    "msa_code": "33460",
    "credential_type": "certificate",
    "clock_hours": 450,
    "is_stackable": true
  },
  "wage_analysis": {
    "median_wage": 86070,
    "entry_wage": 55940,
    "experienced_wage": 129400,
    "is_high_wage": true,
    "wage_tier": "high_wage",
    "wage_narrative": "Median wage of $86,070 exceeds the all-occupation median of $49,500, qualifying as high-wage under WIOA."
  },
  "demand_analysis": {
    "growth_rate": 6.0,
    "annual_openings": 193100,
    "is_in_demand": true,
    "exceeds_average_growth": true,
    "demand_narrative": "+6.0% projected growth with 193,100 annual openings. Exceeds all-occupation average of 3%."
  },
  "regional_data": { "regional_median_wage": 89440, "regional_employment": 33210, "location_quotient": 1.12 },
  "task_alignment": { "alignment_score": 72, "tasks_confirmed": 13, "total_tasks": 18, "evidence_strength": "strong" },
  "certifications": [{ "name": "BLS Certification", "demand_pct": 0.72 }],
  "employer_evidence": { "unique_employers": 12, "top_employers": ["Atrium Health", "Novant Health"] },
  "_report_metadata": { "data_sources": { "bls_projections": "2024-2034 (Sep 2025)", "onet_version": "30.2" } }
}

Perkins V CLNA Evidence

Labor market demand data, task coverage tiers, evidence strength scoring, and employer-confirmed certifications — structured for biennial Comprehensive Local Needs Assessment submissions. type: "perkins_v"

Pull Perkins V CLNA Data

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "174136", "cip_code": "51.3801", "type": "perkins_v"}'
Key fields returned
"labor_market_demand"    median_wage, growth_rate, annual_openings, BLS outlook
"task_alignment"         alignment_score, tier_breakdown (core/common/occasional), interpretation
"size_scope_quality"     evidence_strength grade, sample size, confidence metrics
"technologies"           confirmed + additional tools ranked by employer demand
"emerging_competencies"  requirements beyond O*NET taxonomy with employer counts
"certifications"         employer-confirmed credentials with demand percentages

WIOA / ETPL Documentation

Eligibility criteria checks — high-wage determination, in-demand status, credential verification — with pass/fail indicators and supporting labor market data for Eligible Training Provider List applications. type: "wioa_etpl"

Pull WIOA / ETPL Evidence

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "174136", "cip_code": "51.3801", "type": "wioa_etpl"}'
Key fields returned
"eligibility_criteria"
  "high_wage"       { meets: true, median_wage: 86070, threshold: 49500 }
  "in_demand"       { meets: true, growth_rate: 6.0, annual_openings: 193100 }
  "credential"      { type: "certificate", stackable: true }
"labor_market_data"     full BLS projections + regional OEWS
"task_alignment"        employer-validated task coverage with evidence

Accreditation Self-Study Evidence

Labor market evidence mapped for accreditor self-study documentation — task alignment narratives, employer evidence strength, technology requirements, and emerging competency data. type: "accreditation_evidence"

Pull Accreditation Evidence

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"institution_id": "174136", "cip_code": "51.3801", "type": "accreditation_evidence"}'

Job Task Analysis

Complete task-level analysis — every O*NET task ranked by employer demand with evidence sentences, missing tasks, emerging competencies, and evidence strength scoring. type: "job_task_analysis"

Pull Job Task Analysis

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "type": "job_task_analysis"}'

Curriculum & Career Readiness

Curriculum gap analysis, career-ready keywords, and task-based interview question templates — designed for program improvement and career services integration. type: "curriculum_career"

Pull Curriculum & Career Data

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "type": "curriculum_career"}'

Employer Insights Brief

Regional hiring landscape, technology requirements, market outlook, and top employer data — formatted for advisory board presentations and program review committees. type: "employer_insights"

Pull Employer Insights

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "type": "employer_insights"}'

Program Alignment Scoring

Task-by-task alignment matrix with confirmed/gap status, prioritized gap analysis, and technology coverage — for curriculum mapping and program improvement plans. type: "program_alignment"

Pull Program Alignment

curl -s -X POST "https://semanticinsight.tech/api/v1/compliance-content" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d '{"analysis_id": "UUID", "type": "program_alignment"}'

Try any compliance report

All eight report types use the same endpoint. Select a type, provide an analysis reference, and run it.

Body (JSON)
institution_id
cip_code
analysis_id
type
award_level