← back to Handbag Authentication

API_REGISTRATION_GUIDE.md

328 lines

# API Key Registration Guide
## Free API Keys for European & International Handbag Collections

**Generated:** 2025-11-12
**Purpose:** Access museum handbag data from APIs requiring free registration

---

## 🔑 PRIORITY APIS (Free, Instant Approval)

### 1. Europeana Fashion API ⭐⭐⭐⭐⭐
**CRITICAL - Highest Priority**

- **Coverage:** 50+ million items across all of Europe
- **Handbag Data:** Thousands of handbag items from 100+ European institutions
- **Registration URL:** https://pro.europeana.eu/page/get-api
- **Approval Time:** Instant (API key in email immediately)
- **Cost:** FREE
- **Rate Limit:** Generous for research use

**Steps:**
1. Visit: https://pro.europeana.eu/page/get-api
2. Click "Request an API key"
3. Fill form with:
   - Name
   - Email
   - Project description: "Academic research on handbag/fashion history"
4. Receive key instantly via email
5. Export key: `export EUROPEANA_API_KEY=your_key_here`

**Institutions Included:**
- Palais Galliera (Paris Fashion Museum)
- Musée des Arts Décoratifs (Paris)
- French regional museums
- Italian fashion museums
- Dutch museums
- Spanish, German, Belgian institutions
- 100+ fashion collections across Europe

**Expected Data:** 10,000-50,000 handbag items

---

### 2. Rijksmuseum API ⭐⭐⭐⭐
**High Priority - Netherlands Collection**

- **Coverage:** 500,000+ objects including fashion/accessories
- **Handbag Data:** Dutch and international bags
- **Registration URL:** https://data.rijksmuseum.nl/
- **Approval Time:** Instant
- **Cost:** FREE
- **License:** CC0 for metadata

**Steps:**
1. Visit: https://data.rijksmuseum.nl/
2. Click "Request API key"
3. Create account (simple form)
4. API key provided immediately
5. Export key: `export RIJKSMUSEUM_API_KEY=your_key_here`

**Collection Highlights:**
- Historical Dutch bags and purses
- International designer pieces
- 17th-21st century accessories

**Expected Data:** 500-1,000 handbag items

---

### 3. Harvard Art Museums API ⭐⭐⭐
**Medium Priority - Includes European Pieces**

- **Coverage:** Includes European design and fashion
- **Registration URL:** https://harvardartmuseums.org/collections/api
- **Approval Time:** Instant
- **Cost:** FREE

**Steps:**
1. Visit: https://harvardartmuseums.org/collections/api
2. Click "Get a Key"
3. Sign in or create account
4. API key generated immediately
5. Export key: `export HARVARD_API_KEY=your_key_here`

**Expected Data:** 100-500 accessory items

---

### 4. Cooper Hewitt Smithsonian Design Museum API ⭐⭐⭐
**Medium Priority - Design Collection**

- **Coverage:** Design and decorative arts
- **Registration URL:** https://collection.cooperhewitt.org/api/
- **Approval Time:** Instant
- **Cost:** FREE

**Steps:**
1. Visit: https://collection.cooperhewitt.org/api/
2. Register for API access
3. Receive access token
4. Export key: `export COOPERHEWITT_API_KEY=your_key_here`

**Expected Data:** 100-300 bag/accessory items

---

## ✅ NO API KEY REQUIRED (Already Working)

### 5. Victoria & Albert Museum API
- **Status:** ✅ Open API, no key required
- **URL:** https://api.vam.ac.uk/v2
- **Already included in mega scraper**

### 6. Metropolitan Museum API
- **Status:** ✅ Open API, no key required
- **URL:** https://collectionapi.metmuseum.org/
- **Already included in mega scraper**

---

## 📋 QUICK START - Register All 4 Keys (15 minutes total)

```bash
# Open all registration pages in browser:
1. Europeana: https://pro.europeana.eu/page/get-api
2. Rijksmuseum: https://data.rijksmuseum.nl/
3. Harvard: https://harvardartmuseums.org/collections/api
4. Cooper Hewitt: https://collection.cooperhewitt.org/api/

# After receiving keys via email, export them:
export EUROPEANA_API_KEY=your_europeana_key
export RIJKSMUSEUM_API_KEY=your_rijksmuseum_key
export HARVARD_API_KEY=your_harvard_key
export COOPERHEWITT_API_KEY=your_cooperhewitt_key

# Verify keys are set:
echo $EUROPEANA_API_KEY

# Run mega scraper with all APIs:
node scripts/mega_handbag_scraper.js
```

---

## 🔐 API KEY MANAGEMENT

### Store in .env file:
```bash
# Add to /root/WebsitesMisc/handbags/.env
EUROPEANA_API_KEY=your_key_here
RIJKSMUSEUM_API_KEY=your_key_here
HARVARD_API_KEY=your_key_here
COOPERHEWITT_API_KEY=your_key_here
```

### Load in scripts:
```javascript
require('dotenv').config();

const apiKeys = {
    europeana: process.env.EUROPEANA_API_KEY,
    rijksmuseum: process.env.RIJKSMUSEUM_API_KEY,
    harvard: process.env.HARVARD_API_KEY,
    cooperhewitt: process.env.COOPERHEWITT_API_KEY
};
```

