IAKit covers a small slice of archive.org's API surface right now. The developers portal documents a lot more. This is a tracking issue for working through the rest of it.
Already here (read-only, no auth)
- Item Metadata read,
/metadata/{id} (itemDetail)
- Advanced Search,
/advancedsearch.php (search)
- Reviews, parsed off the metadata response (
Review model)
- Download and item-image URL building (
/download/..., /services/img/...)
Read APIs still to add (no auth, fit the current read-only design)
Write APIs (need S3 keys, so a bigger lift)
These all depend on the auth layer in #36 (consume injected S3 keys, optional xauthn login helper), so they're a natural phase 2.
Not applicable to a Swift client
Here for completeness so we don't go looking for them: the ia command-line tool, the Python library, and the Bots/LLMs automated-access guidelines.
Suggested order: do the read APIs first since they drop into the existing unauthenticated design. Hold the write APIs until the auth layer (#36) lands.
IAKit covers a small slice of archive.org's API surface right now. The developers portal documents a lot more. This is a tracking issue for working through the rest of it.
Already here (read-only, no auth)
/metadata/{id}(itemDetail)/advancedsearch.php(search)Reviewmodel)/download/...,/services/img/...)Read APIs still to add (no auth, fit the current read-only design)
/services/search/v1/scrape. Full result-set enumeration past the 10k search ceiling. Already tracked in Add Scrape API support for reading past the 10,000-result search ceiling #33./services/(image variants, find-file, etc.).Write APIs (need S3 keys, so a bigger lift)
These all depend on the auth layer in #36 (consume injected S3 keys, optional xauthn login helper), so they're a natural phase 2.
s3.us.archive.org).Not applicable to a Swift client
Here for completeness so we don't go looking for them: the
iacommand-line tool, the Python library, and the Bots/LLMs automated-access guidelines.Suggested order: do the read APIs first since they drop into the existing unauthenticated design. Hold the write APIs until the auth layer (#36) lands.