@nordsym/apiclaw 1.2.1 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.prod +1 -0
- package/convex/http.ts +32 -0
- package/data/combined-02-25.json +5602 -0
- package/data/night-batch-02-25.json +2732 -0
- package/data/night-expansion-02-25.json +2872 -0
- package/dist/credentials.d.ts.map +1 -1
- package/dist/credentials.js +15 -0
- package/dist/credentials.js.map +1 -1
- package/dist/execute.d.ts.map +1 -1
- package/dist/execute.js +76 -0
- package/dist/execute.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/proxy.d.ts.map +1 -1
- package/dist/proxy.js +1 -1
- package/dist/proxy.js.map +1 -1
- package/dist/registry/apis.json +44476 -174
- package/landing/src/app/api/auth/magic-link/route.ts +8 -1
- package/landing/src/app/api/auth/verify/route.ts +7 -4
- package/landing/src/app/docs/page.tsx +20 -20
- package/landing/src/app/earn/page.tsx +8 -8
- package/landing/src/app/page.tsx +147 -15
- package/landing/src/app/providers/page.tsx +6 -5
- package/landing/src/app/providers/register/page.tsx +1 -1
- package/landing/src/lib/convex-client.ts +6 -2
- package/landing/src/lib/stats.json +1 -1
- package/package.json +2 -1
- package/scripts/merge-to-registry.py +77 -0
- package/scripts/night-batch-02-24.py +391 -0
- package/scripts/night-batch-02-25.py +479 -0
- package/scripts/night-batch-03-24-b2.py +387 -0
- package/scripts/night-batch-03-24-b3.py +284 -0
- package/scripts/night-batch-03-24.py +447 -0
- package/scripts/night-batch-06-24-b2.py +695 -0
- package/scripts/night-batch-06-24-b3.py +696 -0
- package/scripts/night-batch-06-24.py +825 -0
- package/scripts/night-expansion-02-24-02.py +708 -0
- package/scripts/night-expansion-02-25.py +668 -0
- package/src/credentials.ts +16 -0
- package/src/execute.ts +86 -0
- package/src/index.ts +2 -0
- package/src/proxy.ts +1 -1
- package/src/registry/apis.json +44476 -174
|
@@ -0,0 +1,387 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
APIClaw Night Expansion - 2026-02-24 03:00 Batch 2
|
|
4
|
+
Mål: +1000 APIs från TonnyL/Awesome_APIs + more sources
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
import json
|
|
8
|
+
import os
|
|
9
|
+
from datetime import datetime
|
|
10
|
+
|
|
11
|
+
# More APIs from various sources
|
|
12
|
+
NEW_APIS_BATCH2 = [
|
|
13
|
+
# === FROM TONNY'S AWESOME APIS ===
|
|
14
|
+
# BLOGGING
|
|
15
|
+
{"name": "Blogger API", "description": "Create new blog posts, edit or delete existing posts", "category": "Blogging", "authType": "oauth", "baseUrl": "https://developers.google.com/blogger/"},
|
|
16
|
+
{"name": "Medium API", "description": "Access to Medium.com data", "category": "Blogging", "authType": "oauth", "baseUrl": "https://github.com/Medium/medium-api-docs"},
|
|
17
|
+
{"name": "Weebly Cloud", "description": "Website builder API", "category": "Blogging", "authType": "apiKey", "baseUrl": "https://cloud-developer.weebly.com/"},
|
|
18
|
+
{"name": "WordPress APIs", "description": "WordPress platform APIs", "category": "Blogging", "authType": "oauth", "baseUrl": "https://codex.wordpress.org/WordPress_APIs"},
|
|
19
|
+
{"name": "Telegraph API", "description": "Telegram's publishing service", "category": "Blogging", "authType": "none", "baseUrl": "http://telegra.ph/api"},
|
|
20
|
+
|
|
21
|
+
# BOOKS
|
|
22
|
+
{"name": "An API of Ice and Fire", "description": "Game of Thrones book data", "category": "Books", "authType": "none", "baseUrl": "https://anapioficeandfire.com/"},
|
|
23
|
+
{"name": "NYPL Digital Collections", "description": "NY Public Library digital archive", "category": "Books", "authType": "apiKey", "baseUrl": "http://api.repo.nypl.org/"},
|
|
24
|
+
{"name": "Bookshare", "description": "Book access for print disabilities", "category": "Books", "authType": "apiKey", "baseUrl": "http://developer.bookshare.org/"},
|
|
25
|
+
|
|
26
|
+
# BUSINESS
|
|
27
|
+
{"name": "Airtable API", "description": "Spreadsheet database API", "category": "Business", "authType": "apiKey", "baseUrl": "https://airtable.com/api"},
|
|
28
|
+
{"name": "Buffer", "description": "Social media management API", "category": "Business", "authType": "oauth", "baseUrl": "https://buffer.com/developers/api"},
|
|
29
|
+
{"name": "Concur Labs", "description": "Expense and travel management", "category": "Business", "authType": "oauth", "baseUrl": "https://developer.concur.com/api-reference/"},
|
|
30
|
+
{"name": "Envoy API", "description": "Visitor management", "category": "Business", "authType": "apiKey", "baseUrl": "https://developers.envoy.com/"},
|
|
31
|
+
{"name": "JotForm", "description": "Form builder API", "category": "Business", "authType": "apiKey", "baseUrl": "http://api.jotform.com/docs/"},
|
|
32
|
+
{"name": "Pruvan", "description": "Field service management", "category": "Business", "authType": "apiKey", "baseUrl": "https://pruvan.com/resources/pruvan-api/"},
|
|
33
|
+
{"name": "Quip API", "description": "Collaborative documents API", "category": "Business", "authType": "oauth", "baseUrl": "https://quip.com/api/"},
|
|
34
|
+
{"name": "Wolfram Data Drop", "description": "Data storage and analysis", "category": "Business", "authType": "apiKey", "baseUrl": "https://www.wolfram.com/datadrop/quick-reference/web-api/"},
|
|
35
|
+
|
|
36
|
+
# CARSHARING
|
|
37
|
+
{"name": "Lyft API", "description": "Rideshare ETAs and pricing", "category": "Transportation", "authType": "oauth", "baseUrl": "https://www.lyft.com/developers"},
|
|
38
|
+
{"name": "Uber API", "description": "Rideshare trips and logistics", "category": "Transportation", "authType": "oauth", "baseUrl": "https://developer.uber.com/"},
|
|
39
|
+
|
|
40
|
+
# CLOUD
|
|
41
|
+
{"name": "Google Cloud Platform", "description": "Google cloud services APIs", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://cloud.google.com/apis/docs/overview"},
|
|
42
|
+
{"name": "Oracle Cloud", "description": "Oracle cloud services", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://cloud.oracle.com/home"},
|
|
43
|
+
{"name": "Tencent Cloud", "description": "Tencent cloud services", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://cloud.tencent.com/document/api"},
|
|
44
|
+
{"name": "Alibaba Cloud", "description": "Alibaba cloud services", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://develop.aliyun.com/api/"},
|
|
45
|
+
{"name": "Baidu Cloud", "description": "Baidu cloud services", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://cloud.baidu.com/doc/index.html"},
|
|
46
|
+
{"name": "LeanCloud", "description": "Backend as a service", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://leancloud.cn/"},
|
|
47
|
+
{"name": "Wilddog", "description": "Real-time backend service", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://www.wilddog.com/"},
|
|
48
|
+
{"name": "Qiniu Cloud", "description": "Cloud storage service", "category": "Cloud", "authType": "apiKey", "baseUrl": "http://www.qiniu.com/"},
|
|
49
|
+
{"name": "Upyun", "description": "CDN and cloud storage", "category": "Cloud", "authType": "apiKey", "baseUrl": "https://www.upyun.com/"},
|
|
50
|
+
{"name": "Bmob", "description": "Backend as a service", "category": "Cloud", "authType": "apiKey", "baseUrl": "http://www.bmob.cn/"},
|
|
51
|
+
|
|
52
|
+
# CLOUD STORAGE
|
|
53
|
+
{"name": "Amazon Cloud Drive", "description": "Amazon cloud file storage", "category": "Cloud Storage", "authType": "oauth", "baseUrl": "https://developer.amazon.com/amazon-drive"},
|
|
54
|
+
{"name": "DocumentCloud", "description": "Document analysis and storage", "category": "Cloud Storage", "authType": "apiKey", "baseUrl": "http://www.documentcloud.org/help/api"},
|
|
55
|
+
{"name": "QNAP API", "description": "NAS device management", "category": "Cloud Storage", "authType": "apiKey", "baseUrl": "https://www.qnap.com/event/dev/useng/p_about.php"},
|
|
56
|
+
{"name": "Verizon Cloud", "description": "Enterprise cloud storage", "category": "Cloud Storage", "authType": "apiKey", "baseUrl": "http://www.verizonenterprise.com/cloud/documentation/StorageAPIReference.htm"},
|
|
57
|
+
|
|
58
|
+
# DELIVERY TRACKING
|
|
59
|
+
{"name": "AfterShip", "description": "Shipment tracking 200+ couriers", "category": "Logistics", "authType": "apiKey", "baseUrl": "https://docs.aftership.com/api/"},
|
|
60
|
+
{"name": "Aramex", "description": "Global shipping delivery", "category": "Logistics", "authType": "apiKey", "baseUrl": "https://www.aramex.com/developers/aramex-apis"},
|
|
61
|
+
{"name": "Canada Post", "description": "Canadian shipping API", "category": "Logistics", "authType": "apiKey", "baseUrl": "http://www.canadapost.ca/cpo/mc/business/productsservices/developers/services/fundamentals.jsf"},
|
|
62
|
+
{"name": "DHL API", "description": "Global shipping services", "category": "Logistics", "authType": "apiKey", "baseUrl": "http://www.dhl-usa.com/en/express/resource_center/integrated_shipping_solutions.html"},
|
|
63
|
+
{"name": "FedEx API", "description": "FedEx shipping integration", "category": "Logistics", "authType": "apiKey", "baseUrl": "https://www.fedex.com/us/developer/web-services/index.html"},
|
|
64
|
+
{"name": "UPS API", "description": "UPS shipping services", "category": "Logistics", "authType": "apiKey", "baseUrl": "http://www.ups.com/content/us/en/resources/techsupport/developercenter.html"},
|
|
65
|
+
{"name": "Kuaidi100", "description": "China courier tracking", "category": "Logistics", "authType": "apiKey", "baseUrl": "http://www.kuaidi100.com/openapi/"},
|
|
66
|
+
{"name": "Kdniao", "description": "China logistics API", "category": "Logistics", "authType": "apiKey", "baseUrl": "http://www.kdniao.com/"},
|
|
67
|
+
|
|
68
|
+
# DESIGN
|
|
69
|
+
{"name": "Behance API", "description": "Creative portfolio platform", "category": "Design", "authType": "apiKey", "baseUrl": "https://www.behance.net/dev/api/endpoints/"},
|
|
70
|
+
{"name": "DeviantART API", "description": "Art community platform", "category": "Design", "authType": "oauth", "baseUrl": "https://www.deviantart.com/developers/"},
|
|
71
|
+
|
|
72
|
+
# DEVELOPMENT
|
|
73
|
+
{"name": "ARTIK Cloud", "description": "Samsung IoT platform", "category": "IoT", "authType": "apiKey", "baseUrl": "https://developer.artik.cloud/documentation/api-reference/"},
|
|
74
|
+
{"name": "AT&T M2X", "description": "IoT time series data", "category": "IoT", "authType": "apiKey", "baseUrl": "https://m2x.att.com/developer/documentation/v2/overview"},
|
|
75
|
+
{"name": "Bitbucket API", "description": "Git hosting platform", "category": "Development", "authType": "oauth", "baseUrl": "https://developer.atlassian.com/cloud/bitbucket/"},
|
|
76
|
+
{"name": "Bitly API", "description": "URL shortening service", "category": "Development", "authType": "oauth", "baseUrl": "https://dev.bitly.com/"},
|
|
77
|
+
{"name": "Buddy CI", "description": "Continuous integration platform", "category": "Development", "authType": "oauth", "baseUrl": "https://buddy.works/api/reference/getting-started/overview"},
|
|
78
|
+
{"name": "Bugzilla API", "description": "Bug tracking system", "category": "Development", "authType": "apiKey", "baseUrl": "https://wiki.mozilla.org/Bugzilla:REST_API"},
|
|
79
|
+
{"name": "Dataflow Kit", "description": "Web scraping framework", "category": "Development", "authType": "apiKey", "baseUrl": "https://github.com/slotix/dataflowkit"},
|
|
80
|
+
{"name": "Gitter API", "description": "Chat for developers", "category": "Development", "authType": "oauth", "baseUrl": "https://developer.gitter.im/docs/welcome"},
|
|
81
|
+
{"name": "Google Play Developer", "description": "App publishing API", "category": "Development", "authType": "oauth", "baseUrl": "https://developers.google.com/android-publisher/"},
|
|
82
|
+
{"name": "IPInfo.io", "description": "IP geolocation API", "category": "Development", "authType": "apiKey", "baseUrl": "https://ipinfo.io/developers"},
|
|
83
|
+
{"name": "MAC Address Lookup", "description": "MAC vendor lookup", "category": "Development", "authType": "apiKey", "baseUrl": "https://macaddress.io/api-documentation"},
|
|
84
|
+
{"name": "openHAB", "description": "Home automation REST API", "category": "IoT", "authType": "none", "baseUrl": "https://github.com/openhab/openhab1-addons/wiki/REST-API"},
|
|
85
|
+
{"name": "Particle Cloud", "description": "IoT device cloud", "category": "IoT", "authType": "apiKey", "baseUrl": "https://docs.particle.io/reference/api/"},
|
|
86
|
+
{"name": "QR Server API", "description": "QR code generator", "category": "Development", "authType": "none", "baseUrl": "http://goqr.me/api/"},
|
|
87
|
+
{"name": "Scraper API", "description": "Web scraping proxy", "category": "Development", "authType": "apiKey", "baseUrl": "https://www.scraperapi.com/documentation"},
|
|
88
|
+
{"name": "StackExchange API", "description": "Stack Overflow data", "category": "Development", "authType": "apiKey", "baseUrl": "https://api.stackexchange.com/docs"},
|
|
89
|
+
{"name": "SVN API", "description": "Subversion libraries", "category": "Development", "authType": "none", "baseUrl": "https://subversion.apache.org/docs/api/1.8/"},
|
|
90
|
+
{"name": "W3C API", "description": "W3C specifications data", "category": "Development", "authType": "none", "baseUrl": "https://github.com/w3c/w3c-api"},
|
|
91
|
+
{"name": "ZenHub API", "description": "GitHub project management", "category": "Development", "authType": "apiKey", "baseUrl": "https://github.com/ZenHubIO/API"},
|
|
92
|
+
{"name": "V2EX API", "description": "Developer community forum", "category": "Development", "authType": "none", "baseUrl": "https://www.v2ex.com/p/7v9TEc53"},
|
|
93
|
+
{"name": "Coding.net", "description": "Code hosting platform", "category": "Development", "authType": "oauth", "baseUrl": "https://open.coding.net/"},
|
|
94
|
+
{"name": "Diycode", "description": "Developer community", "category": "Development", "authType": "apiKey", "baseUrl": "https://www.diycode.cc/api"},
|
|
95
|
+
{"name": "Gank.io", "description": "Developer resources API", "category": "Development", "authType": "none", "baseUrl": "http://gank.io/api"},
|
|
96
|
+
{"name": "Laravel China", "description": "Laravel community API", "category": "Development", "authType": "apiKey", "baseUrl": "https://laravel-china.org/topics/3097"},
|
|
97
|
+
{"name": "Oschina API", "description": "Chinese dev community", "category": "Development", "authType": "oauth", "baseUrl": "http://www.oschina.net/openapi"},
|
|
98
|
+
{"name": "Ruby China", "description": "Ruby community API", "category": "Development", "authType": "apiKey", "baseUrl": "https://ruby-china.org/api-doc/"},
|
|
99
|
+
|
|
100
|
+
# EMAIL
|
|
101
|
+
{"name": "Context.IO", "description": "Email API for developers", "category": "Email", "authType": "oauth", "baseUrl": "http://context.io/"},
|
|
102
|
+
{"name": "Inbox by Nylas", "description": "Modern email API", "category": "Email", "authType": "oauth", "baseUrl": "https://www.inboxapp.com/docs"},
|
|
103
|
+
{"name": "Mandrill", "description": "Transactional email API", "category": "Email", "authType": "apiKey", "baseUrl": "https://mandrillapp.com/api/docs/"},
|
|
104
|
+
{"name": "Outlook Mail API", "description": "Microsoft email API", "category": "Email", "authType": "oauth", "baseUrl": "https://msdn.microsoft.com/en-us/office/office365/api/mail-rest-operations"},
|
|
105
|
+
|
|
106
|
+
# FITNESS & WEARABLES
|
|
107
|
+
{"name": "Adidas API", "description": "Adidas services API", "category": "Fitness", "authType": "apiKey", "baseUrl": "https://developers.adidas.com/services"},
|
|
108
|
+
{"name": "Fitbit API", "description": "Fitness tracker data", "category": "Fitness", "authType": "oauth", "baseUrl": "https://dev.fitbit.com/"},
|
|
109
|
+
{"name": "Jawbone UP", "description": "Activity tracking API", "category": "Fitness", "authType": "oauth", "baseUrl": "https://jawbone.com/up/developer"},
|
|
110
|
+
{"name": "Sony Lifelog", "description": "Sony wearable data", "category": "Fitness", "authType": "oauth", "baseUrl": "https://developer.sony.com/develop/services/lifelog-api/"},
|
|
111
|
+
{"name": "Misfit API", "description": "Activity tracker API", "category": "Fitness", "authType": "oauth", "baseUrl": "https://build.misfit.com/"},
|
|
112
|
+
{"name": "Nike+ API", "description": "Nike fitness data", "category": "Fitness", "authType": "oauth", "baseUrl": "https://developer.nike.com/content/nike-developer-cq/us/en_us/index/documentation/api-docs.html"},
|
|
113
|
+
{"name": "Recon API", "description": "Sports instruments data", "category": "Fitness", "authType": "apiKey", "baseUrl": "http://www.reconinstruments.com/developers/develop/for-recon-engage/api-documentation/"},
|
|
114
|
+
{"name": "Strava API", "description": "Athletic activity API", "category": "Fitness", "authType": "oauth", "baseUrl": "https://strava.github.io/api/"},
|
|
115
|
+
{"name": "Withings API", "description": "Health device data", "category": "Fitness", "authType": "oauth", "baseUrl": "http://www.withings.com/us/en/developers"},
|
|
116
|
+
|
|
117
|
+
# FOOD
|
|
118
|
+
{"name": "Pizza Order API", "description": "Restaurant ordering API", "category": "Food", "authType": "none", "baseUrl": "https://order-pizza-api.herokuapp.com/api/ui"},
|
|
119
|
+
|
|
120
|
+
# FOREX
|
|
121
|
+
{"name": "1Forge Forex", "description": "Real-time forex quotes", "category": "Finance", "authType": "apiKey", "baseUrl": "https://1forge.com/"},
|
|
122
|
+
{"name": "CurrencyScoop", "description": "Currency rates API", "category": "Finance", "authType": "apiKey", "baseUrl": "https://currencyscoop.com/"},
|
|
123
|
+
|
|
124
|
+
# GAMES
|
|
125
|
+
{"name": "Battle.net", "description": "Blizzard games API", "category": "Games", "authType": "apiKey", "baseUrl": "https://dev.battle.net/"},
|
|
126
|
+
{"name": "Clash of Clans API", "description": "Game data API", "category": "Games", "authType": "apiKey", "baseUrl": "https://developer.clashofclans.com/"},
|
|
127
|
+
{"name": "EVE Online API", "description": "Space MMORPG API", "category": "Games", "authType": "apiKey", "baseUrl": "https://developers.eveonline.com/"},
|
|
128
|
+
{"name": "Facebook Games", "description": "Facebook gaming APIs", "category": "Games", "authType": "oauth", "baseUrl": "https://developers.facebook.com/docs/games"},
|
|
129
|
+
{"name": "Google Play Games", "description": "Google gaming services", "category": "Games", "authType": "oauth", "baseUrl": "https://developers.google.com/games/"},
|
|
130
|
+
{"name": "Riot Games API", "description": "League of Legends data", "category": "Games", "authType": "apiKey", "baseUrl": "https://developer.riotgames.com/"},
|
|
131
|
+
{"name": "Steam Web API", "description": "Steam gaming platform", "category": "Games", "authType": "apiKey", "baseUrl": "https://steamcommunity.com/dev"},
|
|
132
|
+
{"name": "Giant Bomb API", "description": "Video game database", "category": "Games", "authType": "apiKey", "baseUrl": "http://www.giantbomb.com/api/"},
|
|
133
|
+
{"name": "Guild Wars 2 API", "description": "Guild Wars 2 game data", "category": "Games", "authType": "apiKey", "baseUrl": "https://wiki.guildwars2.com/wiki/API:Main"},
|
|
134
|
+
|
|
135
|
+
# IOT
|
|
136
|
+
{"name": "Automatic API", "description": "Connected car data", "category": "IoT", "authType": "oauth", "baseUrl": "https://developer.automatic.com/"},
|
|
137
|
+
{"name": "Amazon Alexa API", "description": "Voice assistant API", "category": "IoT", "authType": "oauth", "baseUrl": "https://developer.amazon.com/public/solutions/alexa/alexa-voice-service/content/avs-api-overview"},
|
|
138
|
+
{"name": "Google Assistant", "description": "Google voice assistant", "category": "IoT", "authType": "oauth", "baseUrl": "https://developers.google.com/actions/"},
|
|
139
|
+
{"name": "Home8 API", "description": "IoT alarm system", "category": "IoT", "authType": "apiKey", "baseUrl": "https://developer.home8systems.com/"},
|
|
140
|
+
{"name": "Homey API", "description": "Smart home platform", "category": "IoT", "authType": "oauth", "baseUrl": "https://developers.athom.com/api/"},
|
|
141
|
+
{"name": "HP Print API", "description": "Printer services", "category": "IoT", "authType": "apiKey", "baseUrl": "https://developers.hp.com/printos/printos"},
|
|
142
|
+
{"name": "LIFX API", "description": "Smart lightbulb control", "category": "IoT", "authType": "apiKey", "baseUrl": "https://api.developer.lifx.com/"},
|
|
143
|
+
{"name": "LightwaveRF API", "description": "Smart home lighting", "category": "IoT", "authType": "apiKey", "baseUrl": "https://api.lightwaverf.com/"},
|
|
144
|
+
{"name": "MicroBees API", "description": "IoT messaging platform", "category": "IoT", "authType": "apiKey", "baseUrl": "http://developers.microbees.com/documentation/"},
|
|
145
|
+
{"name": "Mojio API", "description": "Connected car platform", "category": "IoT", "authType": "oauth", "baseUrl": "https://www.moj.io/developer/"},
|
|
146
|
+
{"name": "MyStrom API", "description": "Smart plug control", "category": "IoT", "authType": "none", "baseUrl": "https://mystrom.ch/de/mystrom-api"},
|
|
147
|
+
{"name": "Neurio API", "description": "Energy monitoring", "category": "IoT", "authType": "oauth", "baseUrl": "http://neur.io/developers/"},
|
|
148
|
+
{"name": "Philips Hue API", "description": "Smart lighting control", "category": "IoT", "authType": "apiKey", "baseUrl": "https://developers.meethue.com/"},
|
|
149
|
+
{"name": "Smappee API", "description": "Energy monitoring", "category": "IoT", "authType": "oauth", "baseUrl": "https://smappee.atlassian.net/wiki/display/DEVAPI/SmappeeDevAPI+Home"},
|
|
150
|
+
{"name": "SmartThings API", "description": "Samsung smart home", "category": "IoT", "authType": "oauth", "baseUrl": "https://developers.athom.com/api/"},
|
|
151
|
+
{"name": "Stack Lighting API", "description": "Responsive lighting", "category": "IoT", "authType": "apiKey", "baseUrl": "http://developers.stacklighting.com/"},
|
|
152
|
+
{"name": "Vinli API", "description": "Connected car apps", "category": "IoT", "authType": "oauth", "baseUrl": "https://dev.vin.li/"},
|
|
153
|
+
{"name": "Yeelight API", "description": "Smart LED control", "category": "IoT", "authType": "none", "baseUrl": "http://www.yeelight.com/en_US/developer"},
|
|
154
|
+
|
|
155
|
+
# MACHINE LEARNING
|
|
156
|
+
{"name": "Amazon ML API", "description": "AWS machine learning", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://aws.amazon.com/cn/documentation/machine-learning/"},
|
|
157
|
+
{"name": "BigML API", "description": "ML platform API", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://bigml.com/api"},
|
|
158
|
+
{"name": "Diffbot API", "description": "AI web extraction", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://www.diffbot.com/dev/docs/"},
|
|
159
|
+
{"name": "Google Cloud Prediction", "description": "Google ML API", "category": "AI/ML", "authType": "oauth", "baseUrl": "https://cloud.google.com/prediction/docs/"},
|
|
160
|
+
{"name": "IBM Watson", "description": "Watson AI services", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://developer.ibm.com/watson/"},
|
|
161
|
+
{"name": "Azure ML", "description": "Microsoft ML services", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://azure.microsoft.com/en-us/services/cognitive-services/"},
|
|
162
|
+
|
|
163
|
+
# MAPS
|
|
164
|
+
{"name": "Amap API", "description": "Chinese mapping service", "category": "Maps", "authType": "apiKey", "baseUrl": "http://lbs.amap.com/"},
|
|
165
|
+
{"name": "Baidu Map API", "description": "Baidu mapping service", "category": "Maps", "authType": "apiKey", "baseUrl": "http://lbsyun.baidu.com/index.php"},
|
|
166
|
+
{"name": "Bing Maps", "description": "Microsoft mapping", "category": "Maps", "authType": "apiKey", "baseUrl": "https://www.microsoft.com/maps/choose-your-bing-maps-API.aspx"},
|
|
167
|
+
{"name": "Google Maps API", "description": "Google mapping service", "category": "Maps", "authType": "apiKey", "baseUrl": "https://developers.google.com/maps/web-services/"},
|
|
168
|
+
{"name": "HERE Maps API", "description": "HERE mapping services", "category": "Maps", "authType": "apiKey", "baseUrl": "https://developer.here.com/develop/rest-apis"},
|
|
169
|
+
{"name": "Tencent Map API", "description": "Tencent mapping", "category": "Maps", "authType": "apiKey", "baseUrl": "http://lbs.qq.com/webservice_v1/index.html"},
|
|
170
|
+
|
|
171
|
+
# MESSAGING
|
|
172
|
+
{"name": "Cisco Spark API", "description": "Team collaboration", "category": "Messaging", "authType": "oauth", "baseUrl": "https://developer.ciscospark.com/"},
|
|
173
|
+
{"name": "DingTalk API", "description": "Business messaging", "category": "Messaging", "authType": "apiKey", "baseUrl": "https://open-doc.dingtalk.com/"},
|
|
174
|
+
{"name": "dondeEsta API", "description": "Family tracking", "category": "Messaging", "authType": "apiKey", "baseUrl": "http://docs.dondeesta.apiary.io/"},
|
|
175
|
+
{"name": "Fleep API", "description": "Team messenger", "category": "Messaging", "authType": "apiKey", "baseUrl": "https://fleep.io/fleepapi/"},
|
|
176
|
+
{"name": "GroupMe API", "description": "Group messaging", "category": "Messaging", "authType": "oauth", "baseUrl": "https://dev.groupme.com/docs/v3"},
|
|
177
|
+
{"name": "Indoona API", "description": "Messaging platform", "category": "Messaging", "authType": "apiKey", "baseUrl": "https://developer.indoona.com/"},
|
|
178
|
+
{"name": "LINE API", "description": "LINE messaging platform", "category": "Messaging", "authType": "oauth", "baseUrl": "https://developers.line.me/"},
|
|
179
|
+
{"name": "MessageBird API", "description": "SMS and voice API", "category": "Messaging", "authType": "apiKey", "baseUrl": "https://developers.messagebird.com/"},
|
|
180
|
+
{"name": "Slack API", "description": "Team collaboration API", "category": "Messaging", "authType": "oauth", "baseUrl": "https://api.slack.com/"},
|
|
181
|
+
{"name": "Telegram Bot API", "description": "Telegram messaging", "category": "Messaging", "authType": "apiKey", "baseUrl": "https://core.telegram.org/api"},
|
|
182
|
+
{"name": "Yo API", "description": "Simple notifications", "category": "Messaging", "authType": "apiKey", "baseUrl": "http://docs.justyo.co/"},
|
|
183
|
+
|
|
184
|
+
# MUSIC
|
|
185
|
+
{"name": "Deezer API", "description": "Music streaming", "category": "Music", "authType": "oauth", "baseUrl": "https://developers.deezer.com/"},
|
|
186
|
+
{"name": "Last.fm API", "description": "Music data and scrobbling", "category": "Music", "authType": "apiKey", "baseUrl": "http://www.last.fm/zh/api"},
|
|
187
|
+
{"name": "MusicGraph API", "description": "Music knowledge engine", "category": "Music", "authType": "apiKey", "baseUrl": "https://developer.musicgraph.com/"},
|
|
188
|
+
{"name": "Musixmatch API", "description": "Lyrics database", "category": "Music", "authType": "apiKey", "baseUrl": "https://developer.musixmatch.com/"},
|
|
189
|
+
{"name": "OneMusicAPI", "description": "Music metadata", "category": "Music", "authType": "apiKey", "baseUrl": "http://www.onemusicapi.com/"},
|
|
190
|
+
{"name": "SearchLy", "description": "Song lyrics search", "category": "Music", "authType": "none", "baseUrl": "https://github.com/AlbertSuarez/searchly"},
|
|
191
|
+
{"name": "SoundCloud API", "description": "Audio sharing platform", "category": "Music", "authType": "oauth", "baseUrl": "https://developers.soundcloud.com/"},
|
|
192
|
+
{"name": "Spotify Web API", "description": "Music streaming API", "category": "Music", "authType": "oauth", "baseUrl": "https://developer.spotify.com/web-api/"},
|
|
193
|
+
|
|
194
|
+
# NEWS
|
|
195
|
+
{"name": "Aztro API", "description": "Horoscope information", "category": "News", "authType": "none", "baseUrl": "https://aztro.sameerkumar.website"},
|
|
196
|
+
{"name": "BreweryDB", "description": "Brewery database", "category": "News", "authType": "apiKey", "baseUrl": "http://www.brewerydb.com/developers"},
|
|
197
|
+
{"name": "Diigo API", "description": "Bookmark manager", "category": "News", "authType": "apiKey", "baseUrl": "https://www.diigo.com/api_dev"},
|
|
198
|
+
{"name": "Feedly API", "description": "News aggregator", "category": "News", "authType": "oauth", "baseUrl": "https://developer.feedly.com/"},
|
|
199
|
+
{"name": "Genius API", "description": "Music and lyrics knowledge", "category": "News", "authType": "oauth", "baseUrl": "https://docs.genius.com/"},
|
|
200
|
+
{"name": "Goodreads API", "description": "Book recommendations", "category": "News", "authType": "apiKey", "baseUrl": "https://www.goodreads.com/api"},
|
|
201
|
+
{"name": "HackerNews API", "description": "Tech news and discussions", "category": "News", "authType": "none", "baseUrl": "https://github.com/HackerNews/API"},
|
|
202
|
+
{"name": "Inoreader API", "description": "RSS reader", "category": "News", "authType": "oauth", "baseUrl": "https://www.inoreader.com/developers/"},
|
|
203
|
+
{"name": "Instapaper API", "description": "Read later service", "category": "News", "authType": "oauth", "baseUrl": "https://www.instapaper.com/api"},
|
|
204
|
+
{"name": "Narro API", "description": "Audio articles", "category": "News", "authType": "apiKey", "baseUrl": "https://docs.narro.co/"},
|
|
205
|
+
{"name": "NewsBlur API", "description": "RSS reader", "category": "News", "authType": "apiKey", "baseUrl": "https://newsblur.com/api"},
|
|
206
|
+
{"name": "NPR API", "description": "NPR content access", "category": "News", "authType": "apiKey", "baseUrl": "http://www.npr.org/api/index"},
|
|
207
|
+
{"name": "Pinboard API", "description": "Bookmarking service", "category": "News", "authType": "apiKey", "baseUrl": "https://pinboard.in/api"},
|
|
208
|
+
{"name": "Pocket API", "description": "Save for later", "category": "News", "authType": "oauth", "baseUrl": "https://getpocket.com/developer/"},
|
|
209
|
+
{"name": "Product Hunt API", "description": "Product discovery", "category": "News", "authType": "oauth", "baseUrl": "https://api.producthunt.com/v1/docs"},
|
|
210
|
+
{"name": "NY Times API", "description": "NY Times content", "category": "News", "authType": "apiKey", "baseUrl": "https://developer.nytimes.com/"},
|
|
211
|
+
{"name": "USA Today API", "description": "USA Today content", "category": "News", "authType": "apiKey", "baseUrl": "https://developer.usatoday.com/docs/"},
|
|
212
|
+
|
|
213
|
+
# NOTES
|
|
214
|
+
{"name": "Evernote API", "description": "Note-taking platform", "category": "Productivity", "authType": "oauth", "baseUrl": "https://dev.evernote.com/doc/"},
|
|
215
|
+
{"name": "OneNote API", "description": "Microsoft notes", "category": "Productivity", "authType": "oauth", "baseUrl": "https://msdn.microsoft.com/en-us/office/office365/howto/onenote-supported-ops"},
|
|
216
|
+
{"name": "Youdao Note API", "description": "Chinese note service", "category": "Productivity", "authType": "apiKey", "baseUrl": "http://note.youdao.com/open/"},
|
|
217
|
+
|
|
218
|
+
# PAYMENT
|
|
219
|
+
{"name": "PayPal API", "description": "Payment processing", "category": "Payment", "authType": "oauth", "baseUrl": "https://developer.paypal.com/docs/api/"},
|
|
220
|
+
{"name": "Paymill API", "description": "Payment gateway", "category": "Payment", "authType": "apiKey", "baseUrl": "https://developers.paymill.com/index"},
|
|
221
|
+
{"name": "Paytm API", "description": "Indian payment gateway", "category": "Payment", "authType": "apiKey", "baseUrl": "https://paytm.com/business/payments/developers"},
|
|
222
|
+
{"name": "WePay API", "description": "Payment platform", "category": "Payment", "authType": "oauth", "baseUrl": "https://www.wepay.com/"},
|
|
223
|
+
{"name": "PhonePe API", "description": "Indian UPI payments", "category": "Payment", "authType": "apiKey", "baseUrl": "https://developer.phonepe.com/docs"},
|
|
224
|
+
|
|
225
|
+
# PHOTOGRAPHY
|
|
226
|
+
{"name": "500px API", "description": "Photography community", "category": "Photography", "authType": "oauth", "baseUrl": "https://github.com/500px/api-documentation"},
|
|
227
|
+
{"name": "Giphy API", "description": "GIF library", "category": "Photography", "authType": "apiKey", "baseUrl": "https://developers.giphy.com/docs/"},
|
|
228
|
+
{"name": "Imgur API", "description": "Image hosting", "category": "Photography", "authType": "oauth", "baseUrl": "https://api.imgur.com/"},
|
|
229
|
+
{"name": "Pixabay API", "description": "Free stock photos", "category": "Photography", "authType": "apiKey", "baseUrl": "https://pixabay.com/api/docs/"},
|
|
230
|
+
{"name": "Unsplash API", "description": "Free high-res photos", "category": "Photography", "authType": "apiKey", "baseUrl": "https://unsplash.com/documentation"},
|
|
231
|
+
{"name": "Unsplash Source", "description": "Random photo embeds", "category": "Photography", "authType": "none", "baseUrl": "https://source.unsplash.com/"},
|
|
232
|
+
|
|
233
|
+
# PLACES
|
|
234
|
+
{"name": "Yelp API", "description": "Local business reviews", "category": "Places", "authType": "apiKey", "baseUrl": "https://www.yelp.com/developers/documentation/v2/overview"},
|
|
235
|
+
{"name": "Zomato API", "description": "Restaurant database", "category": "Places", "authType": "apiKey", "baseUrl": "https://developers.zomato.com/api"},
|
|
236
|
+
|
|
237
|
+
# SOCIAL
|
|
238
|
+
{"name": "Disqus API", "description": "Comments platform", "category": "Social", "authType": "oauth", "baseUrl": "https://disqus.com/api/docs/"},
|
|
239
|
+
{"name": "Facebook API", "description": "Social networking", "category": "Social", "authType": "oauth", "baseUrl": "https://developers.facebook.com/docs/"},
|
|
240
|
+
{"name": "Flickr API", "description": "Photo sharing", "category": "Social", "authType": "apiKey", "baseUrl": "https://www.flickr.com/services/api/"},
|
|
241
|
+
{"name": "Foursquare API", "description": "Location-based social", "category": "Social", "authType": "oauth", "baseUrl": "https://developer.foursquare.com/"},
|
|
242
|
+
{"name": "Instagram API", "description": "Photo sharing social", "category": "Social", "authType": "oauth", "baseUrl": "https://www.instagram.com/developer/"},
|
|
243
|
+
{"name": "LinkedIn API", "description": "Professional network", "category": "Social", "authType": "oauth", "baseUrl": "https://developer.linkedin.com/"},
|
|
244
|
+
{"name": "Pinterest API", "description": "Visual discovery", "category": "Social", "authType": "oauth", "baseUrl": "https://developers.pinterest.com/"},
|
|
245
|
+
{"name": "Reddit API", "description": "Social news aggregation", "category": "Social", "authType": "oauth", "baseUrl": "https://www.reddit.com/dev/api/"},
|
|
246
|
+
{"name": "Tumblr API", "description": "Microblogging platform", "category": "Social", "authType": "oauth", "baseUrl": "https://www.tumblr.com/docs/en/api/v2"},
|
|
247
|
+
{"name": "Twitter API", "description": "Social media platform", "category": "Social", "authType": "oauth", "baseUrl": "https://dev.twitter.com/"},
|
|
248
|
+
{"name": "Weibo API", "description": "Chinese social media", "category": "Social", "authType": "oauth", "baseUrl": "http://open.weibo.com/wiki/API"},
|
|
249
|
+
|
|
250
|
+
# SHOPPING
|
|
251
|
+
{"name": "Amazon Developer", "description": "Amazon services API", "category": "Shopping", "authType": "oauth", "baseUrl": "https://developer.amazon.com/services-and-apis"},
|
|
252
|
+
{"name": "Best Buy API", "description": "Retail products", "category": "Shopping", "authType": "apiKey", "baseUrl": "https://developer.bestbuy.com/"},
|
|
253
|
+
{"name": "eBay API", "description": "Online marketplace", "category": "Shopping", "authType": "oauth", "baseUrl": "https://go.developer.ebay.com/"},
|
|
254
|
+
{"name": "Home Depot API", "description": "Home improvement retail", "category": "Shopping", "authType": "apiKey", "baseUrl": "https://developer.homedepot.com/"},
|
|
255
|
+
{"name": "Semantics3 API", "description": "Product data", "category": "Shopping", "authType": "apiKey", "baseUrl": "http://docs.semantics3.com/reference"},
|
|
256
|
+
{"name": "Slice API", "description": "Purchase data", "category": "Shopping", "authType": "apiKey", "baseUrl": "https://developer.slice.com/"},
|
|
257
|
+
|
|
258
|
+
# TEAMWORK
|
|
259
|
+
{"name": "Asana API", "description": "Project management", "category": "Productivity", "authType": "oauth", "baseUrl": "https://asana.com/guide/help/api/api"},
|
|
260
|
+
{"name": "Join.me API", "description": "Online meetings", "category": "Productivity", "authType": "oauth", "baseUrl": "https://developer.join.me/"},
|
|
261
|
+
{"name": "Teambition API", "description": "Project collaboration", "category": "Productivity", "authType": "oauth", "baseUrl": "https://www.teambition.com/developer/open-platform"},
|
|
262
|
+
{"name": "TeamSnap API", "description": "Team management", "category": "Productivity", "authType": "oauth", "baseUrl": "http://developer.teamsnap.com/"},
|
|
263
|
+
{"name": "Trello API", "description": "Kanban board", "category": "Productivity", "authType": "oauth", "baseUrl": "https://developers.trello.com/"},
|
|
264
|
+
{"name": "Worktile API", "description": "Project collaboration", "category": "Productivity", "authType": "apiKey", "baseUrl": "https://dev.worktile.com/document/overview"},
|
|
265
|
+
|
|
266
|
+
# TEXT ANALYSIS
|
|
267
|
+
{"name": "BosonNLP", "description": "Chinese NLP", "category": "AI/ML", "authType": "apiKey", "baseUrl": "http://docs.bosonnlp.com/"},
|
|
268
|
+
{"name": "Detect Language API", "description": "Language detection", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://rapidapi.com/BigLobster/api/language-identification-prediction"},
|
|
269
|
+
{"name": "Tencent NLP", "description": "Chinese NLP", "category": "AI/ML", "authType": "apiKey", "baseUrl": "http://nlp.qq.com/help.cgi"},
|
|
270
|
+
{"name": "Azure Text Analytics", "description": "Microsoft NLP", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/"},
|
|
271
|
+
{"name": "Watson NLU", "description": "IBM NLP", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://www.ibm.com/watson/developercloud/natural-language-understanding/api/v1/"},
|
|
272
|
+
|
|
273
|
+
# TO-DOS
|
|
274
|
+
{"name": "Beeminder API", "description": "Goal tracking", "category": "Productivity", "authType": "apiKey", "baseUrl": "https://www.beeminder.com/api"},
|
|
275
|
+
{"name": "FollowUp.cc API", "description": "Email follow-ups", "category": "Productivity", "authType": "apiKey", "baseUrl": "http://docs.followup.cc/"},
|
|
276
|
+
{"name": "Todoist API", "description": "Task management", "category": "Productivity", "authType": "oauth", "baseUrl": "https://developer.todoist.com/"},
|
|
277
|
+
{"name": "Toodledo API", "description": "Tasks and notes", "category": "Productivity", "authType": "apiKey", "baseUrl": "https://api.toodledo.com/3/"},
|
|
278
|
+
|
|
279
|
+
# TRANSLATION
|
|
280
|
+
{"name": "Baidu Translate", "description": "Chinese translation", "category": "Translation", "authType": "apiKey", "baseUrl": "http://api.fanyi.baidu.com/api/trans/product/index"},
|
|
281
|
+
{"name": "Google Translate", "description": "Machine translation", "category": "Translation", "authType": "apiKey", "baseUrl": "https://cloud.google.com/translate/docs/"},
|
|
282
|
+
{"name": "Microsoft Translator", "description": "Microsoft translation", "category": "Translation", "authType": "apiKey", "baseUrl": "https://www.microsoft.com/en-us/translator/translatorapi.aspx"},
|
|
283
|
+
{"name": "Oxford Dictionaries API", "description": "Dictionary and thesaurus", "category": "Translation", "authType": "apiKey", "baseUrl": "https://developer.oxforddictionaries.com/"},
|
|
284
|
+
{"name": "Yandex Translate", "description": "Russian translation", "category": "Translation", "authType": "apiKey", "baseUrl": "https://tech.yandex.com/translate/"},
|
|
285
|
+
|
|
286
|
+
# VIDEO
|
|
287
|
+
{"name": "Dailymotion API", "description": "Video hosting", "category": "Video", "authType": "oauth", "baseUrl": "https://developer.dailymotion.com/api"},
|
|
288
|
+
{"name": "Narrative API", "description": "Video clips", "category": "Video", "authType": "apiKey", "baseUrl": "http://open.getnarrative.com/"},
|
|
289
|
+
{"name": "Rotten Tomatoes API", "description": "Movie ratings", "category": "Video", "authType": "apiKey", "baseUrl": "https://developer.fandango.com/Rotten_Tomatoes"},
|
|
290
|
+
{"name": "TMDb API", "description": "Movie database", "category": "Video", "authType": "apiKey", "baseUrl": "https://developers.themoviedb.org"},
|
|
291
|
+
{"name": "TVmaze API", "description": "TV show database", "category": "Video", "authType": "none", "baseUrl": "https://www.tvmaze.com/api"},
|
|
292
|
+
{"name": "Vimeo API", "description": "Video hosting HD", "category": "Video", "authType": "oauth", "baseUrl": "https://developer.vimeo.com/"},
|
|
293
|
+
{"name": "YouTube API", "description": "Video platform", "category": "Video", "authType": "oauth", "baseUrl": "https://developers.google.com/youtube/documentation/"},
|
|
294
|
+
|
|
295
|
+
# VOICE ANALYSIS
|
|
296
|
+
{"name": "Baidu Yuyin", "description": "Chinese speech API", "category": "AI/ML", "authType": "apiKey", "baseUrl": "http://yuyin.baidu.com/docs"},
|
|
297
|
+
{"name": "Google Cloud Speech", "description": "Speech to text", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://cloud.google.com/speech/"},
|
|
298
|
+
|
|
299
|
+
# VISION
|
|
300
|
+
{"name": "CamScanner API", "description": "Document scanning", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://dev.camscanner.com/"},
|
|
301
|
+
{"name": "Clarifai API", "description": "Image recognition", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://clarifai.com/developer/guide/"},
|
|
302
|
+
{"name": "Google Cloud Vision", "description": "Image analysis", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://cloud.google.com/vision/"},
|
|
303
|
+
{"name": "Azure Computer Vision", "description": "Microsoft image AI", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://azure.microsoft.com/en-us/services/cognitive-services/computer-vision/"},
|
|
304
|
+
{"name": "Face++ API", "description": "Face recognition", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://console.faceplusplus.com/documents/5678948"},
|
|
305
|
+
{"name": "Watson Visual Recognition", "description": "IBM image AI", "category": "AI/ML", "authType": "apiKey", "baseUrl": "https://www.ibm.com/watson/developercloud/visual-recognition/api/v3/"},
|
|
306
|
+
|
|
307
|
+
# WEATHER
|
|
308
|
+
{"name": "AccuWeather API", "description": "Weather forecasts", "category": "Weather", "authType": "apiKey", "baseUrl": "http://apidev.accuweather.com/developers/"},
|
|
309
|
+
{"name": "Aeris Weather", "description": "Weather data API", "category": "Weather", "authType": "apiKey", "baseUrl": "http://www.aerisweather.com/develop/"},
|
|
310
|
+
{"name": "OpenWeatherMap", "description": "Weather data API", "category": "Weather", "authType": "apiKey", "baseUrl": "https://openweathermap.org/api"},
|
|
311
|
+
{"name": "Weather Underground", "description": "Weather data API", "category": "Weather", "authType": "apiKey", "baseUrl": "https://www.wunderground.com/weather/api/"},
|
|
312
|
+
{"name": "Weather Unlocked", "description": "Weather for advertising", "category": "Weather", "authType": "apiKey", "baseUrl": "https://developer.weatherunlocked.com/documentation"},
|
|
313
|
+
{"name": "Yandex Weather", "description": "Russian weather API", "category": "Weather", "authType": "apiKey", "baseUrl": "https://tech.yandex.com/weather/"},
|
|
314
|
+
{"name": "Yahoo Weather", "description": "Weather forecasts", "category": "Weather", "authType": "none", "baseUrl": "https://developer.yahoo.com/weather/"},
|
|
315
|
+
|
|
316
|
+
# MORE UNIQUE APIs
|
|
317
|
+
{"name": "iTunes Search API", "description": "Search iTunes content", "category": "Media", "authType": "none", "baseUrl": "https://affiliate.itunes.apple.com/resources/documentation/itunes-store-web-service-search-api/"},
|
|
318
|
+
{"name": "ProgrammableWeb", "description": "API directory", "category": "Development", "authType": "none", "baseUrl": "https://www.programmableweb.com/"},
|
|
319
|
+
{"name": "Yahoo Developer", "description": "Yahoo services API", "category": "Development", "authType": "oauth", "baseUrl": "https://developer.yahoo.com/everything.html"},
|
|
320
|
+
]
|
|
321
|
+
|
|
322
|
+
def get_current_count():
|
|
323
|
+
"""Get current API count from registry"""
|
|
324
|
+
registry_file = os.path.expanduser("~/Projects/apiclaw/src/registry/apis.json")
|
|
325
|
+
try:
|
|
326
|
+
with open(registry_file, 'r') as f:
|
|
327
|
+
registry = json.load(f)
|
|
328
|
+
return registry.get('count', len(registry.get('apis', [])))
|
|
329
|
+
except:
|
|
330
|
+
return 0
|
|
331
|
+
|
|
332
|
+
def add_apis_to_registry(apis):
|
|
333
|
+
"""Add APIs to the registry"""
|
|
334
|
+
registry_file = os.path.expanduser("~/Projects/apiclaw/src/registry/apis.json")
|
|
335
|
+
|
|
336
|
+
try:
|
|
337
|
+
with open(registry_file, 'r') as f:
|
|
338
|
+
registry = json.load(f)
|
|
339
|
+
except:
|
|
340
|
+
registry = {"version": "3.2.3", "source": "APIClaw aggregated registry", "apis": [], "count": 0}
|
|
341
|
+
|
|
342
|
+
existing_names = {api.get('name', '').lower() for api in registry.get('apis', [])}
|
|
343
|
+
existing_ids = {api.get('id', '').lower() for api in registry.get('apis', [])}
|
|
344
|
+
|
|
345
|
+
added = 0
|
|
346
|
+
for api in apis:
|
|
347
|
+
api_id = api['name'].lower().replace(' ', '-').replace('_', '-')
|
|
348
|
+
api_id = ''.join(c for c in api_id if c.isalnum() or c == '-')
|
|
349
|
+
|
|
350
|
+
name_lower = api['name'].lower()
|
|
351
|
+
|
|
352
|
+
if name_lower not in existing_names and api_id not in existing_ids:
|
|
353
|
+
new_api = {
|
|
354
|
+
"id": api_id,
|
|
355
|
+
"name": api['name'],
|
|
356
|
+
"description": api['description'],
|
|
357
|
+
"category": api['category'],
|
|
358
|
+
"auth": api.get('authType', 'None'),
|
|
359
|
+
"https": True,
|
|
360
|
+
"cors": "unknown",
|
|
361
|
+
"link": api.get('baseUrl', ''),
|
|
362
|
+
"pricing": "unknown",
|
|
363
|
+
"keywords": []
|
|
364
|
+
}
|
|
365
|
+
registry['apis'].append(new_api)
|
|
366
|
+
existing_names.add(name_lower)
|
|
367
|
+
existing_ids.add(api_id)
|
|
368
|
+
added += 1
|
|
369
|
+
|
|
370
|
+
registry['lastUpdated'] = datetime.now().isoformat()
|
|
371
|
+
registry['count'] = len(registry['apis'])
|
|
372
|
+
|
|
373
|
+
with open(registry_file, 'w') as f:
|
|
374
|
+
json.dump(registry, f, indent=2)
|
|
375
|
+
|
|
376
|
+
return added, len(registry['apis'])
|
|
377
|
+
|
|
378
|
+
if __name__ == "__main__":
|
|
379
|
+
before = get_current_count()
|
|
380
|
+
print(f"🦞 APIClaw Night Expansion - 2026-02-24 03:00 Batch 2")
|
|
381
|
+
print(f"Before: {before} APIs")
|
|
382
|
+
|
|
383
|
+
added, total = add_apis_to_registry(NEW_APIS_BATCH2)
|
|
384
|
+
|
|
385
|
+
print(f"Added: {added} new APIs")
|
|
386
|
+
print(f"Total: {total} APIs")
|
|
387
|
+
print(f"✅ Done!")
|