{"id":25320606,"url":"https://github.com/psu-libraries/psul_rmd_drupal_integration","last_synced_at":"2026-06-20T13:31:28.045Z","repository":{"id":276998792,"uuid":"920095437","full_name":"psu-libraries/psul_rmd_drupal_integration","owner":"psu-libraries","description":"Integrate a Drupal site with the PSU researcher metadata application","archived":false,"fork":false,"pushed_at":"2025-12-22T17:22:36.000Z","size":73,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-12-24T06:24:26.928Z","etag":null,"topics":["drupal","module"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/psu-libraries.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-21T14:59:41.000Z","updated_at":"2025-12-15T15:18:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"bbd42013-3e94-4a7c-a14e-5b52a2d649df","html_url":"https://github.com/psu-libraries/psul_rmd_drupal_integration","commit_stats":null,"previous_names":["psu-libraries/psul_rmd_drupal_integration"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/psu-libraries/psul_rmd_drupal_integration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fpsul_rmd_drupal_integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fpsul_rmd_drupal_integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fpsul_rmd_drupal_integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fpsul_rmd_drupal_integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/psu-libraries","download_url":"https://codeload.github.com/psu-libraries/psul_rmd_drupal_integration/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fpsul_rmd_drupal_integration/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34572424,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-20T02:00:06.407Z","response_time":98,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["drupal","module"],"created_at":"2025-02-13T21:51:48.088Z","updated_at":"2026-06-20T13:31:28.029Z","avatar_url":"https://github.com/psu-libraries.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PSU Libraries Researcher Metadata Database (RMD) Integration\n\nIntegrate a Drupal site with the PSU Libraries [Researcher Metadata Database](https://metadata.libraries.psu.edu/) (RMD). The intent of this module is to allow data to be pulled from the RMD API and expose that data to Drupal.\n\nCurrently, only the User profile API endpoint has been implemented.  Other endpoints will require an API key to use.\n\n## Setup\n\nUse the following steps to add an enable the module.  We will make the module public and register it in packagist at a later date.\n\n\n```bash\ncomposer config repositories.psul_rmd_drupal_integration github https://github.com/psu-libraries/psul_rmd_drupal_integration;\ncomposer require psul-libraries/psul_rmd_drupal_integration`;\ndrush en psul_rmd_drupal_integration;\n```\n\n### Configuration\n\nGo to **Configuration \u003e Web Services \u003e PSU Libraries: RMD Settings** to configure the module.\n\n- **API URL**: The base URL for API requests.  You should not need to use this.\n- **API Key**: The API Key is not required for Profile data but may be required to pull in future data.\n- **Cache TTL**: Set how long the RMD Data should be cached (in seconds)\n- **Content Settings**: The RMD data can be exposed as Extra Fields on nodes.  This will allow the data to be placed using Display settings or layout builder.\n\n## Usage\n\n### User Profile Data\nThe user profile API endpoint does not require an API key.\n\n```php\n$username = 'hna2';\n\n// Fetch user publications using the RmdDataFetcher service.\n$rmd_data_fetcher = \\Drupal::service('psul_rmd_drupal_integration.fetcher');\n$publications = $rmd_data_fetcher-\u003egetProfilePublications($username);\n\n// Get All data unformatted.\n$rmd_data = $rmd_data_fetcher-\u003egetProfileData($username);\n\n// Get specific attribute.\n$orcid_url = $rmd_data_fetcher-\u003egetProfileData($username, 'orcid_identifier');\n$bio = $rmd_data_fetcher-\u003egetProfileData($username, 'bio');\n```\n\n### Data Caching\nThis modules use the Permanent Cache Bin module aggressively cache the data\nfrom RMD.\n\nYou can clear the RMD cached data a couple of ways.  *Note:* The rmd_data cache will be cleared\nfor individual nodes upon save.\n\n**Drush**\n\n```bash\ndrush pcbf rmd_data\n```\n**UI**\n\nGo to `/admin/config/development/performance` and click the \"Clear permament cache for rmd_data\" button.\n\n**Programmatically**\n\n```php\n\\Drupal::service('cache.rmd_data')-\u003edeleteAllPermanent();\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsu-libraries%2Fpsul_rmd_drupal_integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpsu-libraries%2Fpsul_rmd_drupal_integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsu-libraries%2Fpsul_rmd_drupal_integration/lists"}