API Documentation
Complete reference for the MEASURE Labs DEI Tracker API. Access comprehensive corporate DEI data programmatically.
Request API Access
The MEASURE Labs API is currently available to researchers, developers, journalists, and advocacy organizations. Public access coming soon.
Include your name, organization, and intended use case in your request.
Introduction
The MEASURE Labs API provides programmatic access to our comprehensive database of corporate DEI commitments, profiles, controversies, and analytics. All responses are in JSON format.
Base URL
https://api.measurelabs.org/v1Rich Data
1000+ companies, 50K+ sources
Fast & Cached
Redis caching for speed
Secure
API key authentication
Well Documented
Comprehensive docs
Authentication
All API requests require an API key passed in the X-API-Key header.
Example Request
curl https://api.measurelabs.org/v1/companies \
-H "X-API-Key: your_api_key_here"Security Best Practices
- • Never expose API keys in client-side code
- • Store keys in environment variables
- • Rotate keys periodically
- • Use different keys for dev and production
HTTP Status Codes
Quick Start
Get started quickly with these common examples.
1. Get All Companies
curl "https://api.measurelabs.org/v1/companies?page=1&per_page=20" \
-H "X-API-Key: your_api_key_here"2. Search by Ticker Symbol
curl "https://api.measurelabs.org/v1/companies/ticker/AAPL" \
-H "X-API-Key: your_api_key_here"3. Get Full DEI Profile
curl "https://api.measurelabs.org/v1/profiles/123/full" \
-H "X-API-Key: your_api_key_here"Python Example
import requests
API_KEY = "your_api_key_here"
BASE_URL = "https://api.measurelabs.org/v1"
headers = {"X-API-Key": API_KEY}
# Get companies
response = requests.get(f"{BASE_URL}/companies", headers=headers)
companies = response.json()
# Get company's latest profile
company_id = companies["data"][0]["id"]
profile = requests.get(
f"{BASE_URL}/profiles/company/{company_id}/latest",
headers=headers
).json()JavaScript Example
const API_KEY = 'your_api_key_here';
const BASE_URL = 'https://api.measurelabs.org/v1';
const headers = { 'X-API-Key': API_KEY };
// Get companies
const response = await fetch(`${BASE_URL}/companies`, { headers });
const companies = await response.json();
// Get company's latest profile
const companyId = companies.data[0].id;
const profile = await fetch(
`${BASE_URL}/profiles/company/${companyId}/latest`,
{ headers }
).then(r => r.json());Pagination & Filtering
All list endpoints support pagination and filtering.
Pagination Parameters
| Parameter | Type | Description |
|---|---|---|
page | integer | Page numberDefault: 1 |
per_page | integer | Items per page (max: 100)Default: 20 |
Response Format
{
"data": [...],
"pagination": {
"page": 1,
"per_page": 20,
"total_pages": 50,
"total_count": 1000,
"has_next": true,
"has_prev": false,
"next_page": 2,
"prev_page": null
}
}Common Filters
- •
search- Text search (case-insensitive) - •
sort&order- Sort results (asc/desc) - •
min_sources- Minimum source count - •
status- Filter by status (varies by endpoint)
Companies API
Access corporate entities and their DEI profile summaries.
/v1/companiesList all companies with optional filtering by industry, location, and search
Query Parameters
| Parameter | Type | Description |
|---|---|---|
industry | string | Filter by industry |
country | string | Filter by country |
state | string | Filter by state (US companies) |
search | string | Search company name |
sort | string | Field to sort by |
order | string | asc or descDefault: desc |
Example
curl "https://api.measurelabs.org/v1/companies?industry=Technology&per_page=20" \
-H "X-API-Key: your_api_key_here"/v1/companies/{company_id}Get detailed company information with optional related data
Query Parameters
| Parameter | Type | Description |
|---|---|---|
include | string | Include: profile, commitments, sources, or all |
/v1/companies/ticker/{ticker}Look up company by stock ticker symbol (e.g., AAPL, MSFT)
/v1/companies/search/autocompleteFast autocomplete search for building dropdowns (min 1 character)
Query Parameters
| Parameter | Type | Description |
|---|---|---|
qRequired | string | Search query (min 1 char) |
limit | integer | Max results (1-50)Default: 10 |
/v1/companies/search/advancedMulti-criteria search with arrays of industries, countries, and advanced filters
Query Parameters
| Parameter | Type | Description |
|---|---|---|
q | string | Text search query |
industries[] | array | Multiple industries |
countries[] | array | Multiple countries |
has_commitments | boolean | Only companies with commitments |
min_sources | integer | Minimum source count |
DEI Profiles API
Comprehensive DEI research profiles with AI analysis, risk scores, and source documentation.
Profile Sizes
- • Lightweight (full=false): Basic metadata only
- • Standard (full=true): All components + related data
- • Complete (/full endpoint): Everything + relationships
/v1/profilesList DEI profiles with filtering by company, sources, and recency
Query Parameters
| Parameter | Type | Description |
|---|---|---|
company_id | integer | Filter by company |
min_sources | integer | Minimum source count |
is_latest | boolean | Only latest per company |
/v1/profiles/{profile_id}/fullGet complete profile with ALL components: AI analysis, posture, CDO, reporting, supplier diversity, risk, commitments, controversies, events, and sources
/v1/profiles/company/{company_id}/latestGet the most recent profile for a specific company
Query Parameters
| Parameter | Type | Description |
|---|---|---|
full | boolean | Include full dataDefault: true |
/v1/profiles/ranked/at-riskCompanies ranked by risk score (highest first) - identify DEI-related risks
Query Parameters
| Parameter | Type | Description |
|---|---|---|
limit | integer | Number of results (1-100)Default: 20 |
/v1/profiles/ranked/top-committedCompanies ranked by commitment count (most committed first)
Query Parameters
| Parameter | Type | Description |
|---|---|---|
limit | integer | Number of results (1-100)Default: 20 |
Commitments API
Track DEI pledges and initiatives, monitor status changes over time.
/v1/commitmentsList all commitments with filtering by type, status, company, and text search
Query Parameters
| Parameter | Type | Description |
|---|---|---|
profile_id | integer | Filter by profile |
company_id | integer | Filter by company |
commitment_type | string | pledge or industry_initiative |
status | string | active, completed, discontinued |
search | string | Search commitment name |
Example
curl "https://api.measurelabs.org/v1/commitments?status=active&commitment_type=pledge" \
-H "X-API-Key: your_api_key_here"/v1/commitments/{commitment_id}Get detailed commitment information with source citations
/v1/commitments/types/statsStatistics on commitment types and status distribution
Controversies API
Track DEI-related lawsuits, discrimination cases, and legal challenges.
/v1/controversiesList controversies with filtering by type, status, and company
Query Parameters
| Parameter | Type | Description |
|---|---|---|
profile_id | integer | Filter by profile |
company_id | integer | Filter by company |
type | string | discrimination, pay_equity, harassment |
status | string | ongoing, settled, dismissed |
search | string | Search description |
/v1/controversies/{controversy_id}Get detailed controversy with legal details and source documentation
Events API
Track significant DEI events, announcements, milestones, and setbacks.
/v1/eventsList events with comprehensive filtering by sentiment, impact, and category
Query Parameters
| Parameter | Type | Description |
|---|---|---|
company_id | integer | Filter by company |
event_type | string | Type of event |
sentiment | string | positive, negative, neutral |
impact | string | high, major, medium, low |
event_category | string | announcements, milestones, setbacks, changes |
/v1/events/{event_id}Get event details with sources and impact assessment
/v1/events/types/statsStatistics on event types, sentiment, and impact distribution
Sources API
Access documentation sources with reliability scores (1-5 scale).
/v1/sourcesList sources with filtering by type, reliability, publisher, and company
Query Parameters
| Parameter | Type | Description |
|---|---|---|
company_id | integer | Filter by company |
source_type | string | news, report, filing, academic, blog |
min_reliability | integer | Minimum reliability (1-5) |
publisher | string | Filter by publisher |
search | string | Search title and notes |
/v1/sources/{source_id}Get source details including URL, title, reliability, and notes
/v1/sources/types/statsStatistics on source types and reliability distribution
Analytics API
Aggregated metrics, industry comparisons, and risk analysis.
/v1/analytics/overviewPlatform-wide statistics: totals, averages, breakdowns by type, risk levels, and recommendations
/v1/analytics/industriesDEI metrics aggregated by industry sector for comparative analysis
/v1/analytics/compareSide-by-side comparison of 2-5 companies with comprehensive metrics
Query Parameters
| Parameter | Type | Description |
|---|---|---|
company_ids[]Required | array | 2-5 company IDs to compare |
Example
curl "https://api.measurelabs.org/v1/analytics/compare?company_ids[]=1&company_ids[]=2&company_ids[]=3" \
-H "X-API-Key: your_api_key_here"/v1/analytics/risksRisk distribution statistics and trends across all companies