v2.0.0
Digital Collections API V2
What's Changed
- 3060 code organization by @kdid in #1
- Add search function and fix transformer logic by @bmquinn in #3
- Initial pass at pre-filtering search queries by @kdid in #4
- Support multiple targets in search route by @kdid in #5
- Update to aws-sdk v3 and create first mocked tests by @mbklein in #2
- Adds opensearch tests and fixtures for search() by @bmquinn in #6
- Add a test example for calling getWork() on a missing document returning a 404 by @bmquinn in #7
- Use an API Gateway v2 HTTP API instead of a v1 REST API by @mbklein in #8
- Enable CORS on API by @kdid in #9
- Factor model checking out of handler and add a bunch of tests by @mbklein in #10
- Add pagination to search by @mbklein in #11
- Add integration tests and improve mocha config by @mbklein in #12
- Create API custom domain and mappings by @mbklein in #13
- Normalize headers to lowercase in middleware by @mbklein in #14
- Add /works/{id}/thumbnail route by @mbklein in #15
- Add size and aspect parameters to thumbnail request by @mbklein in #16
- Adds a GET '/collections' endpoint that paginates results by @bmquinn in #17
- Add documentation by @mbklein in #18
- IIIF Collection search handler by @kdid in #19
- Add root redirect to /docs/v2 by @mbklein in #20
- Return correct content type header for JSON responses by @mbklein in #21
- Default to full aspect thumbnail by @mbklein in #22
- Implement /collections/{id}/thumbnail route by @mbklein in #23
- Remove searchToken from /collections route by @mbklein in #24
- Allow paginator to take additional params for the base url by @mbklein in #25
- Implement API auth route handlers, tests, and configuration by @bmquinn in #26
- Shared links API implementation by @kdid in #27
- Add automatic deploy on push to deployable branch by @mbklein in #28
- Return a collection as IIIF collection by @kdid in #29
- Allow certain IPs to receive private results by @mbklein in #30
- Adds getSimilar handler function by @bmquinn in #31
- Fix template & add template validation to CI build by @mbklein in #32
- Ensure event object has expected members by @mbklein in #33
- Fix 500 error in GET /collections by @mbklein in #34
- Fix errors in OpenAPI spec document by @mbklein in #35
- Add default charset if missing from content-type header by @mbklein in #36
- Reimplement shared links handler by @bmquinn in #38
- IIIF Manifest for Works endpoint in DC API V2 by @kdid in #37
- Adds thumbnail to IIIF collection if it's an RDC Collection by @kdid in #39
- Adds /auth/logout handler by @bmquinn in #40
- Fix shared links allow published logic by @kdid in #41
- Workaround for NUSSO missing directory attribute issue by @mbklein in #42
- Make stubbed user match shape of actual user by @mbklein in #43
- Add support for the 'sort' query string parameter in GET searches by @bmquinn in #44
- Don't return unpublished file sets by @kdid in #45
- Add file set authorization routes by @kdid in #46
- Make sure both types of token (directory / stub) include netid by @mbklein in #47
- Net ID file set authorization for reading room by @kdid in #48
- Prefer the search context's size over the default by @mbklein in #50
- Update HTTPS documentation by @mbklein in #51
- Initial deploy to production by @mbklein in #52
- Manually expire the redirectUrl cookie in the get-auth-callback handler function by @bmquinn in #54
- Implements the OAI-PMH protocol at the '/oai' endpoint. by @bmquinn in #53
- Include CORS headers in all thumbnail responses (including errors) by @mbklein in #55
- Refactor JWT auth for reading room, shared links, thumbnails and new data shape by @kdid in #49
- Don't serialize anonymous tokens by @mbklein in #56
- Consistently use ApiSecret; remote ApiTokenSecret by @mbklein in #57
- Add OAI-PMH docs to Swagger by @mbklein in #58
- Explicitly list acceptable request headers in CORS response by @mbklein in #60
- Update README with mkdocs/OpenAPI instructions by @mbklein in #59
- Deploy to prod by @mbklein in #61
- Make the API/spec slightly more client-friendly by @mbklein in #62
- Provide better error message from API by @kdid in #64
- Deploy staging to prod by @kdid in #66
- Move try...catch inside anonymous function where it should be by @mbklein in #65
- Add support for 'for' and 'until' in OAI-PHM ListRecords and ListIdentifiers verbs by @bmquinn in #63
- Increase thumbnail route timeout by @kdid in #67
- Add support for sets in ListSets, ListRecords, and GetRecords OAI requests by @bmquinn in #68
- Prepare for new production domain by @mbklein in #70
- Deploy to production by @mbklein in #71
- Add support for the set parameter in ListIdentifiers and ListRecords by @bmquinn in #72
- Updates OAI-PMH documentation to include 'ListSets', 'from' and 'until' parameters by @bmquinn in #69
- Deploy staging to production by @kdid in #73
- Update subject value to
label
. by @mathewjordan in #74 - Reduce the OAI search scroll size to 250 by @bmquinn in #75
- Set OAI datestamp header using modified_date by @bmquinn in #78
- Add Rights Statement to metadata by @adamjarling in #77
- Add requireSource global to test helpers to make test imports less ugly by @mbklein in #76
- Use the x-client-ip header for file set auth to allow proxying by @mbklein in #80
- insert log to debug-reading-room-issues by @kdid in #81
- More temporary logging by @kdid in #82
- Thumbnail requests account for reading room in Opensearch query by @kdid in #83
- Add Honeybadger configuration and notifications by @mbklein in #79
- Add/configure eslint and husky by @mbklein in #84
- Redirect from /collections/ to /collections by @mbklein in #85
- Use the full baseUrl when redirecting by @mbklein in #86
- Call nock.cleanAll() between tests to clear lingering interceptors by @mbklein in #88
- Deploy staging to production by @kdid in #89
- Ensure tests can't corrupt the environment by @mbklein in #90
- Private collections should be visible from reading room by @kdid in #87
- Fix test dependency issues using random seeding by @mbklein in #91
- Major documentation overhaul: new layouts, pages, content, etc. by @bmquinn in #92
- Pull info out of package.json to populate info block by @mbklein in #94
- Allow HEAD requests for most GET routes by @mbklein in #93
- Initial OpenApi schemas for Work, Collection, and FileSets by @kdid in #95
- Depluralize folder name and number by @kdid in #96
- Also change folder name number in required list by @kdid in #97
- Deploy staging to production by @kdid in #98
- Convert from empty object to null in OpenApi spec by @kdid in #99
- Makes collection representative image work_id nullable by @kdid in #100
- Refactor getThumbnail endpoint to support new indexed collection representative_image data shape by @bmquinn in #101
- Deploy Staging to Production by @kdid in #102
- Remove broken link, update OpenApi description by @bmquinn in #103
- Update version to 2.0.0 by @mbklein in #104
- Deploy v2.0.0 to production by @bmquinn in #105
Contributors
- @kdid made their first contribution in #1
- @bmquinn made their first contribution in #3
- @mbklein made their first contribution in #2
- @mathewjordan made their first contribution in #74
- @adamjarling made their first contribution in #77
Full Changelog: https://github.com/nulib/dc-api-v2/commits/v2.0.0