summaryrefslogtreecommitdiffstats
path: root/rust/fatcat-openapi/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'rust/fatcat-openapi/README.md')
-rw-r--r--rust/fatcat-openapi/README.md25
1 files changed, 13 insertions, 12 deletions
diff --git a/rust/fatcat-openapi/README.md b/rust/fatcat-openapi/README.md
index 9565e2c7..d4cd91d1 100644
--- a/rust/fatcat-openapi/README.md
+++ b/rust/fatcat-openapi/README.md
@@ -1,6 +1,6 @@
# Rust API for fatcat
-A scalable, versioned, API-oriented catalog of bibliographic entities and file metadata
+Fatcat is a scalable, versioned, API-oriented catalog of bibliographic entities and file metadata. <!-- STARTLONGDESCRIPTION --> These API reference documents, along with client software libraries, are generated automatically from an OpenAPI 2.0 (\"Swagger\") definition file. ## Introduction A higher-level introduction to the API, as well as a description of the fatcat data model, are available in [\"The Fatcat Guide\"](https://guide.fatcat.wiki/). The guide also includes a [Cookbook](https://guide.fatcat.wiki/cookbook.html) section demonstrating end-to-end tasks like creating entities as part of editgroups, or safely merging duplicate entities. ### Expectations and Best Practices A test/staging QA API instance of fatcat is available at <https://api.qa.fatcat.wiki/v0>. The database backing this instance is separate from the production interface, and is periodically rebuilt from snapshots of the full production database, meaning that edits on the QA server will *NOT* persist, and that semantics like the changelog index monotonically increasing *MAY* be broken. Developers are expexcted to test their scripts and tools against the QA instance before running against production. Fatcat is made available as a gratis (no cost) and libre (freedom preserving) service to the public, with limited funding and resources. We welcome new and unforseen uses and contributions, but may need to impose restrictions (like rate-limits) to keep the service functional for other users, and in extreme cases reserve the option to block accounts and IP ranges if necessary to keep the service operational. The Internet Archive owns and operates it's own server equipment and data centers, and operations are optimized for low-cost, not high-availability. Users and partners should expect some downtime on the fatcat API, on the order of hours a month. Periodic metadata exports are available for batch processing, and database snapshots can be used to create locally-hosted mirrors of the service for more intensive and reliable querying. ### Other Nitty Gritties Cross-origin requests are allowed for the API service, to enable third parties to bulid in-browser applications. A metadata search service is available at <https://search.fatcat.wiki> (and <https://search.qa.fatcat.wiki>). The API is currently the raw elasticsearch API, with only GET (read) requests allowed. This public service is experimental and may be removed or limited in the future. ## Authentication The API allows basic read-only \"GET\" HTTP requests with no authentication. Proposing changes to the metadata, or other mutating requests (\"PUT\", \"POST\", \"DELETE\") all require authentication, and some operations require additional account permissions. End-user account creation and login happens through the web interface. From a logged-in editor profile page, you can generate a API token. Tokens are \"macaroons\", similar to JWT tokens, and are used for all API authentication. The web interface includes macaroons in browser cookies and passes them through to the API to authenticate editor actions. <!-- ReDoc-Inject: <security-definitions> --> <!-- ENDLONGDESCRIPTION -->
## Overview
This client/server was generated by the [swagger-codegen]
@@ -13,7 +13,8 @@ To see how to make this your own, look here:
[README](https://github.com/swagger-api/swagger-codegen/blob/master/README.md)
- API version: 0.3.0
-- Build date: 2019-09-06T02:00:55.433Z
+- Build date: 2019-09-13T18:30:17.409Z
+For more information, please visit [https://fatcat.wiki](https://fatcat.wiki)
This autogenerated project defines an API crate `fatcat` which contains:
* An `Api` trait defining the API in Rust.
@@ -56,6 +57,10 @@ cargo run --example server
To run a client, follow one of the following simple steps:
```
+cargo run --example client AuthCheck
+cargo run --example client AuthOidc
+cargo run --example client GetChangelog
+cargo run --example client GetChangelogEntry
cargo run --example client CreateContainer
cargo run --example client CreateContainerAutoBatch
cargo run --example client DeleteContainer
@@ -79,21 +84,17 @@ cargo run --example client GetCreatorReleases
cargo run --example client GetCreatorRevision
cargo run --example client LookupCreator
cargo run --example client UpdateCreator
-cargo run --example client AuthCheck
-cargo run --example client AuthOidc
-cargo run --example client GetEditgroupsReviewable
-cargo run --example client GetEditor
-cargo run --example client GetEditorEditgroups
-cargo run --example client UpdateEditgroup
-cargo run --example client UpdateEditor
cargo run --example client AcceptEditgroup
cargo run --example client CreateEditgroup
cargo run --example client CreateEditgroupAnnotation
-cargo run --example client GetChangelog
-cargo run --example client GetChangelogEntry
cargo run --example client GetEditgroup
cargo run --example client GetEditgroupAnnotations
+cargo run --example client GetEditgroupsReviewable
+cargo run --example client UpdateEditgroup
+cargo run --example client GetEditor
cargo run --example client GetEditorAnnotations
+cargo run --example client GetEditorEditgroups
+cargo run --example client UpdateEditor
cargo run --example client CreateFile
cargo run --example client CreateFileAutoBatch
cargo run --example client DeleteFile
@@ -117,7 +118,6 @@ cargo run --example client GetFilesetRevision
cargo run --example client UpdateFileset
cargo run --example client CreateRelease
cargo run --example client CreateReleaseAutoBatch
-cargo run --example client CreateWork
cargo run --example client DeleteRelease
cargo run --example client DeleteReleaseEdit
cargo run --example client GetRelease
@@ -140,6 +140,7 @@ cargo run --example client GetWebcaptureHistory
cargo run --example client GetWebcaptureRedirects
cargo run --example client GetWebcaptureRevision
cargo run --example client UpdateWebcapture
+cargo run --example client CreateWork
cargo run --example client CreateWorkAutoBatch
cargo run --example client DeleteWork
cargo run --example client DeleteWorkEdit