{"id":19640647,"url":"https://github.com/daniel-km/omeka-s-module-guestapi","last_synced_at":"2026-05-12T21:06:50.000Z","repository":{"id":148008304,"uuid":"227066048","full_name":"Daniel-KM/Omeka-S-module-GuestApi","owner":"Daniel-KM","description":"Module for Omeka S to manage login, logout, and registering via an api for third party applications.","archived":false,"fork":false,"pushed_at":"2024-02-15T11:35:58.000Z","size":155,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-09T18:58:01.640Z","etag":null,"topics":["api","authentication","omeka-s","omeka-s-module"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Daniel-KM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-12-10T08:25:42.000Z","updated_at":"2021-12-17T17:10:34.000Z","dependencies_parsed_at":"2023-05-28T05:30:19.550Z","dependency_job_id":null,"html_url":"https://github.com/Daniel-KM/Omeka-S-module-GuestApi","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-GuestApi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-GuestApi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-GuestApi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-GuestApi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Daniel-KM","download_url":"https://codeload.github.com/Daniel-KM/Omeka-S-module-GuestApi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240947648,"owners_count":19883030,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","authentication","omeka-s","omeka-s-module"],"created_at":"2024-11-11T14:06:21.561Z","updated_at":"2026-05-12T21:06:44.964Z","avatar_url":"https://github.com/Daniel-KM.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"Guest Api (module for Omeka S)\n==============================\n\n\u003e ***IMPORTANT***: This module is deprecated and its features were integrated\n\u003e in the module [Guest] since version 3.4.21 and it won’t be updated any more.\n\u003e The upgrade from it is automatic.\n\n\u003e __New versions of this module and support for Omeka S version 3.0 and above\n\u003e are available on [GitLab], which seems to respect users and privacy better\n\u003e than the previous repository.__\n\n[Guest Api] is a module for [Omeka S] that allows to manage the actions of the\nguest or any other user, provided by the module [Guest], by the module [Guest Role]\nor any other module, by the api. This api allows in particular to register, to\nupdate the password, or to update its own profile and settings. So it does not\nreplace the standard api (/api/users/#id), but adds some checks and features.\n\n\nInstallation\n------------\n\nInstall module [Guest] first.\n\nUncompress files in the module directory and rename module folder `GuestApi`.\nThen install it like any other Omeka module and follow the config instructions.\n\nSee general end user documentation for [Installing a module].\n\n\nUsage\n-----\n\nFirst, specify the roles that can login by api in the config form of the module.\nNote that to allow any roles to login, in particular global admins, increase the\naccess points to check for security.\n\nThe path `/api/users/me` is used for the user that is currently authenticated\nthrough the credentials arguments. This is a shortcut to `/api/users/{id}` for\ncommon actions, in particular to get the current user own data.\n\nOther http methods are available to update the profile with the same path. For\nexample to update (http method `PATCH`/`POST`):\n- email: /api/users/me?email=elisabeth.ii@example.com\n- name: /api/users/me?name=elisabeth_ii\n- password: /api/users/me?password=xxx\u0026new_password=yyy\n\nIn all other cases, you should use the standard api (`/api/users/#id`).\n\nFour specific paths are added:\n\n- /api/login\n  The user can log in with a post to `/api/login` with data `{\"email\":\"elisabeth.ii@example.com\",\"password\"=\"\"***\"}`.\n  In return, a session token will be returned. All other actions can be done\n  with them: `/api/users/me?key_identity=xxx\u0026key_credential=yyy`.\n\n  If the option to create a local session cookie is set, the user will be\n  authenticated locally too, so it allows to log in from a third party webservice,\n  for example if a user logs in inside a Drupal site, he can log in the Omeka\n  site simultaneously. This third party login should be done via an ajax call\n  because the session cookie should be set in the browser, not in the server, so\n  you can’t simply call the endpoint from the third party server. In you third\n  party ajax, the header `Origin` should be filled in the request; this is\n  generally the case with common js libraries.\n\n  When a local session cookie is wanted, it is recommended to add a list of\n  sites that have the right to log in the config for security reasons.\n\n- /api/logout\n\n- /api/session-token\n  A session token can be created for api access. It is reset each time the user\n  login or logout. The api keys have no limited life in Omeka.\n\n- /api/register\n  A visitor can register too, if allowed in the config. Register requires an\n  email. Other params are optional: `username`, `password`, and `site` (id or\n  slug, that may be required via the config).\n\n**Warning**: The paths above may be changed in a future version to be more restful.\n\n\nTODO\n----\n\n- [ ] Normalize all api routes and json for rest api (register, login, logout, session-token).\n\n\nWarning\n-------\n\nUse it at your own risk.\n\nIt’s always recommended to backup your files and your databases and to check\nyour archives regularly so you can roll back if needed.\n\n\nTroubleshooting\n---------------\n\nSee online issues on the [module issues] page.\n\n\nLicense\n-------\n\nThis plugin is published under the [CeCILL v2.1] license, compatible with\n[GNU/GPL] and approved by [FSF] and [OSI].\n\nIn consideration of access to the source code and the rights to copy, modify and\nredistribute granted by the license, users are provided only with a limited\nwarranty and the software’s author, the holder of the economic rights, and the\nsuccessive licensors only have limited liability.\n\nIn this respect, the risks associated with loading, using, modifying and/or\ndeveloping or reproducing the software by the user are brought to the user’s\nattention, given its Free Software status, which may make it complicated to use,\nwith the result that its use is reserved for developers and experienced\nprofessionals having in-depth computer knowledge. Users are therefore encouraged\nto load and test the suitability of the software as regards their requirements\nin conditions enabling the security of their systems and/or data to be ensured\nand, more generally, to use and operate it in the same conditions of security.\nThis Agreement may be freely reproduced and published, provided it is not\naltered, and that no provisions are either added or removed herefrom.\n\n\nCopyright\n---------\n\n* Copyright Daniel Berthereau, 2019-2024 (see [Daniel-KM] on GitLab)\n\n\n[Guest Api]: https://gitlab.com/Daniel-KM/Omeka-S-module-GuestApi\n[Guest]: https://gitlab.com/Daniel-KM/Omeka-S-module-Guest\n[Guest Role]: https://github.com/biblibre/omeka-s-module-GuestRole\n[Omeka S]: https://www.omeka.org/s\n[GitLab]: https://gitlab.com/Daniel-KM/Omeka-S-module-GuestApi\n[Installing a module]: https://omeka.org/s/docs/user-manual/modules/#installing-modules\n[module issues]: https://gitlab.com/Daniel-KM/Omeka-S-module-GuestApi/-/issues\n[CeCILL v2.1]: https://www.cecill.info/licences/Licence_CeCILL_V2.1-en.html\n[GNU/GPL]: https://www.gnu.org/licenses/gpl-3.0.html\n[FSF]: https://www.fsf.org\n[OSI]: http://opensource.org\n[GitLab]: https://gitlab.com/Daniel-KM\n[Daniel-KM]: https://gitlab.com/Daniel-KM \"Daniel Berthereau\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel-km%2Fomeka-s-module-guestapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaniel-km%2Fomeka-s-module-guestapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel-km%2Fomeka-s-module-guestapi/lists"}