Metadata-Version: 2.4
Name: fairdomseek-openapi-client
Version: 1.0.0
Summary: JSON API to FAIRDOM SEEK
Home-page: 
Author: SEEK support
Author-email: support@fair-dom.org
License: The 3-Clause BSD License
Keywords: OpenAPI,OpenAPI-Generator,JSON API to FAIRDOM SEEK
Description-Content-Type: text/markdown
Requires-Dist: urllib3<3.0.0,>=2.1.0
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2
Requires-Dist: typing-extensions>=4.7.1
Dynamic: author
Dynamic: author-email
Dynamic: description
Dynamic: description-content-type
Dynamic: keywords
Dynamic: license
Dynamic: requires-dist
Dynamic: summary

    &lt;a name&#x3D;\&quot;api\&quot;&gt;&lt;/a&gt;The JSON API to FAIRDOM SEEK is a [JSON API](http://jsonapi.org) specification describing how to read and write to a SEEK instance.  The API is defined in the [OpenAPI specification](https://swagger.io/specification) currently in [version 2](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md)  Example IPython notebooks showing use of the API are available on [GitHub](https://github.com/FAIRdom/api-workshop)  ## Policy &lt;a name&#x3D;\&quot;Policy\&quot;&gt;&lt;/a&gt; A Policy specifies the visibility of an object to people using SEEK. A &lt;a href&#x3D;\&quot;#projects\&quot;&gt;**Project**&lt;/a&gt; may specify the default policy for objects belonging to that &lt;a href&#x3D;\&quot;#projects\&quot;&gt;**Project**&lt;/a&gt;  The **Policy** specifies the visibility of the object to non-registered people or &lt;a href&#x3D;\&quot;#people\&quot;&gt;**People**&lt;/a&gt; not allowed special access.  The access may be one of (in order of increasing \&quot;power\&quot;):  * no_access * view * download * edit * manage  In addition a **Policy** may give special access to specific &lt;a href&#x3D;\&quot;#people\&quot;&gt;**People**&lt;/a&gt;, People working at an &lt;a href&#x3D;\&quot;#institutions\&quot;&gt;**Institution**&lt;/a&gt; or working on a &lt;a href&#x3D;\&quot;#projects\&quot;&gt;**Project**&lt;/a&gt;.  ## License &lt;a name&#x3D;\&quot;License\&quot;&gt;&lt;/a&gt; The license specifies the license that will apply to any &lt;a href&#x3D;\&quot;#dataFiles\&quot;&gt;**DataFiles**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#models\&quot;&gt;**Models**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#sops\&quot;&gt;**SOPs**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#documents\&quot;&gt;**Documents**&lt;/a&gt; and &lt;a href&#x3D;\&quot;#presentations\&quot;&gt;**Presentations**&lt;/a&gt; associated with a &lt;a href&#x3D;\&quot;#projects\&quot;&gt;**Project**&lt;/a&gt;.  The license can currently be:  * &#x60;CC0-1.0&#x60; - [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/) * &#x60;CC-BY-4.0&#x60; - [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/) * &#x60;CC-BY-SA-4.0&#x60; - [Creative Commons Attribution Share-Alike 4.0](https://creativecommons.org/licenses/by-sa/4.0/) * &#x60;ODC-BY-1.0&#x60; - [Open Data Commons Attribution License 1.0](http://www.opendefinition.org/licenses/odc-by) * &#x60;ODbL-1.0&#x60; - [Open Data Commons Open Database License 1.0](http://www.opendefinition.org/licenses/odc-odbl) * &#x60;ODC-PDDL-1.0&#x60; - [Open Data Commons Public Domain Dedication and Licence 1.0](http://www.opendefinition.org/licenses/odc-pddl) * &#x60;notspecified&#x60; - License Not Specified * &#x60;other-at&#x60; - Other (Attribution) * &#x60;other-open&#x60; - Other (Open) * &#x60;other-pd&#x60; - Other (Public Domain) * &#x60;AFL-3.0&#x60; - [Academic Free License 3.0](http://www.opensource.org/licenses/AFL-3.0) * &#x60;Against-DRM&#x60; - [Against DRM](http://www.opendefinition.org/licenses/against-drm) * &#x60;CC-BY-NC-4.0&#x60; - [Creative Commons Attribution-NonCommercial 4.0](https://creativecommons.org/licenses/by-nc/4.0/) * &#x60;DSL&#x60; - [Design Science License](http://www.opendefinition.org/licenses/dsl) * &#x60;FAL-1.3&#x60; - [Free Art License 1.3](http://www.opendefinition.org/licenses/fal) * &#x60;GFDL-1.3-no-cover-texts-no-invariant-sections&#x60; - [GNU Free Documentation License 1.3 with no cover texts and no invariant sections](http://www.opendefinition.org/licenses/gfdl) * &#x60;geogratis&#x60; - [Geogratis](http://geogratis.gc.ca/geogratis/licenceGG) * &#x60;hesa-withrights&#x60; - [Higher Education Statistics Agency Copyright with data.gov.uk rights](http://www.hesa.ac.uk/index.php?option&#x3D;com_content&amp;amp;task&#x3D;view&amp;amp;id&#x3D;2619&amp;amp;Itemid&#x3D;209) * &#x60;localauth-withrights&#x60; - Local Authority Copyright with data.gov.uk rights * &#x60;MirOS&#x60; - [MirOS Licence](http://www.opensource.org/licenses/MirOS) * &#x60;NPOSL-3.0&#x60; - [Non-Profit Open Software License 3.0](http://www.opensource.org/licenses/NPOSL-3.0) * &#x60;OGL-UK-1.0&#x60; - [Open Government Licence 1.0 (United Kingdom)](http://reference.data.gov.uk/id/open-government-licence) * &#x60;OGL-UK-2.0&#x60; - [Open Government Licence 2.0 (United Kingdom)](https://www.nationalarchives.gov.uk/doc/open-government-licence/version/2/) * &#x60;OGL-UK-3.0&#x60; - [Open Government Licence 3.0 (United Kingdom)](https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/) * &#x60;OGL-Canada-2.0&#x60; - [Open Government License 2.0 (Canada)](http://data.gc.ca/eng/open-government-licence-canada) * &#x60;OSL-3.0&#x60; - [Open Software License 3.0](http://www.opensource.org/licenses/OSL-3.0) * &#x60;dli-model-use&#x60; - [Statistics Canada: Data Liberation Initiative (DLI) - Model Data Use Licence](http://data.library.ubc.ca/datalib/geographic/DMTI/license.html) * &#x60;Talis&#x60; - [Talis Community License](http://www.opendefinition.org/licenses/tcl) * &#x60;ukclickusepsi&#x60; - UK Click Use PSI * &#x60;ukcrown-withrights&#x60; - UK Crown Copyright with data.gov.uk rights * &#x60;ukpsi&#x60; - [UK PSI Public Sector Information](http://www.opendefinition.org/licenses/ukpsi)  ## ContentBlob &lt;a name&#x3D;\&quot;ContentBlob\&quot;&gt;&lt;/a&gt; &lt;a name&#x3D;\&quot;contentBlobs\&quot;&gt;&lt;/a&gt; The content of a &lt;a href&#x3D;\&quot;#dataFiles\&quot;&gt;**DataFile**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#documents\&quot;&gt;**Document**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#models\&quot;&gt;**Model**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#sops\&quot;&gt;**SOP**&lt;/a&gt; or &lt;a href&#x3D;\&quot;#presentations\&quot;&gt;**Presentation**&lt;/a&gt; is specified as a set of **ContentBlobs**.  When a resource with content is created, it is possible to specify a ContentBlob either as:  * A remote ContentBlob with:   * **URI to the content&#39;s location**   * The original filename for the content   * The content type of the remote content as a [MIME media type](https://en.wikipedia.org/wiki/Media_type) * A placeholder that will be filled with uploaded content   * **The original filename for the content**   * **The content type of the content as a [MIME media type](https://en.wikipedia.org/wiki/Media_type)**  The creation of the resource will return a JSON document containing ContentBlobs corresponding to the remote ContentBlob and to the ContentBlob placeholder. The blobs contain a URI to their location.  A placeholder can then be satisfied by uploading a file to the location URI. For example by a placeholder such as   &#x60;&#x60;&#x60; \&quot;content_blobs\&quot;: [   {     \&quot;original_filename\&quot;: \&quot;a_pdf_file.pdf\&quot;,     \&quot;content_type\&quot;: \&quot;application/pdf\&quot;,     \&quot;link\&quot;: \&quot;http://fairdomhub.org/data_files/57/content_blobs/313\&quot;   } ], &#x60;&#x60;&#x60;  may be satisfied by uploading a file to http://fairdomhub.org/data_files/57/content_blobs/313 using the &lt;a href&#x3D;\&quot;#uploadAssetContent\&quot;&gt;uploadAssetContent&lt;/a&gt; operation  The content of a resource may be downloaded by first *reading* the resource and then *downloading* the ContentBlobs from their URI.  ## Extended Metadata  Some types support [Extended Metadata](https://docs.seek4science.org/tech/extended-metadata), which allows additional attributes to be defined according to an Extended Metadata Type.  Types currently supported are &lt;a href&#x3D;\&quot;#investigations\&quot;&gt;**Investigation**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#studies\&quot;&gt;**Study**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#assays\&quot;&gt;**Assay**&lt;/a&gt;,  &lt;a href&#x3D;\&quot;#dataFiles\&quot;&gt;**DataFile**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#sops\&quot;&gt;**SOP**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#presentations\&quot;&gt;**Presentation**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#documents\&quot;&gt;**Document**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#models\&quot;&gt;**Model**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#events\&quot;&gt;**Event**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#collections\&quot;&gt;**Collection**&lt;/a&gt;, &lt;a href&#x3D;\&quot;#projects\&quot;&gt;**Project**&lt;/a&gt;  The responses and requests for each of these types include an additional optional attribute _extended_attributes_ which describes  * _extended_metadata_type_id_ - the id of the extended metadata type which can be used to find more details about what its attributes are. * _attribute_map_ - which is a map of key / value pairs where the key is the attribute name   For example, a Study may have extended metadata, defined by an Extended Metadata Type with id 12, that has attributes for age, name, and date_of_birth. These could be shown, within its attributes, as:  &#x60;&#x60;&#x60; \&quot;extended_attributes\&quot;: {   \&quot;extended_metadata_type_id\&quot;: \&quot;12\&quot;,   \&quot;attribute_map\&quot;: {     \&quot;age\&quot;: 44,     \&quot;name\&quot;: \&quot;Fred Bloggs\&quot;,     \&quot;date_of_birth\&quot;: \&quot;2024-01-01\&quot;   } } &#x60;&#x60;&#x60;  If you wish to create or update a study to make use of this extended metadata, the request payload would be described the same.  Upon creation or update there would be a validation check that the attributes are valid.  The API supports listing all available Extended Metadata Types, and inspecting an individual type by its id. For more information see the [Extended Metadata Type definitions](api#tag/extendedMetadataTypes).
    