---

## 📊 EXPECTED DATA COLLECTION WITH ALL KEYS

| API | Est. Handbag Items | Confidence |
|-----|-------------------|------------|
| **Europeana** | 10,000-50,000 | High |
| **Rijksmuseum** | 500-1,000 | High |
| **V&A** (no key) | 500-2,000 | High |
| **Met** (no key) | 1,000-5,000 | High |
| **Harvard** | 100-500 | Medium |
| **Cooper Hewitt** | 100-300 | Medium |
| **TOTAL** | **12,200-59,800+** | - |

---

## ⚡ AUTOMATION SCRIPT

Create this helper script to register and test all APIs:

```bash
#!/bin/bash
# api_setup.sh

echo "🔑 API Key Setup Assistant"
echo "=========================="
echo ""

# Europeana
echo "1️⃣ EUROPEANA API"
echo "Visit: https://pro.europeana.eu/page/get-api"
read -p "Enter Europeana API key: " EUROPEANA_KEY
export EUROPEANA_API_KEY=$EUROPEANA_KEY
echo "export EUROPEANA_API_KEY=$EUROPEANA_KEY" >> ~/.bashrc

# Rijksmuseum
echo ""
echo "2️⃣ RIJKSMUSEUM API"
echo "Visit: https://data.rijksmuseum.nl/"
read -p "Enter Rijksmuseum API key: " RIJKS_KEY
export RIJKSMUSEUM_API_KEY=$RIJKS_KEY
echo "export RIJKSMUSEUM_API_KEY=$RIJKS_KEY" >> ~/.bashrc

# Harvard
echo ""
echo "3️⃣ HARVARD ART MUSEUMS API"
echo "Visit: https://harvardartmuseums.org/collections/api"
read -p "Enter Harvard API key: " HARVARD_KEY
export HARVARD_API_KEY=$HARVARD_KEY
echo "export HARVARD_API_KEY=$HARVARD_KEY" >> ~/.bashrc

# Cooper Hewitt
echo ""
echo "4️⃣ COOPER HEWITT API"
echo "Visit: https://collection.cooperhewitt.org/api/"
read -p "Enter Cooper Hewitt API key: " COOPER_KEY
export COOPERHEWITT_API_KEY=$COOPER_KEY
echo "export COOPERHEWITT_API_KEY=$COOPER_KEY" >> ~/.bashrc

echo ""
echo "✅ All API keys configured!"
echo "Keys saved to ~/.bashrc"
echo ""
echo "Run the mega scraper:"
echo "  node scripts/mega_handbag_scraper.js"
```

---

## 🎯 IMPACT OF EACH API

### Europeana (CRITICAL)
- **Impact:** 10x-50x data increase
- **Why:** Aggregates 100+ European fashion institutions
- **Includes:**
  - Palais Galliera (200K items)
  - French regional museums
  - Italian fashion collections
  - Dutch museums beyond Rijksmuseum
  - All major European fashion archives

### Rijksmuseum
- **Impact:** Significant Dutch collection
- **Why:** Major European museum with strong fashion holdings
- **Includes:** Historical Dutch + international pieces

### Harvard & Cooper Hewitt
- **Impact:** Supplementary data
- **Why:** US museums with European acquisitions
- **Includes:** European designer pieces, historical items

---

## 📝 REGISTRATION DETAILS

### What Information is Required?

**All APIs require:**
- Name
- Email address
- Brief project description

**Recommended project description:**
```
"Academic research project studying the history and design evolution of
handbags and leather goods in European and Japanese fashion, focusing on
museum collections from the 18th-21st centuries. Data will be used for
historical analysis and cultural research purposes."
```

### Terms of Use:
- All keys are FREE for non-commercial research
- Academic use is encouraged
- Proper attribution required
- Rate limits are generous (typically 10,000+ requests/day)
- No credit card required

---

## ⚠️ IMPORTANT NOTES

1. **Start with Europeana** - Highest impact, easiest to get
2. **All approvals are instant** - No waiting period
3. **Keys never expire** - Use indefinitely
4. **Rate limits are generous** - Won't hit limits for this project
5. **Proper attribution required** - Already built into our scraper

---

## 🚀 NEXT STEPS AFTER REGISTRATION

1. **Export all API keys** to environment
2. **Run mega scraper:** `node scripts/mega_handbag_scraper.js`
3. **Expected runtime:** 4-8 hours for full collection
4. **Expected data:** 12,000-60,000+ handbag items
5. **All data includes source attribution**

---

## 📞 SUPPORT

### Europeana
- Email: api@europeana.eu
- Docs: https://pro.europeana.eu/page/apis

### Rijksmuseum
- Email: api@rijksmuseum.nl
- Docs: https://data.rijksmuseum.nl/object-metadata/api/

### Harvard
- Docs: https://github.com/harvardartmuseums/api-docs

### Cooper Hewitt
- Docs: https://collection.cooperhewitt.org/api/methods/

---

**Status:** ✅ READY TO USE
**Total Setup Time:** 15-20 minutes
**Expected Data Increase:** 10x-50x current collection