CINXE.COM
Overview - EUDAT Documentation
<!doctype html> <html lang="en" class="no-js"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <link rel="canonical" href="https://docs.eudat.eu/b2share/fordevelopers/"> <link rel="prev" href="../httpapi/"> <link rel="next" href="../foradministrators/"> <link rel="icon" href="../../assets/images/favicon.png"> <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.41"> <title>Overview - EUDAT Documentation</title> <link rel="stylesheet" href="../../assets/stylesheets/main.0253249f.min.css"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback"> <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style> <link rel="stylesheet" href="../../config/extra.css"> <script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script> </head> <body dir="ltr"> <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off"> <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off"> <label class="md-overlay" for="__drawer"></label> <div data-md-component="skip"> <a href="#for-developers" class="md-skip"> Skip to content </a> </div> <div data-md-component="announce"> </div> <header class="md-header" data-md-component="header"> <nav class="md-header__inner md-grid" aria-label="Header"> <a href="../.." title="EUDAT Documentation" class="md-header__button md-logo" aria-label="EUDAT Documentation" data-md-component="logo"> <img src="../../images/EUDAT_Partial_White.png" alt="logo"> </a> <label class="md-header__button md-icon" for="__drawer"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg> </label> <div class="md-header__title" data-md-component="header-title"> <div class="md-header__ellipsis"> <div class="md-header__topic"> <span class="md-ellipsis"> EUDAT Documentation </span> </div> <div class="md-header__topic" data-md-component="header-topic"> <span class="md-ellipsis"> Overview </span> </div> </div> </div> <script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script> <label class="md-header__button md-icon" for="__search"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg> </label> <div class="md-search" data-md-component="search" role="dialog"> <label class="md-search__overlay" for="__search"></label> <div class="md-search__inner" role="search"> <form class="md-search__form" name="search"> <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required> <label class="md-search__icon md-icon" for="__search"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg> </label> <nav class="md-search__options" aria-label="Search"> <button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg> </button> </nav> <div class="md-search__suggest" data-md-component="search-suggest"></div> </form> <div class="md-search__output"> <div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix> <div class="md-search-result" data-md-component="search-result"> <div class="md-search-result__meta"> Initializing search </div> <ol class="md-search-result__list" role="presentation"></ol> </div> </div> </div> </div> </div> </nav> </header> <div class="md-container" data-md-component="container"> <nav class="md-tabs" aria-label="Tabs" data-md-component="tabs"> <div class="md-grid"> <ul class="md-tabs__list"> <li class="md-tabs__item"> <a href="../.." class="md-tabs__link"> Documentation </a> </li> <li class="md-tabs__item"> <a href="../../b2access/" class="md-tabs__link"> B2ACCESS </a> </li> <li class="md-tabs__item"> <a href="../../b2drop/" class="md-tabs__link"> B2DROP </a> </li> <li class="md-tabs__item"> <a href="../../b2find/" class="md-tabs__link"> B2FIND </a> </li> <li class="md-tabs__item"> <a href="../../b2handle/" class="md-tabs__link"> B2HANDLE </a> </li> <li class="md-tabs__item"> <a href="../../b2inst/" class="md-tabs__link"> B2INST </a> </li> <li class="md-tabs__item"> <a href="../../b2safe/" class="md-tabs__link"> B2SAFE </a> </li> <li class="md-tabs__item md-tabs__item--active"> <a href="../overview/" class="md-tabs__link"> B2SHARE </a> </li> <li class="md-tabs__item"> <a href="../../datacite/" class="md-tabs__link"> DataCite </a> </li> <li class="md-tabs__item"> <a href="https://eudat.eu" class="md-tabs__link"> EUDAT website </a> </li> <li class="md-tabs__item"> <a href="https://eudat.eu/contact-support-request" class="md-tabs__link"> Feedback + Support </a> </li> </ul> </div> </nav> <main class="md-main" data-md-component="main"> <div class="md-main__inner md-grid"> <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" > <div class="md-sidebar__scrollwrap"> <div class="md-sidebar__inner"> <nav class="md-nav md-nav--primary md-nav--lifted md-nav--integrated" aria-label="Navigation" data-md-level="0"> <label class="md-nav__title" for="__drawer"> <a href="../.." title="EUDAT Documentation" class="md-nav__button md-logo" aria-label="EUDAT Documentation" data-md-component="logo"> <img src="../../images/EUDAT_Partial_White.png" alt="logo"> </a> EUDAT Documentation </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../.." class="md-nav__link"> <span class="md-ellipsis"> Documentation </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" > <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0"> <span class="md-ellipsis"> B2ACCESS </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_2"> <span class="md-nav__icon md-icon"></span> B2ACCESS </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2access/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/assurance/" class="md-nav__link"> <span class="md-ellipsis"> Assurance </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/concepts/" class="md-nav__link"> <span class="md-ellipsis"> Concepts </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4" > <label class="md-nav__link" for="__nav_2_4" id="__nav_2_4_label" tabindex="0"> <span class="md-ellipsis"> For Users </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_4_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_2_4"> <span class="md-nav__icon md-icon"></span> For Users </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2access/howto-mfa/" class="md-nav__link"> <span class="md-ellipsis"> Enabling MFA </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/howto-update-email/" class="md-nav__link"> <span class="md-ellipsis"> Updating Email </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/list-of-connected-organisations/" class="md-nav__link"> <span class="md-ellipsis"> List of connected organisations </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_4" > <label class="md-nav__link" for="__nav_2_4_4" id="__nav_2_4_4_label" tabindex="0"> <span class="md-ellipsis"> For group administrators </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_4_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_2_4_4"> <span class="md-nav__icon md-icon"></span> For group administrators </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2access/howto-vos/" class="md-nav__link"> <span class="md-ellipsis"> Requesting a group </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/howto-vo-management/" class="md-nav__link"> <span class="md-ellipsis"> Managing a group </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_5" > <label class="md-nav__link" for="__nav_2_4_5" id="__nav_2_4_5_label" tabindex="0"> <span class="md-ellipsis"> For Service Providers </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_5_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_2_4_5"> <span class="md-nav__icon md-icon"></span> For Service Providers </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2access/howto-services/" class="md-nav__link"> <span class="md-ellipsis"> Registering a services </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/attributes-sp/" class="md-nav__link"> <span class="md-ellipsis"> Available attributes </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_4_6" > <label class="md-nav__link" for="__nav_2_4_6" id="__nav_2_4_6_label" tabindex="0"> <span class="md-ellipsis"> For Identity Providers </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_4_6_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_2_4_6"> <span class="md-nav__icon md-icon"></span> For Identity Providers </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2access/howto-idps/" class="md-nav__link"> <span class="md-ellipsis"> Joining as an Identity Provider </span> </a> </li> <li class="md-nav__item"> <a href="../../b2access/attributes-idp/" class="md-nav__link"> <span class="md-ellipsis"> Consumed attributes </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item"> <a href="../../b2access/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" > <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0"> <span class="md-ellipsis"> B2DROP </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_3"> <span class="md-nav__icon md-icon"></span> B2DROP </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2drop/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_2" > <label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0"> <span class="md-ellipsis"> For Users </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_3_2"> <span class="md-nav__icon md-icon"></span> For Users </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2drop/user/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_2_2" > <label class="md-nav__link" for="__nav_3_2_2" id="__nav_3_2_2_label" tabindex="0"> <span class="md-ellipsis"> For groups </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_3_2_2_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_3_2_2"> <span class="md-nav__icon md-icon"></span> For groups </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2drop/groups/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_3" > <label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0"> <span class="md-ellipsis"> For Administrators </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_3_3"> <span class="md-nav__icon md-icon"></span> For Administrators </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2drop/admin/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2drop/b2sharebridge/" class="md-nav__link"> <span class="md-ellipsis"> Enabling the B2SHAREbridge </span> </a> </li> <li class="md-nav__item"> <a href="../../b2drop/setup/" class="md-nav__link"> <span class="md-ellipsis"> Install B2DROP </span> </a> </li> <li class="md-nav__item"> <a href="../../b2drop/integration/" class="md-nav__link"> <span class="md-ellipsis"> Integrate with B2ACCESS </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item"> <a href="../../b2drop/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" > <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0"> <span class="md-ellipsis"> B2FIND </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_4"> <span class="md-nav__icon md-icon"></span> B2FIND </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2find/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2find/forusers/" class="md-nav__link"> <span class="md-ellipsis"> For Users </span> </a> </li> <li class="md-nav__item"> <a href="../../b2find/forproviders/" class="md-nav__link"> <span class="md-ellipsis"> For Providers </span> </a> </li> <li class="md-nav__item"> <a href="../../b2find/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" > <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0"> <span class="md-ellipsis"> B2HANDLE </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_5"> <span class="md-nav__icon md-icon"></span> B2HANDLE </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2handle/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2handle/foradministrators/" class="md-nav__link"> <span class="md-ellipsis"> For Administrators </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_3" > <label class="md-nav__link" for="__nav_5_3" id="__nav_5_3_label" tabindex="0"> <span class="md-ellipsis"> For Developers </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_3_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_5_3"> <span class="md-nav__icon md-icon"></span> For Developers </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2handle/fordevelopers/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2handle/fordevelopers_pyhandle/" class="md-nav__link"> <span class="md-ellipsis"> PyHandle for Developers </span> </a> </li> <li class="md-nav__item"> <a href="../../b2handle/fordevelopers_b2handle/" class="md-nav__link"> <span class="md-ellipsis"> B2Handle for Developers </span> </a> </li> <li class="md-nav__item"> <a href="../../b2handle/fordevelopers_api/" class="md-nav__link"> <span class="md-ellipsis"> API for Developers </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_4" > <label class="md-nav__link" for="__nav_5_4" id="__nav_5_4_label" tabindex="0"> <span class="md-ellipsis"> Information </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_4_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_5_4"> <span class="md-nav__icon md-icon"></span> Information </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2handle/ownership/" class="md-nav__link"> <span class="md-ellipsis"> Ownership </span> </a> </li> <li class="md-nav__item"> <a href="../../b2handle/security/" class="md-nav__link"> <span class="md-ellipsis"> Security </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item"> <a href="../../b2handle/more/" class="md-nav__link"> <span class="md-ellipsis"> More Info </span> </a> </li> <li class="md-nav__item"> <a href="../../b2handle/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" > <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0"> <span class="md-ellipsis"> B2INST </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_6"> <span class="md-nav__icon md-icon"></span> B2INST </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2inst/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" > <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0"> <span class="md-ellipsis"> For Users </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_6_2"> <span class="md-nav__icon md-icon"></span> For Users </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2inst/forusers/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2inst/advancedsearch/" class="md-nav__link"> <span class="md-ellipsis"> Advanced Search </span> </a> </li> <li class="md-nav__item"> <a href="../../b2inst/httpapi/" class="md-nav__link"> <span class="md-ellipsis"> HTTP REST API </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item"> <a href="../../b2inst/foradministrators/" class="md-nav__link"> <span class="md-ellipsis"> For Administrators </span> </a> </li> <li class="md-nav__item"> <a href="../../b2inst/fordevelopers/" class="md-nav__link"> <span class="md-ellipsis"> For Developers </span> </a> </li> <li class="md-nav__item"> <a href="../../b2inst/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" > <label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0"> <span class="md-ellipsis"> B2SAFE </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_7"> <span class="md-nav__icon md-icon"></span> B2SAFE </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../b2safe/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../b2safe/forusers/" class="md-nav__link"> <span class="md-ellipsis"> For Users </span> </a> </li> <li class="md-nav__item"> <a href="../../b2safe/foradministrators/" class="md-nav__link"> <span class="md-ellipsis"> For Administrators </span> </a> </li> <li class="md-nav__item"> <a href="../../b2safe/fordevelopers/" class="md-nav__link"> <span class="md-ellipsis"> For Developers </span> </a> </li> <li class="md-nav__item"> <a href="../../b2safe/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" checked> <label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex=""> <span class="md-ellipsis"> B2SHARE </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="true"> <label class="md-nav__title" for="__nav_8"> <span class="md-nav__icon md-icon"></span> B2SHARE </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../overview/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_2" > <label class="md-nav__link" for="__nav_8_2" id="__nav_8_2_label" tabindex=""> <span class="md-ellipsis"> For Users </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_2_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_8_2"> <span class="md-nav__icon md-icon"></span> For Users </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../forusers/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../advancedsearch/" class="md-nav__link"> <span class="md-ellipsis"> Advance Search </span> </a> </li> <li class="md-nav__item"> <a href="../httpapi/" class="md-nav__link"> <span class="md-ellipsis"> HTTP REST API </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_3" checked> <label class="md-nav__link" for="__nav_8_3" id="__nav_8_3_label" tabindex=""> <span class="md-ellipsis"> For Developers </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_3_label" aria-expanded="true"> <label class="md-nav__title" for="__nav_8_3"> <span class="md-nav__icon md-icon"></span> For Developers </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item md-nav__item--active"> <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc"> <label class="md-nav__link md-nav__link--active" for="__toc"> <span class="md-ellipsis"> Overview </span> <span class="md-nav__icon md-icon"></span> </label> <a href="./" class="md-nav__link md-nav__link--active"> <span class="md-ellipsis"> Overview </span> </a> <nav class="md-nav md-nav--secondary" aria-label="Table of contents"> <label class="md-nav__title" for="__toc"> <span class="md-nav__icon md-icon"></span> Table of contents </label> <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix> <li class="md-nav__item"> <a href="#guidelines" class="md-nav__link"> <span class="md-ellipsis"> Guidelines </span> </a> </li> <li class="md-nav__item"> <a href="#synopsis" class="md-nav__link"> <span class="md-ellipsis"> Synopsis </span> </a> </li> <li class="md-nav__item"> <a href="#why-instancing" class="md-nav__link"> <span class="md-ellipsis"> Why instancing? </span> </a> </li> <li class="md-nav__item"> <a href="#requirements" class="md-nav__link"> <span class="md-ellipsis"> Requirements </span> </a> </li> <li class="md-nav__item"> <a href="#technology" class="md-nav__link"> <span class="md-ellipsis"> Technology </span> </a> </li> <li class="md-nav__item"> <a href="#quick-deployment-overview" class="md-nav__link"> <span class="md-ellipsis"> Quick deployment overview </span> </a> </li> <li class="md-nav__item"> <a href="#configuration" class="md-nav__link"> <span class="md-ellipsis"> Configuration </span> </a> </li> <li class="md-nav__item"> <a href="#content-administration" class="md-nav__link"> <span class="md-ellipsis"> Content administration </span> </a> </li> <li class="md-nav__item"> <a href="#other-features" class="md-nav__link"> <span class="md-ellipsis"> Other features </span> </a> </li> <li class="md-nav__item"> <a href="#integration-of-other-eudat-services" class="md-nav__link"> <span class="md-ellipsis"> Integration of other EUDAT services </span> </a> </li> <li class="md-nav__item"> <a href="#known-issues" class="md-nav__link"> <span class="md-ellipsis"> Known Issues </span> </a> </li> <li class="md-nav__item"> <a href="#support" class="md-nav__link"> <span class="md-ellipsis"> Support </span> </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_4" > <label class="md-nav__link" for="__nav_8_4" id="__nav_8_4_label" tabindex=""> <span class="md-ellipsis"> For Administrators </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_4_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_8_4"> <span class="md-nav__icon md-icon"></span> For Administrators </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../foradministrators/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../cli/" class="md-nav__link"> <span class="md-ellipsis"> Command Line Interface (CLI) </span> </a> </li> <li class="md-nav__item"> <a href="../httpapi/" class="md-nav__link"> <span class="md-ellipsis"> HTTP REST API </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item"> <a href="../faq/" class="md-nav__link"> <span class="md-ellipsis"> F.A.Q.s </span> </a> </li> <li class="md-nav__item"> <a href="../about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" > <label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0"> <span class="md-ellipsis"> DataCite </span> <span class="md-nav__icon md-icon"></span> </label> <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false"> <label class="md-nav__title" for="__nav_9"> <span class="md-nav__icon md-icon"></span> DataCite </label> <ul class="md-nav__list" data-md-scrollfix> <li class="md-nav__item"> <a href="../../datacite/" class="md-nav__link"> <span class="md-ellipsis"> Overview </span> </a> </li> <li class="md-nav__item"> <a href="../../datacite/forusers/" class="md-nav__link"> <span class="md-ellipsis"> For Users </span> </a> </li> <li class="md-nav__item"> <a href="../../datacite/about/" class="md-nav__link"> <span class="md-ellipsis"> About </span> </a> </li> </ul> </nav> </li> <li class="md-nav__item"> <a href="https://eudat.eu" class="md-nav__link"> <span class="md-ellipsis"> EUDAT website </span> </a> </li> <li class="md-nav__item"> <a href="https://eudat.eu/contact-support-request" class="md-nav__link"> <span class="md-ellipsis"> Feedback + Support </span> </a> </li> </ul> </nav> </div> </div> </div> <div class="md-content" data-md-component="content"> <article class="md-content__inner md-typeset"> <h1 id="for-developers">For Developers<a class="headerlink" href="#for-developers" title="Permanent link">#</a></h1> <h2 id="guidelines">Guidelines<a class="headerlink" href="#guidelines" title="Permanent link">#</a></h2> <p>User documentation about requirements, deployment and configuration of your own instance of the EUDAT B2SHARE software.</p> <h2 id="synopsis">Synopsis<a class="headerlink" href="#synopsis" title="Permanent link">#</a></h2> <p>The B2SHARE service is intended for European researchers who do not have adequate facilities for storing and publishing data, cannot otherwise guarantee long-term persistence of their locally stored data and lack means to easily share such data with colleagues worldwide. B2SHARE provides long-term preservation and storage of data sets together with persistent identifiers, metadata annotation and incorporation of community publication requirements.</p> <p>For communities or institutes that want to limit usage to specific users, set their own rules and limitations regarding publications and have full control over the administration of the service, an instance of B2SHARE can be deployed. Deploying your own instance of B2SHARE requires web server or cloud infrastructure as well as storage infrastructure for the datasets published. EUDAT supports deployment using Docker containers, although bare metal deployment is possible as well.</p> <h2 id="why-instancing">Why instancing?<a class="headerlink" href="#why-instancing" title="Permanent link">#</a></h2> <p>Although EUDAT provides its own instance of B2SHARE, there are several reasons why an individual, institution or community would deploy its own installation of the B2SHARE software stack:</p> <ul> <li>Benefit from full control over service and data stored</li> <li>Configure your own:</li> <li>Storage infrastructure and locations</li> <li>Communities & users & roles</li> <li>Metadata schemas</li> <li>User access requirements and limitations</li> <li>Set your own service limits & data requirements</li> <li>Community / institute branding</li> <li>Define multiple communities/projects</li> <li>Add logos, information and landing pages</li> </ul> <h2 id="requirements">Requirements<a class="headerlink" href="#requirements" title="Permanent link">#</a></h2> <p>Although deployment of new instances of B2SHARE is easy and straightforward, there are the following requirements for any person who will administer the service:</p> <ul> <li>Basic knowledge of Linux or Unix environments, how to configure components and make sure storage infrastructure is available</li> <li>Knowledge of Docker technology, configuration and containers is a must</li> <li>As in many cases, security and access rights are essential and therefore knowledge on how to set these at the right locations is very important</li> <li>In many instances, specific storage requirements are of concern and therefore the right configuration and hardware can significantly alter the performance of your service</li> <li>A backup strategy for all generated data, including all databases amd ingested files</li> </ul> <h2 id="technology">Technology<a class="headerlink" href="#technology" title="Permanent link">#</a></h2> <p>B2SHARE is developed on top of the <a href="http://invenio-software.org/">Invenio v3 repository</a> software platform developed by CERN.</p> <p>The B2SHARE front-end is developed by EUDAT using Python and the Invenio end-points.</p> <h2 id="quick-deployment-overview">Quick deployment overview<a class="headerlink" href="#quick-deployment-overview" title="Permanent link">#</a></h2> <p>Deploying your own instance of B2SHARE can be achieved by downloading the B2SHARE software stack, configuring it and connected services and making it available to the intended audience. In short the following steps are necessary:</p> <ul> <li>Install the necessary packages, Docker and Docker Compose</li> <li>Clone the <a href="https://github.com/EUDAT-B2SHARE/dockerize">dockerize GitHub repository</a> of B2SHARE</li> <li>Edit the docker-compose.yml file</li> <li>Configure B2ACCESS with an OAuth Client user</li> <li>Set up the environment variables for B2SHARE</li> <li>Run the Docker containers</li> </ul> <p>For more in-depth information on how to install and configure your instance, please follow our dedicated guide published in the <a href="https://github.com/EUDAT-Training/B2SHARE-Training/tree/master/deploy">EUDAT Training GitHub repository</a>.</p> <h2 id="configuration">Configuration<a class="headerlink" href="#configuration" title="Permanent link">#</a></h2> <p>B2SHARE instances can be deployed using the configuration files provided by the B2SHARE installation. All other object-specific configuration is done using the provided internal tools.</p> <p>Creating new records and uploading files can be achieved by using the <a href="../httpapi/">HTTP REST API endpoints</a> or the <a href="../cli/">internal command-line tools</a>.</p> <h2 id="content-administration">Content administration<a class="headerlink" href="#content-administration" title="Permanent link">#</a></h2> <p>As soon as your instance is running smoothly you can start adding necessary objects, users and their roles. Most objects can be administered using the <a href="https://github.com/EUDAT-Training/B2SHARE-Training/blob/master/deploy/A_b2share_Tool_Reference.md">b2share command-line tool</a> which is available in the B2SHARE Docker container.</p> <p>Some of the options available are listed below:</p> <ul> <li>Create and set users & roles:</li> <li>Administer users & roles</li> <li>Super administrator</li> <li>Community administrators & members</li> <li>Communities:</li> <li>Administer communities/projects</li> <li>Community metadata schemas and branding</li> <li>Policies and access</li> <li>Access and roles</li> <li>Metadata schemas:</li> <li>Define metadata schemas per community</li> <li>Define required and optional metadata fields and their structure</li> <li>Define additional community-specific fields</li> </ul> <h2 id="other-features">Other features<a class="headerlink" href="#other-features" title="Permanent link">#</a></h2> <p>B2SHARE provides even more features:</p> <ul> <li>Monitoring services, like file fixity checks</li> <li>Simple configuration for integration with other services</li> <li>Customisation of UI</li> </ul> <h2 id="integration-of-other-eudat-services">Integration of other EUDAT services<a class="headerlink" href="#integration-of-other-eudat-services" title="Permanent link">#</a></h2> <p>B2SHARE uses several other EUDAT services in order to make sure new records are correctly created and users can be authenticated.</p> <p>To see which other services can be integrated in your B2SHARE instance, please refer to the EUDAT Training material on B2SHARE deployment regarding <a href="https://github.com/EUDAT-Training/B2SHARE-Training/blob/master/deploy/06_Services_configuration.md">services configuration</a>.</p> <h2 id="known-issues">Known Issues<a class="headerlink" href="#known-issues" title="Permanent link">#</a></h2> <p>There are some known issues to take into account when deploying B2SHARE. Please refer to the EUDAT Training material on B2SHARE deployment regarding known issues.</p> <h2 id="support">Support<a class="headerlink" href="#support" title="Permanent link">#</a></h2> <p>Please visit our training site on <a href="https://github.com/EUDAT-Training/B2SHARE-Training/tree/master/deploy">GitHub for B2SHARE</a> and other hands-on training material.</p> <p>Our <a href="https://www.eudat.eu/b2share-training-suite">B2SHARE presentations</a> offer training material for the service.</p> <p>Support for B2SHARE is available via the EUDAT ticketing system through the <a href="https://eudat.eu/support-request?service=B2SHARE">webform</a>.</p> <p>If you have comments on this page, please submit them through the <a href="http://eudat.eu/support-request?service=DOCUMENTATION">EUDAT support request system</a>.</p> <p> Last update: 30.11.2023</p> </article> </div> <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script> </div> <button type="button" class="md-top md-icon" data-md-component="top" hidden> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg> Back to top </button> </main> <footer class="md-footer"> <div class="md-footer-meta md-typeset"> <div class="md-footer-meta__inner md-grid"> <div class="md-copyright"> <div class="md-copyright__highlight"> This documentation is licensed under <a href='https://creativecommons.org/licenses/by-sa/3.0/legalcode'>CC BY-SA 3.0 <img src='/images/cc-by-sa_icon.png'></a> <!-- a href=''>Imprint</a --> </div> </div> <div class="md-social"> <a href="https://gitlab.eudat.eu/sa.apweiler/eudat-documentation" target="_blank" rel="noopener" title="gitlab.eudat.eu" class="md-social__link"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg> </a> </div> </div> </div> </footer> </div> <div class="md-dialog" data-md-component="dialog"> <div class="md-dialog__inner md-typeset"></div> </div> <script id="__config" type="application/json">{"base": "../..", "features": ["navigation.sections", "navigation.tabs", "navigation.top", "toc.integrate", "search.suggest"], "search": "../../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script> <script src="../../assets/javascripts/bundle.83f73b43.min.js"></script> </body> </html>