# Quick Start

Get your first Cubit API response in under 5 minutes.

## 1. Get Your API Key

1. Sign up at [cubit.maidenlabs.tools](https://cubit.maidenlabs.tools)
2. Navigate to your [Dashboard](https://cubit.maidenlabs.tools/dashboard)
3. Click **"Create API Key"**
4. Copy your key (it starts with `cubit_`)

{% hint style="warning" %}
Your API key is shown only once. Store it securely-you'll need to rotate if lost.
{% endhint %}

## 2. Install the Python SDK

```bash
pip install cubit-api
```

The SDK requires Python 3.8+ and has minimal dependencies (just `httpx`).

## 3. Make Your First API Call

```python
from cubit import CubitClient

# Initialize with your API key
client = CubitClient("cubit_your_api_key_here")

# Search for a job
results = client.search_jobs("software developer")
job = results["jobs"][0]

print(f"Job: {job['title']}")
print(f"SOC Code: {job['soc_code']}")
print(f"Automation Risk: {job['automation_susceptibility_score']:.1f}/100")
print(f"Human Resilience: {job['human_centric_resilience_score']:.1f}/100")
print(f"Balanced Impact: {job['balanced_impact_score']:+.1f}")
```

**Output:**

```
Job: Software Developers
SOC Code: 15-1252.00
Automation Risk: 47.5/100
Human Resilience: 54.7/100
Balanced Impact: +7.2
```

## 4. Understanding the Response

### The Three Core Scores

| Score                         | Range        | Meaning                                                            |
| ----------------------------- | ------------ | ------------------------------------------------------------------ |
| **Automation Susceptibility** | 0-100        | How exposed is this job to AI automation? Higher = more vulnerable |
| **Human-Centric Resilience**  | 0-100        | How protected by human necessity? Higher = more protected          |
| **Balanced Impact**           | -100 to +100 | Net positioning (Resilience minus Susceptibility)                  |

### Quick Interpretation

* **Balanced Impact > 0**: Job has more protective factors than risk factors
* **Balanced Impact < 0**: Job has more risk factors than protective factors
* **Balanced Impact \~ 0**: Tension zone-likely to see augmentation rather than replacement

## 5. Get a Full Job Profile

```python
# Get detailed profile for Software Developers
job = client.get_job("15-1252.00")

print(f"\n{job['title']}")
print(f"Major Group: {job['classification']['major_group_label']}")
print(f"Quadrant: {job['classification']['quadrant']}")

# Enterprise tier: Access keystone skills
if 'keystone_skills' in job:
    print("\nTop Keystone Skills (high value + high resilience):")
    for skill in job['keystone_skills'][:5]:
        print(f"  - {skill['name']}: {skill['ai_resilience']:.0f}% AI-resilient")
```

**Output:**

```
Software Developers
Major Group: Computer and Mathematical Occupations
Quadrant: transitional

Top Keystone Skills (high value + high resilience):
  - Management of Personnel Resources: 97% AI-resilient
  - Instructing: 91% AI-resilient
  - Mathematical Reasoning: 94% AI-resilient
  - Operations Monitoring: 100% AI-resilient
  - Operations Analysis: 100% AI-resilient
```

## 6. Explore Task-Level Data (Professional+)

```python
# Get the most AI-exposed tasks for this job
tasks = client.get_job_tasks("15-1252.00", sort_by="ai_exposure_potential", limit=3)

print(f"\nMost AI-Exposed Tasks for {tasks['title']}:")
for task in tasks["tasks"]:
    print(f"\n- {task['task']}")
    print(f"  AI Exposure: {task['pillars']['ai_exposure_potential']:.0%}")
    print(f"  Quadrant: {task['quadrant']}")
```

## 7. Try Semantic Search (Enterprise)

```python
# Natural language job search
results = client.search_jobs_semantic(
    "careers for people who love animals and working outdoors"
)

print("\nJobs matching your description:")
for job in results["jobs"][:5]:
    print(f"  {job['title']} (relevance: {job['relevance_score']:.0%})")
```

## What's Next?

| Guide                                                          | Description                         |
| -------------------------------------------------------------- | ----------------------------------- |
| [Understanding Scores](/core-concepts/understanding-scores.md) | Details into what the numbers mean  |
| [Building a Job Search](/guides/job-search.md)                 | Complete implementation guide       |
| [Regional Analysis](/guides/regional-analysis.md)              | Metro-level vulnerability data      |
| [Career Transitions](/guides/career-transitions.md)            | Find skill-adjacent resilient paths |

## Using cURL Instead

If you prefer raw HTTP:

```bash
# Health check (no auth required)
curl https://api.maidenlabs.tools/health

# Search jobs
curl -H "Authorization: Bearer cubit_your_key" \
  "https://api.maidenlabs.tools/jobs/search?q=nurse&limit=5"

# Get job profile
curl -H "Authorization: Bearer cubit_your_key" \
  "https://api.maidenlabs.tools/jobs/29-1141.00"
```

{% hint style="info" %}
**Base URL**: `https://api.maidenlabs.tools` (or use the SDK's default)
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.maidenlabs.tools/getting-started/quick-start.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
