https://www.safecreative.org/mw/api.php?action=feedcontributions&user=Adminwiki&feedformat=atomSafe Creative API - User contributions [en]2024-03-29T06:03:30ZUser contributionsMediaWiki 1.40.1https://www.safecreative.org/mw/index.php?title=MediaWiki:Mainpage&diff=830MediaWiki:Mainpage2022-09-09T07:00:36Z<p>Adminwiki: </p>
<hr />
<div>Safe Creative API Documentation</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Safe_Creative_Wiki&diff=829Safe Creative Wiki2022-09-09T06:59:24Z<p>Adminwiki: Adminwiki moved page Safe Creative Wiki to Safe Creative API Documentation</p>
<hr />
<div>#REDIRECT [[Safe Creative API Documentation]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Safe_Creative_API_Documentation&diff=828Safe Creative API Documentation2022-09-09T06:59:24Z<p>Adminwiki: Adminwiki moved page Safe Creative Wiki to Safe Creative API Documentation</p>
<hr />
<div>[[File:Safecreative.jpg|none]] <br />
=== Welcome to Safe Creative Wiki!===<br />
<br />
Here you can find documentation about the Safe Creative API.<br />
<br />
<br />
<br />
= Safe Creative API =<br />
* [[API Overview]]: First steps and basic concepts for using Safe Creative API<br />
* [[API Reference]]: Reference documentation for each component in the Safe Creative API<br />
* [[How to]]: Step-by-step tutorials for common scenarios<br />
* [[API Wrappers]]: Access the API from different programming languages: Java,Php,Ruby<br />
* [[Troubleshooting]]: Have any problem? Try here first.<br />
* [[API Service Status]]: Service status info page.<br />
<br />
Safe Creative API usage is free of charge, and subject to the following [http://www.safecreative.org/legal-api terms of service].<br />
<br />
= Safe Stamper API =<br />
* [http://wiki.safestamper.com Safe Stamper API]: Safe Stamper API documentation</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=API_Overview&diff=827API Overview2022-04-20T11:32:26Z<p>Adminwiki: </p>
<hr />
<div>= API architecture =<br />
[[File:Arquitecture.png|frame|API architecture]]<br />
Safe Creative API is a REST-like interface to Safe Creative services. It is stateless and is divided in 3 main areas<br />
* '''Core''': Main services accessible through <tt><nowiki>http://api.safecreative.org</nowiki></tt><br />
* '''Upload''': API for uploading works, accessible through several dedicated upload servers (see [[work.upload.lookup]])<br />
* '''Search''': Public services for searching works<br />
<br />
There are three trust levels for applications using Safe Creative API<br />
* '''Public API''': Anyone can use these services without any previous requirement. These services allow access to public registration information, as if visiting the web site.<br />
* '''Standard API''': This comprises the bulk of Safe Creative services. You need an application key to access these components. Usually a user's authorization key is also needed.<br />
* '''Partners API''': Some components are reserved for use by [http://en.safecreative.net/partners/ Safe Creative partners]. Contact [mailto:community@safecreative.org community@safecreative.org] if you want to become a partner.<br />
<br />
See also:<br />
* [[About works]]<br />
* [[Common URLs]]<br />
<br />
= Obtaining the keys to use the API =<br />
<br />
You must have a Safe Creative Account to use the API. You can create your API key at https://www.safecreative.org/new-api-key<br />
You will fill a form with some data that Safe Creative reviews in order to make the final authorization to use the application key:<br />
<br />
* Name: Name of the application that will use the Safe Creative API, it's a public name shown when an authorization to the user is made<br />
* Shared key: Provided shared key used to identify the applications calls<br />
* Private key: Provided private key to sign some API requests<br />
* Description: Public description of the service provided by the application<br />
* Web site: Public URL of the site of the application<br />
* API callback URL: Private URL used by Safe Creative to notify different types of events. See [[API callbacks]]<br />
* API bringback URL: See [[Bringback url]].<br />
* Notes: Private notes for the Safe Creative Team in order to obtain the activation of the keys<br />
<br />
After some time you will obtain the activation of these keys, so you can use the Safe Creative API (you will be notified by email).<br />
<br />
Once you have obtained an API key, you can manage your API keys from the ''Applications'' tab on your [https://www.safecreative.org/myaccount/tab/USERKEYS_AUTHS Safe Creative account]<br />
<br />
= Arena sandbox environment =<br />
<br />
There is a testing environment available at http://arena.safecreative.org. <br />
<br />
This is a complete replica of the Safe Creative web site, including an API server. You can create user accounts, register works and request API keys.<br />
<br />
It is strongly encouraged to use the arena environment for testing the API before using your application on the real service. To do so, you must request your application key at https://arena.safecreative.org/new-api-key instead. Arena application keys are immediately activated, so you can start testing the API as soon as you want.<br />
<br />
As a matter of fact, API keys for production environment will not be activated if the application has not been previously tested against the arena environment<br />
<br />
= Accessing the API =<br />
<br />
Safe Creative API Web Services are accessible via a REST-like interface. The interface is rooted at <code><nowiki>http://api.safecreative.org/v2/</nowiki></code> for production services and <code><nowiki>http://arena.safecreative.org/v2/</nowiki></code> for the arena environment.<br />
<br />
All requests must be done using the UTF-8 charset (HTTP request charset should be UTF-8).<br />
Responses are formatted as UTF-8 XML. It is strongly recommended to use HTTPS instead of HTTP. Some methods are required to be called using HTTPS.<br />
<br />
= Parameters =<br />
<br />
Parameters can be sent by POST or GET. You can mix POST and GET parameters.<br />
Some operations must send xml parameters that are best suited for POST method, but this is not required.<br />
<br />
There are some common parameters: locale, sharedkey, ztime, authkey, signature, component and format<br />
* '''component''' is the name of the method or function to execute<br />
* '''sharedkey''' is the key assigned to the application. It has an associated private key.<br />
* '''locale''' is used to translate some messages to the specified locale. Locale format is language-country-variant, e.g. en-US<br />
** Currently, only English (''en'') and Spanish (''es'') locales are supported. All other locales default to English.<br />
* '''ztime''' is the number of milliseconds since January 1, 1970, 00:00:00 GMT (see [[ztime parameter]]). You can use the [[ztime component]] to retrieve the server ztime for synchronization<br />
* '''authkey''' is the user authorization for the application to use his account. It has an associated private key.<br />
* '''signature''' is a hash of the request computed using the private key associated to the sharedkey or authkey (depending on the component being called). See [[signature parameter]].<br />
* '''format''' specifies the response format: xml (default),json or [[jsonp]]<br />
<br />
Read the [[API reference]] to know the parameters expected by each component. Non-required parameters can be omitted from a component call.<br />
<br />
= URL syntax =<br />
<br />
API calls usually have the following format:<br />
<br />
<pre>http://api.safecreative.org/v2/?component={component}&parameter1=value1&parameter2=value2&ztime={ztime}&signature={signature}</pre><br />
<br />
Some operations do not require a signature, so you can avoid calculating and sending it. The same can be said for the ztime<br />
<br />
= Request signature = <br />
<br />
See [[Signature parameter]]<br />
<br />
Many operations require a signature of the request. This signature is the SHA-1 hash of the arguments, sorted by key, and preceded by a private key.<br />
<br />
The private key to use depends on the component being called. If the component requires an authkey, then the private key to use is the one associated to that authkey. In other cases, you must use the private key associated to your shared key.<br />
<br />
= User authorization =<br />
<br />
See [[user authorization]]<br />
<br />
In order to register works for a user, you need that user's authorization. User's authorizations are represented by an '''authkey'''.<br />
<br />
You create an authkey with [[authkey.create]]. Then you must redirect your user to the user authorization page, where he must complete the authorization process. Once authorization is complete, user will be redirected to you user bringback URL.<br />
<br />
= Nonce key =<br />
<br />
See [[Nonce key]]<br />
<br />
Some API operations require additional security through the use of a one-time nonce key.<br />
<br />
= Callbacks =<br />
<br />
See [[API callbacks]]<br />
<br />
The API server will use your callback URL to send to your application several notifications.<br />
<br />
= Error handling =<br />
<br />
See [[Error handling]]<br />
<br />
Invalid parameters or requests return an error, identified by a fixed errorId. Server-side problems return an exception.<br />
<br />
= Paginated responses =<br />
<br />
See [[Paginated responses]]<br />
<br />
Some requests returns paginated lists. Use the '''page''' parameter to get different pages of the list. <br />
<br />
= See also =<br />
* [[API Reference]]<br />
* [[How to]]<br />
* [[Troubleshooting]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Nonce_key&diff=826Nonce key2022-04-20T11:30:36Z<p>Adminwiki: </p>
<hr />
<div>A '''nonce key''' is a one-time key that must be used for additional security on some API operations, for instance [[work.register]].<br />
<br />
To get a nonce key, you must call [[authkey.state]]. The nonce key changes each time it is used, so you need to get a new nonce key for each operation that requires one.<br />
<br />
= Example =<br />
<br />
REQUEST to get a nonce key<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=authkey.state<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''sharedkey'''=zy9x4ol0ctg3btyswq7b5wi9<br />
&'''ztime'''=1271749829192<br />
&'''signature'''=508333b024993bbe54261a8c6713767dfe3ec9b1<br />
<br />
RESPONSE:<br />
<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<authkeystate><br />
<authkey>1i5g2aaf2bz09lyo867cuimqg</authkey><br />
<level>MANAGE</level><br />
'''<noncekey>4vrghpn0n8jxrrvoi3b7zta1c</noncekey>'''<br />
<usercode>0907100000018</usercode><br />
<authorized>true</authorized><br />
</authkeystate></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Nonce_key&diff=825Nonce key2022-04-20T11:28:10Z<p>Adminwiki: </p>
<hr />
<div>A '''nonce key''' is a one-time key that must be used for additional security on some API operations, for instance [[work.register]].<br />
<br />
To get a nonce key, you must call [[authkey.state]]. The nonce key changes each time it is used, so you need to get a new nonce key for each operation that requires one.<br />
<br />
= Example =<br />
<br />
REQUEST to get a nonce key<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=authkey.state<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''sharedkey'''=zy9x4ol0ctg3btyswq7b5wi9<br />
&'''ztime'''=1271749829192<br />
&'''signature'''=508333b024993bbe54261a8c6713767dfe3ec9b1<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<authkeystate><br />
<authkey>1i5g2aaf2bz09lyo867cuimqg</authkey><br />
<level>MANAGE</level><br />
<noncekey>4vrghpn0n8jxrrvoi3b7zta1c</noncekey><br />
<usercode>0907100000018</usercode><br />
<authorized>true</authorized><br />
</authkeystate><br />
</pre></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Nonce_key&diff=824Nonce key2022-04-20T11:27:35Z<p>Adminwiki: </p>
<hr />
<div>A '''nonce key''' is a one-time key that must be used for additional security on some API operations, for instance [[work.register]].<br />
<br />
To get a nonce key, you must call [[authkey.state]]. The nonce key changes each time it is used, so you need to get a new nonce key for each operation.<br />
<br />
= Example =<br />
<br />
REQUEST to get a nonce key<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=authkey.state<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''sharedkey'''=zy9x4ol0ctg3btyswq7b5wi9<br />
&'''ztime'''=1271749829192<br />
&'''signature'''=508333b024993bbe54261a8c6713767dfe3ec9b1<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<authkeystate><br />
<authkey>1i5g2aaf2bz09lyo867cuimqg</authkey><br />
<level>MANAGE</level><br />
<noncekey>4vrghpn0n8jxrrvoi3b7zta1c</noncekey><br />
<usercode>0907100000018</usercode><br />
<authorized>true</authorized><br />
</authkeystate><br />
</pre></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Nonce_key&diff=823Nonce key2022-04-20T11:27:17Z<p>Adminwiki: Created page with "A '''nonce key''' is a one-time key that must be used for additional security on some API operations, for instance work.register. To get a nonce key, you must call auth..."</p>
<hr />
<div>A '''nonce key''' is a one-time key that must be used for additional security on some API operations, for instance [[work.register]].<br />
<br />
To get a nonce key, you must call [[authkey.state]]. The nonce key changes each time it is used, so you need to get a new nonce key for each operation.<br />
<br />
= Example =<br />
<br />
REQUEST to get a nonce key<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=authkey.state<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''sharedkey'''=zy9x4ol0ctg3btyswq7b5wi9<br />
&'''ztime'''=1271749829192<br />
&'''signature'''=508333b024993bbe54261a8c6713767dfe3ec9b1<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<authkeystate><br />
<authkey>1i5g2aaf2bz09lyo867cuimqg</authkey><br />
<level>MANAGE</level><br />
<noncekey>'''4vrghpn0n8jxrrvoi3b7zta1c'''</noncekey><br />
<usercode>0907100000018</usercode><br />
<authorized>true</authorized><br />
</authkeystate><br />
</pre></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.register&diff=822Work.register2022-04-20T11:26:41Z<p>Adminwiki: /* Example */</p>
<hr />
<div>Registers or modifies a work.<br />
<br />
Work content can be specified:<br />
* with an upload ticket obtained from a previous upload (see [[work.upload.lookup]])<br />
* using a text request parameter<br />
* with an url where the work will be downloaded from<br />
<br />
Using an upload ticket or text parameter are both synchronous registrations. You can register a work asynchronously using an url and sha-1 of the content. Safe Creative engine will download the content of the work to be registered. Work will be in PROCESSING state and will not be visible on the user's work list until it has been downloaded and registration is then finished. You will receive a [[callback]] when this happens.<br />
<br />
If the ''code'' parameter is specified the work will be updated with the new data. <br />
If the work is in REGISTERED state, you cannot change the work title, alias, nor content. <br />
You cannot change the work content if you registered the work using asyncrhonous mode (register via url) and it has not been downloaded yet.<br />
<br />
If you are a partner, you can register a work as a copyright information provider (or informer). The authorizing user will be registered as informer and you must provide the authors' and copyright holders' names (see [[How to: Register a work as a copyright info provider]]).<br />
<br />
This call requires a [[nonce key]]<br />
<br />
= Info =<br />
* '''Component name:''' work.register<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Nonce key:''' Requires a [[nonce key]]<br />
* '''Authorization level:''' <br />
** ADD for registering a new work<br />
** MANAGE to modify an existing work<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''noncekey*''': [[nonce key]]<br />
* '''code''': Code of the work you want to modify<br />
* '''title:''' Title of the work. If not specified, it will be taken from the work file name.<br />
* '''profile:''' Registration profile code (see [[user.profiles]])<br />
** Registration profile is applied first, if no profile is specified then the user default profile is applied, if any. <br />
** The rest of the specified parameters replace the values of the profile.<br />
* '''excerpt:''' Work summary or description<br />
* '''license:''' Code of the license (see [[user.licenses]]) to apply to this work. <br />
** For new works, if no license nor profile is specified, work will be registered with all rights reserved.<br />
* '''worktype:''' Work type code (see [[work.types]])<br />
** Required for new works if no profile is specified<br />
* '''language:''' Work language code (see [[work.languages]])<br />
* '''tags:''' Comma-separated list of tags. When modifying a work, these will replace existing tags<br />
* '''extratags:''' Comma separated list of tags, to be added to existing tags<br />
* '''allowdownload:''' 1 when the work is publicly downloadable<br />
* '''registrypublic:''' 1 to make registration information public, 0 if registration is private.<br />
* '''usealias:''' 1 to register the work under a pseudonym<br />
* '''alias:''' pseudonym of the user to be asigned to the work<br />
* '''userauthor:''' 1 when the user is the work author<br />
* '''userrights:''' 1 when the user is a rights holder for the work<br />
* '''final:''' 1 if you want the work to be left in REGISTERED state and not PREREGISTERED<br />
* '''obs:''' extra private notes for the work<br />
* '''editlocked:''' For partners, user will not be able to edit the work through Safe Creative web<br />
* '''meta''N'':''' (multivalue) Meta data for works in JSON formmat. Eg: { "nsterm" : "dc:title" , "value": "Star Wars" , "attrs" : { "xml:lang" : "en" }}<br />
** Some metadata fields are required for audiovisual works. See [[#Metadata for audiovisual works | Metadata for audiovisual works]] below.<br />
* '''link''N'':''' (multivalue) Work external links, replace previous work links. Format is url|name|type where type can be DOWNLOAD or INFO. N must be 1..n<br />
* '''extralink''N'':''' (mutivalue) Work external links, to be added to the previously defined work links. Same format as ''linkN''<br />
* '''versionof:''' comma-separated list of work codes which the work is a version of. The specified works must exist and its state must be REGISTERED.<br />
* '''derivationof:''' comma-separated list of work codes which the work is derived from. The specified works must exist and its state must be REGISTERED.<br />
* '''compositionof:''' comma separated list of work codes which the work is composed of. The specified works must exist and its state must be REGISTERED.<br />
<br />
== For copyright info providers ==<br />
See [[How to: Register a work as a copyright info provider]] for a complete example<br />
* '''userinformer:''' 1 to register the work as a copyright info provider<br />
* '''author''N'':''' (multivalue) Full name of the work authors, as FirstName|MiddleName|LastName (middle name may be empty)<br />
* '''rightsholder''N'':''' (multivalue) Full name of the work rights holders, as FirstName|MiddleName|LastName (middle name may be empty)<br />
<br />
== Work content parameters ==<br />
<br />
=== Option A: Register a text ===<br />
* '''text:''' text to be registered<br />
* '''filename:''' file name for the content to be used on downloads<br />
<br />
=== Option B: Register a previously uploaded work ===<br />
* '''uploadticket:''' upload ticket obtained from [[work.upload.commit]] or the [[upload servlet]]<br />
<br />
=== Option C: Register via url ===<br />
* '''url:''' URL of the file to be registered<br />
* '''filename:''' file name for the downloaded content<br />
* '''checksum:''' SHA-1 hash of the content to be downloaded<br />
* '''size:''' size in bytes of the content to be downloaded<br />
<br />
You can only use one of these methods at the same time.<br />
<br />
== Metadata for audiovisual works ==<br />
<br />
Audiovisual works (work types: ''ffilm, mfilm, sfilm, tvfilm, serial, telenovela, other'') should be registered with their supported metadata tags to have a fully informed registration. For these type of works it's not necessary to provide a file or url for registration. If no file is provided, a text file with the work metadata information is automatically generated and used as evidence of registration.<br />
<br />
Metadata tags are provided in ''metadataN'' params as JSON values. Each JSON value has the following structure:<br />
<br />
{"nsterm": "''metadata tag name''", "value": "''metadata tag value''" }<br />
<br />
Some tags include additional attributes in an ''attrs'' field. E.g.:<br />
<br />
{"nsterm": "dc:title", "value": "English title", "attrs": { "xml:lang": "en" }}<br />
<br />
Some tags, such as dc:title, rol:actor,... may be repeated to support multiple titles, actors, etc.<br />
<br />
These are the supported metadata tags for audiovisual works. Required tags are marked with an asterisk (*).<br />
<br />
* '''dc:title''' Alternative title (can be repeated)<br />
** Must have an attribute '''xml:lang''' with the language of the title (ISO language code)<br />
* '''dc:abstract*''' Abstract or synopsis<br />
* '''xsd:gYear*''' Year of creation<br />
* '''dc:extent*''' Duration in seconds<br />
* '''gn:country''' Country of production (ISO code - can be repeated)<br />
* '''rol:director*''' Film director (can be repeated)<br />
* '''rol:producer''' Film producer (can be repeated)<br />
* '''rol:actor''' Actor/actress (can be repeated)<br />
* '''rol:screenwriter''' Screenwriter (can be repeated)<br />
* '''rol:composer''' Music composer (can be repeated)<br />
* '''rol:directorOfPhotography''' Director of photography (can be repeated)<br />
* '''rol:photographer''' Photographer (can be repeated)<br />
* '''rol:designer''' Designer (can be repeated)<br />
* '''rol:contributor''' Other film crew (can be repeated)<br />
* '''sc:color''' Color film (true|false)<br />
* '''sc:sound''' Film with sound (true|false)<br />
* '''sc:chapters''' Number of chapters (for serial and telenovela work types)<br />
<br />
= Returns =<br />
<br />
* '''workregistry'''<br />
** '''code''': Code of the registered work<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.register<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''allowdownload'''=1<br />
&'''excerpt'''=An+important+text+about+registry+philosophy<br />
&'''license'''=http%3A%2F%2Fcreativecommons.org%2Flicenses%2Fnc-sampling%2B%2F1.0%2F<br />
&'''noncekey'''=4vrghpn0n8jxrrvoi3b7zta1c<br />
&'''obs'''=More+info+at+%3Ca+href%3D%27http%3A%2F%2Fsafecreative.info%27%3Ehttp%3A%2F%2Fsafecreative.info%3C%2Fa%3E<br />
&'''registrypublic'''=1<br />
&'''tags'''=tag1%2C+tag2<br />
&'''text'''=Text+to+be+registered<br />
&'''title'''=My+first+registration<br />
&'''usealias'''=1<br />
&'''userauthor'''=1<br />
&'''worktype'''=article<br />
&'''ztime'''=1271749829429<br />
&'''signature'''=0042020a7ffc118d189aa27a9b78d1962e781667<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<workregistry><br />
<code>1004200146109</code><br />
</workregistry><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Nft.register&diff=821Nft.register2022-04-20T11:16:36Z<p>Adminwiki: Created page with "Registers an external NFT associated to a work. A NFT info page will be generated in IPFS. This call requires a nonce key = Info = * '''Component name:''' nft.register..."</p>
<hr />
<div>Registers an external NFT associated to a work.<br />
<br />
A NFT info page will be generated in IPFS.<br />
<br />
This call requires a [[nonce key]]<br />
<br />
= Info =<br />
* '''Component name:''' nft.register<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Nonce key:''' Requires a [[nonce key]]<br />
* '''Authorization level''': ADD<br />
* '''API trust level''': Partner<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''noncekey*''': [[nonce key]]<br />
* '''workcode*''': Code of the work associated to the NFT. The work must be in REGISTERED state.<br />
* '''tokentype*:''' NFT type (ERC720 or ERC1155)<br />
* '''network*:''' Blockchain network (ETHEREUM, POLYGON,...)<br />
* '''smartcontract*:''' Address of smart contract (0x...)<br />
* '''tokenid*:''' NFT token ID<br />
* '''wallet*:''' Minter wallet address (0x...)<br />
* '''language*:''' Language for info page<br />
** ''en'': English<br />
** ''es'': Spanish<br />
* '''supply:''' NFT issues supply (for ERC1155) defaults to 1<br />
* '''exclusive:''' 1 to mark this NFT as exclusive (no other NFT exists for the work)<br />
* '''licensetype:''' Type of license granted by the NFT<br />
** ''PRIVATE'': Non-commercial end user <br />
** ''PROFESSIONAL'': Professional end user<br />
** ''DISTRIBUTION'': Distributor<br />
** ''CUSTOM'': Custom license, must be accompanied by the ''customlicense'' parameter<br />
* '''customlicense:''' Full license text explaining the rights granted by the NFT over the work (for CUSTOM licensetype)<br />
* '''licenserights:''' Text explaining the rights or kind of usage granted by the NFT over the work<br />
* '''licenselimitations:''' Text explaining any limitations on the usage described by ''licenserights''<br />
** Eg. geographic limits, kind of allowed projects,...<br />
* '''numberofuses:''' Number of uses or copies of the work allowed by this NFT<br />
** For ''licenserights'' allowing to create physical copies of the work, this field will specify how many copies are allowed<br />
* '''validuntil:''' Date limit for the rights granted by this NFT<br />
** Date format: ''yyyy-mm-ddThh:mm:ssZ''<br />
* '''allowresale:''' 1 if this NFT can be resold by its owner, 0 otherwise (defaults to 1)<br />
* '''royaltywallet''N'':''' (multivalue) wallet address that receives royalties on sales of the NFT<br />
* '''royaltypercent''N'':''' (multivalue, integer) % of the sale price received as royalties by the corresponding wallet<br />
** There must be the same number of ''royaltywallet'' and ''royaltypercent'' parameters<br />
* '''imageurl*''': HTTP or IPFS url of the NFT image<br />
* '''audiourl''': HTTP or IPFS url of the NFT audio file<br />
* '''videourl''': HTTP or IPFS url of the NFT video file<br />
<br />
= Returns =<br />
<br />
* '''nftregistry'''<br />
** '''id''': NFT registration internal ID<br />
** '''workCode''': Code of the registered work<br />
** '''licenseIpfsUrl''': IPFS url of the generated NFT info page<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=nft.register<br />
&'''authkey'''=28c2cvwp1iljjgoai4u0v57mk<br />
&'''noncekey'''=1jnpyhwkmowihrlwix5qls204<br />
&'''workcode'''=2204200018768<br />
&'''network'''=ETHEREUM<br />
&'''smartcontract'''=0x0000000000<br />
&'''tokenid'''=7890<br />
&'''tokentype'''=ERC1155<br />
&'''wallet'''=0xc9AEBf2e4c05e2674cc59E20C9E526a36c785252<br />
&'''imageurl'''=ipfs%3A%2F%2Fipfs%2FQmZP3nkJiAFyLAkRgZjcqjJWVg53ZyqfueftUzmB8g7Mio<br />
&'''audiourl'''=ipfs%3A%2F%2Fipfs%2FQmWqmqEPjCewqLzDcSmmuN5pKV1MsWqN1CvsJWqb46Aka1%2Fanimation.mp3<br />
&'''language'''=en<br />
&'''licenselimitations'''=Sport+transmissions+and+private+events<br />
&'''licenserights'''=Public+reproduction<br />
&'''licensetype'''=PROFESSIONAL<br />
&'''ztime'''=1650445718415<br />
&'''signature'''=b4e3ddacc5776b8dcb2c86b4e1e8571c2c1362bd<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<nftregistry><br />
<id>0d245973-1371-4271-b595-b87c4f7ae1ac</id><br />
<workCode>2204200018768</workCode><br />
<licenseIpfsUrl>ipfs://ipfs/QmSpSfkRPU4iBQh9Vq82Y6AGe86zjxUPyKP8RFn1dde4PF/info.html</licenseIpfsUrl><br />
</nftregistry><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.changethumbnail&diff=820Work.changethumbnail2022-04-20T10:38:32Z<p>Adminwiki: Created page with "Changes the thhumbnail of a work. The thumbnail image can be specified: * with an upload ticket obtained from a previous upload (see work.upload.lookup) * with an url whe..."</p>
<hr />
<div>Changes the thhumbnail of a work.<br />
<br />
The thumbnail image can be specified:<br />
* with an upload ticket obtained from a previous upload (see [[work.upload.lookup]])<br />
* with an url where the image will be downloaded from<br />
<br />
Using an upload ticket is a synchronous operation, the thumbnail will be changed as soon as the call ends. If you use an url, the call will end immediately and the download will be queued. Once the thumbnail is downloaded, it will be changed in the work.<br />
<br />
The work must be in REGISTERED or PRE_REGISTERED state. If the work is PRE_REGISTERED and the work file is changed, the custom thumbnail will be lost and a new thumbnail will be generated from the new file.<br />
<br />
If you are a partner, you can register a work as a copyright information provider (or informer). The authorizing user will be registered as informer and you must provide the authors' and copyright holders' names (see [[How to: Register a work as a copyright info provider]]).<br />
<br />
= Info =<br />
* '''Component name:''' work.changethumbnail<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' <br />
** MANAGE<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''workcode*''': Code of the work you want to modify<br />
* '''uploadticket:''' upload ticket obtained from [[work.upload.commit]] or the [[upload servlet]]<br />
* '''url:''' URL of the image to be used as thumbnail<br />
<br />
You must use either the ''url'' or ''uploadticket'' parameters, but not both.<br />
<br />
= Returns =<br />
* '''restvalueresponse'''<br />
** '''state''': ready<br />
<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.changethumbnail<br />
&'''authkey'''=1cae00nyf3z3ooi6hdcgqnmc5<br />
&'''url'''=https%3A%2F%2Fgateway.pinata.cloud%2Fipfs%2FQmZP3nkJiAFyLAkRgZjcqjJWVg53ZyqfueftUzmB8g7Mio<br />
&'''workcode'''=2204200018744<br />
&'''ztime'''=1650435290212<br />
&'''signature'''=101e7fc8bc1c142a02141b3a369dd0572e381f75<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<restvalueresponse><br />
<state>ready</state><br />
</restvalueresponse><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Semantic.query&diff=799Semantic.query2021-05-07T08:46:02Z<p>Adminwiki: Created page with "This is a prototype for Safe Creative semantic services. It allows to query a work registration info by providing some kind of digital fingerprint = Syntax = This component..."</p>
<hr />
<div>This is a prototype for Safe Creative semantic services.<br />
<br />
It allows to query a work registration info by providing some kind of digital fingerprint<br />
<br />
= Syntax =<br />
<br />
This component uses a different syntax from the rest of the API:<br />
<br />
<pre><br />
http://api-search.safecreative.org/semantic-query?param=value&....<br />
</pre><br />
<br />
= Parameters = <br />
You can use any of the following parameters on your semantic queries:<br />
* '''adler32''': Adler32 checksum of file contents (16 hex digits- first 8 digits should be zero)<br />
* '''crc32''': CRC32 checksum of file contents (16 hex digits – first 8 digits should be zero)<br />
* '''ed2kfileid''': File hash for ed2k network (32 hex digits)<br />
* '''md2''': MD2 hash of file contents (32 hex digits)<br />
* '''md4''': MD4 hash of file contents (32 hex digits)<br />
* '''md5''': MD5 hash of file contents (32 hex digits)<br />
* '''part32k.first''': SHA1 hash of the first 32k of file contents (40 hex digits)<br />
* '''part32k.last''': SHA1 hash of the last 32k of file contents (40 hex digits)<br />
* '''part32k.middle''': SHA1 hash of middle 32k of file contents (40 hex digits)<br />
** It is calculated as the SHA1 of a 32k chunk starting on file position (filesize – 32k) / 2.<br />
** If the file size is less than 32k, it is the hash of the whole file.<br />
* '''sha''': SHA1 hash of file contents(40 hex digits)<br />
* '''sha1''': SHA1 hash of file contents (40 hex digits)<br />
* '''sha384''': SHA384 hash of file contents (96 hex digits)<br />
* '''sha512''': SHA512 hash of file contents (128 hex digits)<br />
* '''size''': File size in bytes<br />
* '''torrent.*''': SHA1 hash of torrent chunk hashes for different chunk sizes (40 hex digits)<br />
** '''torrent.32768''': 32k chunks<br />
** '''torrent.49152''': 48k chunks<br />
** '''torrent.65536''': 64k chunks<br />
** '''torrent.98304''': 96k chunks<br />
** '''torrent.131072''': 128k chunks<br />
** '''torrent.196608''': 192k chunks<br />
** '''torrent.262144''': 256k chunks<br />
** '''torrent.393216''': 384k chunks<br />
** '''torrent.524288''': 512k chunks<br />
** '''torrent.786432''': 768k chunks<br />
** '''torrent.1048576''': 1024k chunks<br />
** '''torrent.1572864''': 1536k chunks<br />
** '''torrent.2097152''': 2048k chunks<br />
** '''torrent.3145728''': 3072k chunks<br />
** '''torrent.4194304''': 4096k chunks<br />
<br />
All binary contents must be encoded as a string of hexadecimal lowercase digits (0123456789abcdef), using two digits per byte (e.g. 8 bytes = 16 hex digits).<br />
<br />
= Returns =<br />
<br />
* '''works'''<br />
** '''work'''<br />
*** '''code''': Safe Creative work code <br />
*** '''title''': Work title<br />
*** '''authors''': List of authors<br />
**** '''author'''<br />
***** '''code''': Author's Safe Creative user code<br />
***** '''name''': Author's full name<br />
***** '''human-url''': URL to the author's Safe Creative public profile<br />
*** '''rights-holders''': List of rights holders<br />
**** '''rights-holder'''<br />
***** '''code''': Rights holder's Safe Creative user code<br />
***** '''name''': Rights holder's full name<br />
***** '''human-url''': URL to the rights holder's Safe Creative public profile<br />
*** '''thumbnail''': URL to the work thumbnail (if any)<br />
*** '''license''': Work license<br />
**** '''code''': License code<br />
**** '''name''': License name<br />
**** '''shortname''': License short name<br />
**** '''human-url''': URL to license text<br />
**** '''features''': License features (see [[user.licenses]]<br />
*** '''human-url''': URL to this work web page in Safe Creative<br />
*** '''machine-url''': URL to this work API info response (see [[work.get]])*<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<pre><br />
http://api-search.safecreative.org/semantic-query?md5=9a4bca4293523413c176dd6cd23d20c2<br />
</pre><br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<works><br />
<work><br />
<code>0908044196577</code><br />
<title>atardecer plateado</title><br />
<authors><br />
<author><br />
<code>0709270000528</code><br />
<name>Mario Pena Zapatería</name><br />
<human-url>http://www.safecreative.org/user/0709270000528</human-url><br />
</author><br />
</authors><br />
<thumbnail>http://thumbnails-safecreative-org.s3.amazonaws.com/1/00000122/e579/ca7e/dc6a/a75443e756ad/atardecerplateado_thumb.png</thumbnail><br />
<license><br />
<code>http://creativecommons.org/licenses/by-sa/3.0/</code><br />
<name>Creative Commons Reconocimiento-Compartirigual 3.0</name><br />
<shortname>CC by-sa</shortname><br />
<human-url>http://creativecommons.org/licenses/by-sa/3.0/legalcode</human-url><br />
<features><br />
<recognition>YES</recognition><br />
<distribution>YES</distribution><br />
<derivations>INHERITANCE</derivations><br />
<commercial>YES</commercial><br />
</features><br />
</license><br />
<human-url>http://www.safecreative.org/work/0908044196577</human-url><br />
<machine-url>http://www.safecreative.org/v2/?component=work.get&amp;code=0908044196577</machine-url><br />
</work><br />
</works><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Category:API_component&diff=798Category:API component2021-05-07T08:45:16Z<p>Adminwiki: Created blank page</p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Ztime&diff=797Ztime2021-05-07T08:44:36Z<p>Adminwiki: Created page with "Returns the ztime value (milliseconds from Jan 1, 1970) from the API server, so you can adjust the offset from your local clock if required. = Info = * ''..."</p>
<hr />
<div>Returns the [[ztime parameter|ztime value]] (milliseconds from Jan 1, 1970) from the API server, so you can adjust the offset from your local clock if required.<br />
<br />
= Info =<br />
* '''Component name:''' ztime<br />
* '''Signature:''' No signature required<br />
* '''Timestamp:''' Ztime is not required<br />
* '''API trust level''': Public<br />
<br />
= Parameters = <br />
This component requires no additional parameters<br />
<br />
= Returns =<br />
* '''ztime''': Server Z-Ttime<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/?component=ztime</nowiki><br />
<br />
[https://api.safecreative.org/v2/?component=ztime Test it on your browser]<br />
<br />
RESPONSE:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<ztime>1271749821453</ztime><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Paginated_responses&diff=796Paginated responses2021-05-07T08:43:00Z<p>Adminwiki: Created page with "Some components return a paginated list. Use the page parameter to get different pages. Page size is fixed, depending on the called component. = Syntax = All paginated resp..."</p>
<hr />
<div>Some components return a paginated list. Use the page parameter to get different pages.<br />
<br />
Page size is fixed, depending on the called component.<br />
<br />
= Syntax =<br />
<br />
All paginated responses share the same structure:<br />
<br />
* '''listpage'''<br />
** '''recordtotal''': Total number of records in the list<br />
** '''pagetotal''': Total number of pages<br />
** '''list''': List of elements in the current list<br />
*** ''elements'': XML items, depending on the called component<br />
<br />
Note that the response does not include the number of the returned page. You should remember what you asked for.<br />
<br />
= Example = <br />
<br />
REQUEST for page 1<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''component'''=user.licenses<br />
&'''page'''=1<br />
&'''ztime'''=1271749823888<br />
&'''signature'''=0c740f90e64eac87502c4a0630363ad65fbad7ec<br />
<br />
RESPONSE for page 1<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<pre><br />
<listpage><br />
<recordtotal>218</recordtotal><br />
<pagetotal>9</pagetotal><br />
<list><br />
<license><br />
<code>copyright</code><br />
<name>All rights reserved</name><br />
<shortname>(c)</shortname><br />
<url>http://www.safecreative.org/license/copyright</url><br />
<features><br />
<recognition>NOT_APPLICABLE</recognition><br />
<distribution>NO</distribution><br />
<derivations>NO</derivations><br />
<timelimited>NOT_APPLICABLE</timelimited><br />
<commercial>NO</commercial><br />
</features><br />
</license><br />
[...]<br />
<license><br />
<code>http://creativecommons.org/licenses/by/2.5/my/</code><br />
<name>Attribution 2.5 Malaysia</name><br />
<shortname>CC by 2.5 my</shortname><br />
<url>http://creativecommons.org/licenses/by/2.5/my/legalcode</url><br />
<jurisdiction>my</jurisdiction><br />
<features><br />
<recognition>YES</recognition><br />
<distribution>YES</distribution><br />
<derivations>YES</derivations><br />
<timelimited>NOT_APPLICABLE</timelimited><br />
<commercial>YES</commercial><br />
</features><br />
</license><br />
</list><br />
</listpage><br />
</pre><br />
<br />
REQUEST for page 2<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''component'''=user.licenses<br />
&'''page'''=2<br />
&'''ztime'''=1271749823888<br />
&'''signature'''=0c740f90e64eac87502c4a0630363ad65fbad7ec<br />
<br />
RESPONSE for page 2<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<listpage><br />
<recordtotal>218</recordtotal><br />
<pagetotal>9</pagetotal><br />
<list><br />
<license><br />
<code>http://creativecommons.org/licenses/by/2.5/nl/</code><br />
<name>Attribution 2.5 Netherlands</name><br />
<shortname>CC by 2.5 nl</shortname><br />
<url>http://creativecommons.org/licenses/by/2.5/nl/legalcode</url><br />
<jurisdiction>nl</jurisdiction><br />
<features><br />
<recognition>YES</recognition><br />
<distribution>YES</distribution><br />
<derivations>YES</derivations><br />
<timelimited>NOT_APPLICABLE</timelimited><br />
<commercial>YES</commercial><br />
</features><br />
</license><br />
[...]<br />
<license><br />
<code>http://creativecommons.org/licenses/by-nc/2.5/cn/</code><br />
<name>Attribution-NonCommercial 2.5 China Mainland</name><br />
<shortname>CC by-nc 2.5 cn</shortname><br />
<url>http://creativecommons.org/licenses/by-nc/2.5/cn/legalcode</url><br />
<jurisdiction>cn</jurisdiction><br />
<features><br />
<recognition>YES</recognition><br />
<distribution>YES</distribution><br />
<derivations>YES</derivations><br />
<timelimited>NOT_APPLICABLE</timelimited><br />
<commercial>NO</commercial><br />
</features><br />
</license><br />
</list><br />
</listpage><br />
</pre></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Troubleshooting&diff=795Troubleshooting2021-05-07T08:39:43Z<p>Adminwiki: Created page with "Techniques and tools for solving common problems and gotchas. Also check api service status. * Signatures * Charset tro..."</p>
<hr />
<div>Techniques and tools for solving common problems and gotchas. Also check [[API Service Status|api service status]].<br />
<br />
* [[Signature troubleshooting|Signatures]]<br />
* [[Charset troubleshooting|Charsets]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=MediaWiki:Sidebar&diff=794MediaWiki:Sidebar2021-05-07T08:27:58Z<p>Adminwiki: </p>
<hr />
<div>* Safe Creative API<br />
** API Overview|API Overview<br />
** API Reference|API Reference<br />
** How to|How to<br />
** Troubleshooting|Troubleshooting<br />
** API Wrappers|API Wrappers<br />
<br />
<!-- * navigation --><br />
<!-- ** mainpage|mainpage-description --><br />
<!-- ** portal-url|portal --><br />
<!-- ** currentevents-url|currentevents --><br />
<!-- ** randompage-url|randompage --><br />
<!-- ** helppage|help --><br />
<!-- ** recentchanges-url|recentchanges --><br />
<br />
* SEARCH<br />
<br />
* Safe Creative<br />
** http://www.safecreative.org|Safe Creative Web<br />
** http://en.safecreative.net|Blog<br />
** http://es.safecreative.net|Blog en español<br />
<br />
* Safe Stamper<br />
** https://wiki.safestamper.com|Safe Stamper API <br />
** https://www.safestamper.com|Safe Stamper <br />
<br />
* TOOLBOX<br />
* LANGUAGES</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=MediaWiki:Sidebar&diff=793MediaWiki:Sidebar2021-05-07T08:27:37Z<p>Adminwiki: </p>
<hr />
<div>* Safe Creative API<br />
** API Overview|API Overview<br />
** API Reference|API Reference<br />
** How to|How to<br />
** Troubleshooting|Troubleshooting<br />
** API Wrappers|API Wrappers<br />
<br />
<!-- * navigation --><br />
<!-- ** mainpage|mainpage-description --><br />
<!-- ** portal-url|portal --><br />
<!-- ** currentevents-url|currentevents --><br />
<!-- ** randompage-url|randompage --><br />
<!-- ** helppage|help --><br />
<!-- ** recentchanges-url|recentchanges --><br />
<br />
* SEARCH<br />
<br />
* Safe Creative<br />
** http://www.safecreative.org|Safe Creative Web<br />
** http://en.safecreative.net|Blog<br />
** http://es.safecreative.net|Blog en español<br />
** http://forum.safecreative.net|Community Forum<br />
<br />
* Safe Stamper<br />
** https://wiki.safestamper.com|Safe Stamper API <br />
** https://www.safestamper.com|Safe Stamper <br />
<br />
* TOOLBOX<br />
* LANGUAGES</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=MediaWiki:Sidebar&diff=792MediaWiki:Sidebar2021-05-07T08:24:41Z<p>Adminwiki: Created page with "* Safe Creative API ** API Overview|API Overview ** API Reference|API Reference ** How to|How to ** Troubleshooting|Troubleshooting ** API Wrappers|API Wrappers * Safe Stampe..."</p>
<hr />
<div>* Safe Creative API<br />
** API Overview|API Overview<br />
** API Reference|API Reference<br />
** How to|How to<br />
** Troubleshooting|Troubleshooting<br />
** API Wrappers|API Wrappers<br />
<br />
* Safe Stamper API<br />
** Safe Stamper Web API | Safe Stamper Web<br />
<br />
<!-- * Safe Creative Cloud API --><br />
<!-- ** Safe Creative Cloud: Overview|Overview --><br />
<!-- ** Safe Creative Cloud: API Reference|API Reference --><br />
<!-- ** Safe Creative Cloud: Tutorials|Tutorials --><br />
<!-- ** Safe Creative Cloud: Client libraries|API Wrappers --><br />
<br />
<!-- * navigation --><br />
<!-- ** mainpage|mainpage-description --><br />
<!-- ** portal-url|portal --><br />
<!-- ** currentevents-url|currentevents --><br />
<!-- ** randompage-url|randompage --><br />
<!-- ** helppage|help --><br />
<!-- ** recentchanges-url|recentchanges --><br />
<br />
* SEARCH<br />
<br />
* Safe Creative<br />
** http://www.safecreative.org|Safe Creative Web<br />
** http://en.safecreative.net|Blog<br />
** http://es.safecreative.net|Blog en español<br />
** http://forum.safecreative.net|Community Forum<br />
<br />
* TOOLBOX<br />
* LANGUAGES</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=MediaWiki:Mainpage&diff=791MediaWiki:Mainpage2021-05-07T08:16:28Z<p>Adminwiki: Created page with "Safe Creative Wiki"</p>
<hr />
<div>Safe Creative Wiki</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Workstates.png&diff=790File:Workstates.png2021-05-07T08:13:59Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Userauth.png&diff=789File:Userauth.png2021-05-07T08:13:47Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Upload.png&diff=788File:Upload.png2021-05-07T08:13:37Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:SafeCreative-Logo.png&diff=787File:SafeCreative-Logo.png2021-05-07T08:13:26Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Safecreative.jpg&diff=786File:Safecreative.jpg2021-05-07T08:12:41Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Relations.png&diff=785File:Relations.png2021-05-07T08:12:29Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Registerbyurl.png&diff=784File:Registerbyurl.png2021-05-07T08:12:16Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Registerbyurl.jpg&diff=783File:Registerbyurl.jpg2021-05-07T08:12:01Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Gatekeeper.png&diff=782File:Gatekeeper.png2021-05-07T08:11:48Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:Arquitecture.png&diff=781File:Arquitecture.png2021-05-07T08:11:37Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=File:APITrust.png&diff=780File:APITrust.png2021-05-07T08:11:24Z<p>Adminwiki: </p>
<hr />
<div></div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Ztime_parameter&diff=779Ztime parameter2021-05-07T08:07:42Z<p>Adminwiki: 6 revisions imported</p>
<hr />
<div>Some functions need a time-Z parameter, that is the GMT or UTC time, expressed as milliseconds since January 1, 1970, 00:00:00 GMT.<br />
<br />
You can use the [[ztime component]] to get the ztime from the server, so you can adjust the offset of the clock if required.<br />
<br />
When you send a ztime parameter in your request, the maximum difference between the server ztime and the request ztime is +-5 seconds</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Ztime_component&diff=772Ztime component2021-05-07T08:07:42Z<p>Adminwiki: 1 revision imported</p>
<hr />
<div>#REDIRECT [[Ztime]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.uploadticket.status&diff=770Work.uploadticket.status2021-05-07T08:07:42Z<p>Adminwiki: 1 revision imported</p>
<hr />
<div>Returns the state of uploadTicket.<br />
<br />
= Info =<br />
* '''Component name:''' work.uploadticket.status<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' ADD<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''uploadticket*:''' Upload ticket to check status<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''restvalueresponse'''<br />
** '''state''': Status of uploadTicket<br />
*** If state is ready, the upload has finished<br />
*** If state is processing, the upload is in progress<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.uploadticket.status<br />
&'''authkey'''=6f66h1vo4mjfnzxu4qhdk4shf<br />
&'''uploadticket'''=CZ33TfxQ3OJvaPDc8qD2Ht6X2ZLzcZT0BF1mnDvmEt0N2P18VLxSQqIcUUwde_ojCSyA4Sk90fFeSI7ItKItB9DClIdu88at<br />
&'''ztime'''=1409892204072<br />
&'''signature'''=369c1c8aa498f02b0e7aa03974164b212b00e961<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<restvalueresponse><br />
<state>ready</state><br />
</restvalueresponse><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.upload.lookup&diff=768Work.upload.lookup2021-05-07T08:07:42Z<p>Adminwiki: 11 revisions imported</p>
<hr />
<div>Returns an upload URL and upload ID.<br />
<br />
To upload a work you must use [[work.upload.begin]], [[work.upload.chunk]] and [[work.upload.commit]] or upload the file by POST to an [[API upload servlet]]. These components are not available through the standard API endpoint (http://api.safecreative.org) but through dedicated upload servers. Before calling any of these components, you must call '''work.upload.lookup''' to get an upload server and id.<br />
<br />
= Info =<br />
* '''Component name:''' work.upload.lookup<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' ADD<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''filename*:''' File name of the work to upload<br />
* '''bypost:''' Work will be uploaded using an [[upload servlet]] (true) or using [[work.upload.begin]], [[work.upload.chunk]] and [[work.upload.commit]] (false, default value)<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''workuploadlookup'''<br />
** '''uploadurl''': Upload URL<br />
*** If bypost is true, ''uploadurl'' is the direct URL to an [[API upload servlet]] which will handle the HTTP POST upload<br />
*** If bypost is false, ''uploadurl'' is the base URL of the upload API server (you will need to add <tt>/v2/</tt> to the URL when calling components)<br />
** '''uploadid''': Upload ID, must be used as a parameter in the rest of upload components<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.upload.lookup<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''filename'''=long.txt<br />
&'''ztime'''=1271749837035<br />
&'''signature'''=668eea80a7f6654a7ec65a74583bbacbc2edc6b5<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<workuploadlookup><br />
<uploadurl>http://upload01.safecreative.org</uploadurl><br />
<uploadid>3c33a96c-7743-43d0-9614-db70fa46d3ad</uploadid><br />
</workuploadlookup><br />
</pre><br />
<br />
REQUEST (bypost):<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.upload.lookup<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''bypost'''=true<br />
&'''filename'''=my+file+name<br />
&'''ztime'''=1271749837445<br />
&'''signature'''=68b97266ea439203402ac496f27016a01878290a<br />
<br />
RESPONSE (bypost):<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<workuploadlookup><br />
<uploadurl>http://upload01.safecreative.org/api-upload</uploadurl><br />
<uploadid>c5866e13-6d9a-41a5-9578-eacba8c80e02</uploadid><br />
</workuploadlookup><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.upload.commit&diff=756Work.upload.commit2021-05-07T08:07:41Z<p>Adminwiki: 4 revisions imported</p>
<hr />
<div>Ends an upload-by-chunk process. You must send the SHA-1 hash of the uploaded file to checksum the upload.<br />
<br />
This component must be called on an upload API server returned by [[work.upload.lookup]].<br />
<br />
This components returns an ''uploadticket'' to be used on other components like [[work.register]].<br />
<br />
= Info =<br />
* '''Component name:''' work.upload.commit<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' ADD<br />
* '''API trust level''': Standard<br />
* '''API server''': Upload server returned by [[work.upload.lookup]]<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key of the work owner<br />
* '''ztime*:''' Z-Timestamp<br />
* '''uploadid*:''' Upload ID obtained from [[work.upload.lookup]]<br />
* '''length*:''' Uploaded file size<br />
* '''checksum*:''' Uploaded file SHA-1 hash<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''workuploadcommit'''<br />
** '''uploadticket''': Upload ticket<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://upload01.safecreative.org/v2/</nowiki><br />
?'''component'''=work.upload.commit<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''checksum'''=9f9e051a32f6a773335a0cc1d4cf94d17b49faa6<br />
&'''length'''=14<br />
&'''uploadid'''=3c33a96c-7743-43d0-9614-db70fa46d3ad<br />
&'''ztime'''=1271749837035<br />
&'''signature'''=f53cf9e21778719e599f6ad39bd85924ecb0bc23<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<workuploadcommit><br />
<uploadticket>HvWIbGj7anAW8Nm6LoroakJAPHUjtW_CcZMI8QUOQ1jV2lkRW-jU27ukjPxRvTKk2bL0rOuFow2yiJtmLSvK_9iXZzC_c1CkcJYOSb0Kq8XOzk_CovkO4cfzzNa9NouQVeYoyO6UAXod9xI05wGlboss2jDrN974Z5qgSIjVTLtxDg1mdUFevdbdJXoJr_8T6NJEk3ZnlBXxgq3eEz7NvjvDKp_TDBWuj0UaUOJe_PtcMO0sHrZ5GIfM0yTPHSNE</uploadticket><br />
</workuploadcommit><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.upload.chunk&diff=751Work.upload.chunk2021-05-07T08:07:41Z<p>Adminwiki: 7 revisions imported</p>
<hr />
<div>Upload a part of a work contents. Work contents are sent encoded in base64. You can send a chunk more than once, and chunk order is not relevant.<br />
<br />
This component must be called on an upload API server returned by [[work.upload.lookup]] and after having called [[work.upload.begin]] with the same server and uploadid.<br />
<br />
When you have sent all work content chunks, you must call [[work.upload.commit]] to finish the upload process.<br />
<br />
= Info =<br />
* '''Component name:''' work.upload.chunk<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' ADD<br />
* '''API trust level''': Standard<br />
* '''API server''': Upload server returned by [[work.upload.lookup]]<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''uploadid*:''' Upload ID obtained from [[work.upload.lookup]]<br />
* '''data*:''' Chunk contents, Base64-encoded<br />
* '''offset*:''' Position of the first byte of the chunk within the full file (first byte is 0)<br />
** If all chunks have the same size (''<chunksize>'' bytes)<br />
*** First chunk has offset 0<br />
*** Second chunk has offset ''<chunksize>''<br />
*** Third chunk has offset 2*''<chunksize>''<br />
*** ...<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''workuploadchunk'''<br />
** '''state''': continue<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://upload01.safecreative.org/v2/</nowiki><br />
?'''component'''=work.upload.chunk<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''data'''=VmVyeSBsb25nIGZpbGU%3D<br />
&'''offset'''=0<br />
&'''uploadid'''=3c33a96c-7743-43d0-9614-db70fa46d3ad<br />
&'''ztime'''=1271749837035<br />
&'''signature'''=f53cf9e21778719e599f6ad39bd85924ecb0bc23<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<workuploadchunk><br />
<state>continue</state><br />
</workuploadchunk><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.upload.begin&diff=743Work.upload.begin2021-05-07T08:07:41Z<p>Adminwiki: 6 revisions imported</p>
<hr />
<div>Initiates an upload process. This component must be called through an upload API server returned by [[work.upload.lookup]]<br />
<br />
Once this method has been called you can call [[work.upload.chunk]] to upload the work contents.<br />
<br />
= Info =<br />
* '''Component name:''' work.upload.begin<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' ADD<br />
* '''API trust level''': Standard<br />
* '''API server''': Upload server returned by [[work.upload.lookup]]<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''uploadid*:''' Upload ID obtained from [[work.upload.lookup]]<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''restvalueresponse'''<br />
** '''state''': ready<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://upload01.safecreative.org/v2/</nowiki><br />
?'''component'''=work.upload.begin<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''uploadid'''=3c33a96c-7743-43d0-9614-db70fa46d3ad<br />
&'''ztime'''=1271749837035<br />
&'''signature'''=668eea80a7f6654a7ec65a74583bbacbc2edc6b5<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<restvalueresponse><br />
<state>ready</state><br />
</restvalueresponse><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.types.tree&diff=736Work.types.tree2021-05-07T08:07:40Z<p>Adminwiki: 3 revisions imported</p>
<hr />
<div>Returns a list of work type groups and its work types<br />
<br />
= Info =<br />
* '''Component name:''' work.types.tree<br />
* '''Signature:''' No signature required<br />
* '''Timestamp:''' Ztime is not required<br />
* '''API trust level''': Public<br />
<br />
= Parameters = <br />
* '''locale:''' Locale for work type names<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''worktypegroups'''<br />
** '''worktypegroup'''<br />
*** '''code''': Work type group code<br />
*** '''name''': Work type group name<br />
*** '''worktypes''': List of work types in this group<br />
**** '''worktype'''<br />
***** '''code''': Work type code<br />
***** '''name''': Work type name<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.types.tree<br />
&'''locale'''=en<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<worktypegroups> <br />
<worktypegroup> <br />
<code>Literary</code> <br />
<name>Literary</name> <br />
<worktypes> <br />
<worktype> <br />
<code>article</code> <br />
<name>Article</name> <br />
</worktype> <br />
<worktype> <br />
<code>narrative</code> <br />
<name>Narrative, Essay</name> <br />
</worktype> <br />
<worktype> <br />
<code>technical</code> <br />
<name>Technical</name> <br />
</worktype> <br />
<worktype> <br />
<code>education</code> <br />
<name>Education, Informative</name> <br />
</worktype> <br />
<worktype> <br />
<code>comic</code> <br />
<name>Comic</name> <br />
</worktype> <br />
<worktype> <br />
<code>literature</code> <br />
<name>Literary: Other</name> <br />
</worktype> <br />
</worktypes> <br />
</worktypegroup> <br />
<worktypegroup> <br />
<code>Video</code> <br />
<name>Video</name> <br />
<worktypes> <br />
<worktype> <br />
<code>cinema</code> <br />
<name>Cinematography</name> <br />
</worktype> <br />
<worktype> <br />
<code>animation</code> <br />
<name>Animation</name> <br />
</worktype> <br />
<worktype> <br />
<code>video</code> <br />
<name>Video: Other</name> <br />
</worktype> <br />
</worktypes> <br />
</worktypegroup> <br />
<worktypegroup> <br />
<code>Audio</code> <br />
<name>Audio</name> <br />
<worktypes> <br />
<worktype> <br />
<code>music</code> <br />
<name>Music</name> <br />
</worktype> <br />
<worktype> <br />
<code>podcast</code> <br />
<name>Podcast</name> <br />
</worktype> <br />
<worktype> <br />
<code>audio</code> <br />
<name>Audio: Other</name> <br />
</worktype> <br />
</worktypes> <br />
</worktypegroup> <br />
<worktypegroup> <br />
<code>Artistic</code> <br />
<name>Artistic</name> <br />
<worktypes> <br />
<worktype> <br />
<code>drawing</code> <br />
<name>Drawing, Painting</name> <br />
</worktype> <br />
<worktype> <br />
<code>photo</code> <br />
<name>Photography</name> <br />
</worktype> <br />
<worktype> <br />
<code>drama</code> <br />
<name>Choreography and drama</name> <br />
</worktype> <br />
<worktype> <br />
<code>multimedia</code> <br />
<name>Electronic pages and Multimedia</name> <br />
</worktype> <br />
<worktype> <br />
<code>model3D</code> <br />
<name>3D Models</name> <br />
</worktype> <br />
<worktype> <br />
<code>sculpture</code> <br />
<name>Sculpture</name> <br />
</worktype> <br />
<worktype> <br />
<code>artistic</code> <br />
<name>Artistic: Other</name> <br />
</worktype> <br />
</worktypes> <br />
</worktypegroup> <br />
<worktypegroup> <br />
<code>Project</code> <br />
<name>Project</name> <br />
<worktypes> <br />
<worktype> <br />
<code>architecture</code> <br />
<name>Architectural and engineering designs and plans</name> <br />
</worktype> <br />
<worktype> <br />
<code>software</code> <br />
<name>Software and Database designs</name> <br />
</worktype> <br />
<worktype> <br />
<code>model</code> <br />
<name>Scale Model</name> <br />
</worktype> <br />
<worktype> <br />
<code>project</code> <br />
<name>Project: Other</name> <br />
</worktype> <br />
</worktypes> <br />
</worktypegroup> <br />
</worktypegroups><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.types&diff=732Work.types2021-05-07T08:07:40Z<p>Adminwiki: 4 revisions imported</p>
<hr />
<div>Returns the list of work types<br />
<br />
= Info =<br />
* '''Component name:''' work.types<br />
* '''Signature:''' No signature required<br />
* '''Timestamp:''' Ztime is not required<br />
* '''API trust level''': Public<br />
<br />
= Parameters = <br />
* '''locale:''' Locale for work type names<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''worktypes'''<br />
** '''worktype'''<br />
*** '''code''': Work type code<br />
*** '''name''': Work type name<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.types<br />
&'''locale'''=en<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<worktypes> <br />
<worktype> <br />
<code>model3D</code> <br />
<name>3D Models</name> <br />
</worktype> <br />
<worktype> <br />
<code>animation</code> <br />
<name>Animation</name> <br />
</worktype> <br />
<worktype> <br />
<code>architecture</code> <br />
<name>Architectural and engineering designs and plans</name> <br />
</worktype> <br />
<worktype> <br />
<code>article</code> <br />
<name>Article</name> <br />
</worktype> <br />
<worktype> <br />
<code>artistic</code> <br />
<name>Artistic: Other</name> <br />
</worktype> <br />
<worktype> <br />
<code>audio</code> <br />
<name>Audio: Other</name> <br />
</worktype> <br />
<worktype> <br />
<code>drama</code> <br />
<name>Choreography and drama</name> <br />
</worktype> <br />
<worktype> <br />
<code>cinema</code> <br />
<name>Cinematography</name> <br />
</worktype> <br />
<worktype> <br />
<code>comic</code> <br />
<name>Comic</name> <br />
</worktype> <br />
<worktype> <br />
<code>drawing</code> <br />
<name>Drawing, Painting</name> <br />
</worktype> <br />
<worktype> <br />
<code>education</code> <br />
<name>Education, Informative</name> <br />
</worktype> <br />
<worktype> <br />
<code>multimedia</code> <br />
<name>Electronic pages and Multimedia</name> <br />
</worktype> <br />
<worktype> <br />
<code>literature</code> <br />
<name>Literary: Other</name> <br />
</worktype> <br />
<worktype> <br />
<code>music</code> <br />
<name>Music</name> <br />
</worktype> <br />
<worktype> <br />
<code>narrative</code> <br />
<name>Narrative, Essay</name> <br />
</worktype> <br />
<worktype> <br />
<code>photo</code> <br />
<name>Photography</name> <br />
</worktype> <br />
<worktype> <br />
<code>podcast</code> <br />
<name>Podcast</name> <br />
</worktype> <br />
<worktype> <br />
<code>project</code> <br />
<name>Project: Other</name> <br />
</worktype> <br />
<worktype> <br />
<code>model</code> <br />
<name>Scale Model</name> <br />
</worktype> <br />
<worktype> <br />
<code>sculpture</code> <br />
<name>Sculpture</name> <br />
</worktype> <br />
<worktype> <br />
<code>software</code> <br />
<name>Software and Database designs</name> <br />
</worktype> <br />
<worktype> <br />
<code>technical</code> <br />
<name>Technical</name> <br />
</worktype> <br />
<worktype> <br />
<code>video</code> <br />
<name>Video: Other</name> <br />
</worktype> <br />
</worktypes><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.rightsholders.remove&diff=727Work.rightsholders.remove2021-05-07T08:07:40Z<p>Adminwiki: 5 revisions imported</p>
<hr />
<div>Requests to remove a user as author or copyright holder of a work.<br />
<br />
'Shared rights management' professional service must be active for the authorizing user.<br />
<br />
A mail will be sent to the user for confirmation.<br />
This method returns the confirmation URL sent to the user.<br />
<br />
= Info =<br />
<br />
* '''Component name:''' work.rightsholders.remove<br />
* '''Signature:''' Requires signature using the authorization key's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' MANAGE<br />
* '''API trust level''': Standard<br />
<br />
= Parameters =<br />
<br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''workcode*:''' Work code<br />
* '''usercode*:''' Safe Creative code of the user to remove<br />
<br />
<nowiki>*</nowiki> Required parameter<br />
<br />
= Returns =<br />
<br />
* '''confirm-url:''' Confirmation URL as sent in the mail<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.rightsholders.remove<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''workcode'''=1004200146116<br />
&'''usercode'''=0909160000830<br />
&'''ztime'''=1271749848300<br />
&'''signature'''=2975fb609c151e46ca26bbaabab16732288b126a<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<confirm-url>https://arena.safecreative.org/shareconfirm/cc2d830e15ee44c38eb81d1157869f15</confirm-url><br />
</pre><br />
<br />
[[Category: API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.rightsholders.list&diff=721Work.rightsholders.list2021-05-07T08:07:40Z<p>Adminwiki: 5 revisions imported</p>
<hr />
<div>Returns a list of the copyright holders of a work.<br />
<br />
'Shared works management' professional service must be active for the authorizing user.<br />
<br />
= Info =<br />
<br />
* '''Component name:''' work.rightsholders.list<br />
* '''Signature:''' Requires signature using the authorization key's private key<br />
* '''Timestamp:''' ZTime is not required<br />
* '''Authorization level:''' GET<br />
* '''API trust level''': Standard<br />
<br />
= Parameters =<br />
<br />
* '''authkey*:''' Authorization key<br />
* '''workcode*:''' Work code<br />
<br />
<nowiki>*</nowiki> Required parameter<br />
<br />
= Returns =<br />
<br />
* '''rightsholders'''<br />
** '''rightsholder'''<br />
*** '''usercode''': Copyright holder's Safe Creative code<br />
*** '''name''': Full name, pseudonym or mail address (if not confirmed yet)<br />
*** '''can-edit''': Can edit the work (true|false)<br />
*** '''state''': Rights sharing state. One of the following:<br />
**** ''PENDING:'' A rights sharing request has been sent, but it has not been answered<br />
**** ''ACTIVE:'' This rights sharing has been confirmed<br />
**** ''REJECTED:'' This rights sharing request has been rejected by the recipient<br />
**** ''INACTIVE:'' This rights sharing has been cancelled<br />
**** ''INVALID:'' This rights sharing has been deemed invalid (e.g. recipient was already a copyright holder of the work)<br />
*** '''entrydate''': Date of acceptance of rights holding<br />
*** '''roles''': List of roles of this copyright holder<br />
**** '''role''': One of AUTHOR, RIGHTS_HOLDER, INFORMER<br />
*** '''pending-request''': There is a pending request to this copyright holder<br />
**** '''confirm-url''': Confirmation URL sent with this request<br />
**** '''request-usercode''': Safe Creative code of the user who made this request<br />
**** '''request-state''': State to apply to this rights sharing if request is confirmed. Can be one of the following:<br />
***** ''ACTIVE:'' It's a request for rights sharing<br />
***** ''INACTIVE:'' It's a request to cancel the copyright holder rights<br />
**** '''request-date''': Date when this request was sent<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.rightsholders.list<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''workcode'''=1004200146116<br />
&'''signature'''=2975fb609c151e46ca26bbaabab16732288b126a<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<rightsholders><br />
<rightsholder><br />
<usercode>0702034400200</usercode><br />
<name>Sherlock Holmes</name><br />
<can-edit>true</can-edit><br />
<state>ACTIVE</state><br />
<entrydate>2010-03-03T08:16:30Z</entrydate><br />
<roles><br />
<role>AUTHOR</role><br />
<role>RIGHTS_OWNER</role><br />
</roles><br />
</rightsholder><br />
<rightsholder><br />
<usercode>0909160000830</usercode><br />
<name>John Watson</name><br />
<can-edit>false</can-edit><br />
<state>REJECTED</state><br />
<roles><br />
<role>RIGHTS_OWNER</role><br />
</roles><br />
</rightsholder><br />
<rightsholder><br />
<usercode>0909160000830</usercode><br />
<name>John Watson</name><br />
<can-edit>true</can-edit><br />
<state>ACTIVE</state><br />
<entrydate>2010-05-06T06:53:56Z</entrydate><br />
<roles><br />
<role>RIGHTS_OWNER</role><br />
</roles><br />
</rightsholder><br />
</rightsholders><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.rightsholders.confirm&diff=715Work.rightsholders.confirm2021-05-07T08:07:39Z<p>Adminwiki: 2 revisions imported</p>
<hr />
<div>Confirms or rejects an authorship or rights holder request added by [[work.rightholders.add]].<br />
<br />
If the request is for a rights holder, either the authorizing user or the request user must have the 'Rights inscription' professional service.<br />
<br />
= Info =<br />
<br />
* '''Component name:''' work.rightsholders.confirm<br />
* '''Signature:''' Requires signature using the authorization key's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' MANAGE<br />
* '''API trust level''': Standard<br />
<br />
= Parameters =<br />
<br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''code*:''' Request code<br />
* '''accept*:''' 1 to accept the request, 0 to reject it<br />
* '''rejectreason:''' Reason for rejecting the request (required in case of rejection)<br />
<br />
<nowiki>*</nowiki> Required parameter<br />
<br />
= Returns =<br />
* '''restvalueresponse'''<br />
** '''state''': ready<br />
<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.rightsholders.confirm<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''accept'''=1<br />
&'''ztime'''=1271749848300<br />
&'''signature'''=2975fb609c151e46ca26bbaabab16732288b126a<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<restvalueresponse><state>ready</state></restvalueresponse><br />
</pre><br />
<br />
[[Category: API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.rightsholders.add&diff=712Work.rightsholders.add2021-05-07T08:07:39Z<p>Adminwiki: 13 revisions imported</p>
<hr />
<div>Requests a user to be added as an author or rights holder of a work.<br />
<br />
'Shared rights management' professional service must be active for the authorizing user.<br />
<br />
If the user is added as a rights holder, either the authorizing user or the invited user must have the 'Rights inscription' professional service.<br />
<br />
A mail can be sent to the provided address asking for confirmation.<br />
<br />
This method returns the confirmation code for the request. This code can be used to confirm or reject the request using [[work.rightsholders.confirm]] or to build the confirmation URL https://www.safecreative.org/shareconfirm/CODE as the one sent in the confirmation e-mail. <br />
<br />
Be careful not to visit the confirmation URL while logged in on Safe Creative as the authorizing user. This will be understood as the request having been sent to the authorizing user, who already is a copyright holder of the work. This will deem the request invalid.<br />
<br />
= Info =<br />
<br />
* '''Component name:''' work.rightsholders.add<br />
* '''Signature:''' Requires signature using the authorization key's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' MANAGE<br />
* '''API trust level''': Standard<br />
<br />
= Parameters =<br />
<br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''workcode*:''' Work code<br />
* '''mail*:''' E-mail address of the copyright holder. <br />
** Does not need to be the e-mail address used for logging in Safe Creative. <br />
** In fact, recipient does not need to be a Safe Creative user. An account can be created when visiting the confirmation URL.<br />
* '''type:''' Type of inscription to add: <br />
** ''AUTHORSHIP'' to add a coauthor<br />
** ''RIGHTS'' to add a rights holder<br />
* '''canedit*:''' 1 if user will be able to edit the work<br />
* '''sendmail:''' (1/0) Whether to send an e-mail to the user for confirming the coauthorship request. Defaults to true. If no mail is sent, the request must be confirmed using [[work.rightsholders.confirm]].<br />
* '''percent:''' Percent of authorship or rights the user has over the work. Allows up to two decimals.<br />
<br />
For RIGHTS inscriptions, the following parameters also apply:<br />
* '''rights*:''' Textual description of the rights the user is inscribing. Required for rights inscriptions.<br />
* '''begindate:''' When do the inscribed rights begin to apply.<br />
* '''enddate:''' When do the inscribed rights cease to apply.<br />
* '''jurisdictions:''' On which jurisdictions (countries, geographic zones) do the inscribed rights apply.<br />
* '''rightswindow:''' For which kind of media do the rights apply (e.g. TV broadcast, paperback edition,...)<br />
<br />
<nowiki>*</nowiki> Required parameter<br />
<br />
= Returns =<br />
<br />
* '''confirm-code:''' Confirmation code for the request<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.rightsholders.add<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''mail'''=sholmes%40baker.fake<br />
&'''type'''=RIGHTS<br />
&'''canedit'''=1<br />
&'''workcode'''=1004200146116<br />
&'''rights'''=Distribution<br />
&'''percent'''=100<br />
&'''jurisdictions'''=Worldwide<br />
&'''beginDate'''=2016-07-14T12:00:00Z<br />
&'''ztime'''=1271749848300<br />
&'''signature'''=2975fb609c151e46ca26bbaabab16732288b126a<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<confirm-code>8b017250f9d74615951b94ed4d492384</confirm-code><br />
</pre><br />
<br />
[[Category: API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.rights.register&diff=698Work.rights.register2021-05-07T08:07:39Z<p>Adminwiki: 2 revisions imported</p>
<hr />
<div>Registers a copyright inscription for a work. <br />
<br />
This allows the user to add an inscription of partial authorship or other rights to an existing work registration.<br />
<br />
'Rights inscriptions' professional service must be active for the authorizing user.<br />
<br />
= Info =<br />
<br />
* '''Component name''': work.rights.register<br />
* '''Signature''': Requires signature using the authorization key's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' MANAGE<br />
* '''API trust level''': Standard<br />
<br />
= Parameters =<br />
<br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''workcode*:''' Code of the registered work to which the inscription will be made<br />
* '''type*:''' Type of inscription. May be AUTHORSHIP or RIGHTS<br />
* '''percent:''' Percent of authorship or rights the user has over the work. Allows up to two decimals.<br />
<br />
For RIGHTS inscriptions, the following parameters also apply:<br />
* '''rights*:''' Textual description of the rights the user is inscribing.<br />
* '''begindate:''' When do the inscribed rights begin to apply.<br />
* '''enddate:''' When do the inscribed rights cease to apply.<br />
* '''jurisdictions:''' On which jurisdictions (countries, geographic zones) do the inscribed rights apply.<br />
* '''rightswindow:''' For which kind of media do the rights apply (e.g. TV broadcast, paperback edition,...)<br />
<br />
<nowiki>*</nowiki> Required parameter<br />
<br />
= Returns =<br />
* '''restvalueresponse'''<br />
** '''state:''' ready<br />
<br />
= Example =<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.rights.register<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''workcode'''=1004200146116<br />
&'''type'''=RIGHTS<br />
&'''rights'''=Distribution+and+reproduction<br />
&'''begindate'''=2016-01-01'T'00:00:00'Z'<br />
&'''enddate'''=2018-12-31'T'23:59:59'Z'<br />
&'''jurisdictions'''=Worldwide<br />
&'''rightswindow'''=Web+streaming<br />
&'''ztime'''=1271749851064<br />
&'''signature'''=26ecbbf2e886483516a42314979323db5cb69804<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<restvalueresponse><br />
<state>ready</state><br />
</restvalueresponse><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.register&diff=695Work.register2021-05-07T08:07:39Z<p>Adminwiki: 30 revisions imported</p>
<hr />
<div>Registers or modifies a work.<br />
<br />
Work content can be specified:<br />
* with an upload ticket obtained from a previous upload (see [[work.upload.lookup]])<br />
* using a text request parameter<br />
* with an url where the work will be downloaded from<br />
<br />
Using an upload ticket or text parameter are both synchronous registrations. You can register a work asynchronously using an url and sha-1 of the content. Safe Creative engine will download the content of the work to be registered. Work will be in PROCESSING state and will not be visible on the user's work list until it has been downloaded and registration is then finished. You will receive a [[callback]] when this happens.<br />
<br />
If the ''code'' parameter is specified the work will be updated with the new data. <br />
If the work is in REGISTERED state, you cannot change the work title, alias, nor content. <br />
You cannot change the work content if you registered the work using asyncrhonous mode (register via url) and it has not been downloaded yet.<br />
<br />
If you are a partner, you can register a work as a copyright information provider (or informer). The authorizing user will be registered as informer and you must provide the authors' and copyright holders' names (see [[How to: Register a work as a copyright info provider]]).<br />
<br />
This call requires a [[nonce key]]<br />
<br />
= Info =<br />
* '''Component name:''' work.register<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Nonce key:''' Requires a [[nonce key]]<br />
* '''Authorization level:''' <br />
** ADD for registering a new work<br />
** MANAGE to modify an existing work<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' Authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''noncekey*''': [[nonce key]]<br />
* '''code''': Code of the work you want to modify<br />
* '''title:''' Title of the work. If not specified, it will be taken from the work file name.<br />
* '''profile:''' Registration profile code (see [[user.profiles]])<br />
** Registration profile is applied first, if no profile is specified then the user default profile is applied, if any. <br />
** The rest of the specified parameters replace the values of the profile.<br />
* '''excerpt:''' Work summary or description<br />
* '''license:''' Code of the license (see [[user.licenses]]) to apply to this work. <br />
** For new works, if no license nor profile is specified, work will be registered with all rights reserved.<br />
* '''worktype:''' Work type code (see [[work.types]])<br />
** Required for new works if no profile is specified<br />
* '''language:''' Work language code (see [[work.languages]])<br />
* '''tags:''' Comma-separated list of tags. When modifying a work, these will replace existing tags<br />
* '''extratags:''' Comma separated list of tags, to be added to existing tags<br />
* '''allowdownload:''' 1 when the work is publicly downloadable<br />
* '''registrypublic:''' 1 to make registration information public, 0 if registration is private.<br />
* '''usealias:''' 1 to register the work under a pseudonym<br />
* '''alias:''' pseudonym of the user to be asigned to the work<br />
* '''userauthor:''' 1 when the user is the work author<br />
* '''userrights:''' 1 when the user is a rights holder for the work<br />
* '''final:''' 1 if you want the work to be left in REGISTERED state and not PREREGISTERED<br />
* '''obs:''' extra private notes for the work<br />
* '''editlocked:''' For partners, user will not be able to edit the work through Safe Creative web<br />
* '''meta''N'':''' (multivalue) Meta data for works in JSON formmat. Eg: { "nsterm" : "dc:title" , "value": "Star Wars" , "attrs" : { "xml:lang" : "en" }}<br />
** Some metadata fields are required for audiovisual works. See [[#Metadata for audiovisual works | Metadata for audiovisual works]] below.<br />
* '''link''N'':''' (multivalue) Work external links, replace previous work links. Format is url|name|type where type can be DOWNLOAD or INFO. N must be 1..n<br />
* '''extralink''N'':''' (mutivalue) Work external links, to be added to the previously defined work links. Same format as ''linkN''<br />
* '''versionof:''' comma-separated list of work codes which the work is a version of. The specified works must exist and its state must be REGISTERED.<br />
* '''derivationof:''' comma-separated list of work codes which the work is derived from. The specified works must exist and its state must be REGISTERED.<br />
* '''compositionof:''' comma separated list of work codes which the work is composed of. The specified works must exist and its state must be REGISTERED.<br />
<br />
== For copyright info providers ==<br />
See [[How to: Register a work as a copyright info provider]] for a complete example<br />
* '''userinformer:''' 1 to register the work as a copyright info provider<br />
* '''author''N'':''' (multivalue) Full name of the work authors, as FirstName|MiddleName|LastName (middle name may be empty)<br />
* '''rightsholder''N'':''' (multivalue) Full name of the work rights holders, as FirstName|MiddleName|LastName (middle name may be empty)<br />
<br />
== Work content parameters ==<br />
<br />
=== Option A: Register a text ===<br />
* '''text:''' text to be registered<br />
* '''filename:''' file name for the content to be used on downloads<br />
<br />
=== Option B: Register a previously uploaded work ===<br />
* '''uploadticket:''' upload ticket obtained from [[work.upload.commit]] or the [[upload servlet]]<br />
<br />
=== Option C: Register via url ===<br />
* '''url:''' URL of the file to be registered<br />
* '''filename:''' file name for the downloaded content<br />
* '''checksum:''' SHA-1 hash of the content to be downloaded<br />
* '''size:''' size in bytes of the content to be downloaded<br />
<br />
You can only use one of these methods at the same time.<br />
<br />
== Metadata for audiovisual works ==<br />
<br />
Audiovisual works (work types: ''ffilm, mfilm, sfilm, tvfilm, serial, telenovela, other'') should be registered with their supported metadata tags to have a fully informed registration. For these type of works it's not necessary to provide a file or url for registration. If no file is provided, a text file with the work metadata information is automatically generated and used as evidence of registration.<br />
<br />
Metadata tags are provided in ''metadataN'' params as JSON values. Each JSON value has the following structure:<br />
<br />
{"nsterm": "''metadata tag name''", "value": "''metadata tag value''" }<br />
<br />
Some tags include additional attributes in an ''attrs'' field. E.g.:<br />
<br />
{"nsterm": "dc:title", "value": "English title", "attrs": { "xml:lang": "en" }}<br />
<br />
Some tags, such as dc:title, rol:actor,... may be repeated to support multiple titles, actors, etc.<br />
<br />
These are the supported metadata tags for audiovisual works. Required tags are marked with an asterisk (*).<br />
<br />
* '''dc:title''' Alternative title (can be repeated)<br />
** Must have an attribute '''xml:lang''' with the language of the title (ISO language code)<br />
* '''dc:abstract*''' Abstract or synopsis<br />
* '''xsd:gYear*''' Year of creation<br />
* '''dc:extent*''' Duration in seconds<br />
* '''gn:country''' Country of production (ISO code - can be repeated)<br />
* '''rol:director*''' Film director (can be repeated)<br />
* '''rol:producer''' Film producer (can be repeated)<br />
* '''rol:actor''' Actor/actress (can be repeated)<br />
* '''rol:screenwriter''' Screenwriter (can be repeated)<br />
* '''rol:composer''' Music composer (can be repeated)<br />
* '''rol:directorOfPhotography''' Director of photography (can be repeated)<br />
* '''rol:photographer''' Photographer (can be repeated)<br />
* '''rol:designer''' Designer (can be repeated)<br />
* '''rol:contributor''' Other film crew (can be repeated)<br />
* '''sc:color''' Color film (true|false)<br />
* '''sc:sound''' Film with sound (true|false)<br />
* '''sc:chapters''' Number of chapters (for serial and telenovela work types)<br />
<br />
= Returns =<br />
<br />
* '''workregistry'''<br />
** '''code''': Code of the registered work<br />
<br />
= Example =<br />
<br />
REQUEST to get a nonce key<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=authkey.state<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''sharedkey'''=zy9x4ol0ctg3btyswq7b5wi9<br />
&'''ztime'''=1271749829192<br />
&'''signature'''=508333b024993bbe54261a8c6713767dfe3ec9b1<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<authkeystate><br />
<authkey>1i5g2aaf2bz09lyo867cuimqg</authkey><br />
<level>MANAGE</level><br />
<noncekey>4vrghpn0n8jxrrvoi3b7zta1c</noncekey><br />
<usercode>0907100000018</usercode><br />
<authorized>true</authorized><br />
</authkeystate><br />
</pre><br />
<br />
<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.register<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''allowdownload'''=1<br />
&'''excerpt'''=An+important+text+about+registry+philosophy<br />
&'''license'''=http%3A%2F%2Fcreativecommons.org%2Flicenses%2Fnc-sampling%2B%2F1.0%2F<br />
&'''noncekey'''=4vrghpn0n8jxrrvoi3b7zta1c<br />
&'''obs'''=More+info+at+%3Ca+href%3D%27http%3A%2F%2Fsafecreative.info%27%3Ehttp%3A%2F%2Fsafecreative.info%3C%2Fa%3E<br />
&'''registrypublic'''=1<br />
&'''tags'''=tag1%2C+tag2<br />
&'''text'''=Text+to+be+registered<br />
&'''title'''=My+first+registration<br />
&'''usealias'''=1<br />
&'''userauthor'''=1<br />
&'''worktype'''=article<br />
&'''ztime'''=1271749829429<br />
&'''signature'''=0042020a7ffc118d189aa27a9b78d1962e781667<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<workregistry><br />
<code>1004200146109</code><br />
</workregistry><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.metadata.namespaces&diff=664Work.metadata.namespaces2021-05-07T08:07:37Z<p>Adminwiki: 3 revisions imported</p>
<hr />
<div>Public component to query data about available namespaces.<br />
<br />
Using this component you can get public information about available namespaces found with some work's metadata. <br />
<br />
= Info =<br />
* '''Component name:''' work.metadata.namespaces<br />
* '''Signature:''' No signature required<br />
* '''Timestamp:''' Ztime is not required<br />
* '''API trust level''': Public<br />
<br />
= Returns =<br />
<br />
* '''namespace'''<br />
** '''name''': Namespace short name<br />
** '''uri''': Namespace [http://en.wikipedia.org/wiki/Uniform_resource_identifier uri]<br />
*** '''terms''': Terms within namespace<br />
**** '''term''': Namespace term<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki>?'''component'''=work.metadata.namespaces<br />
<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<namespaces><br />
<namespace><br />
<name>DC</name><br />
<uri>http://purl.org/dc/elements/1.1/</uri><br />
<terms><br />
<term>abstract</term><br />
<term>contributor</term><br />
<term>coverage</term><br />
<term>created</term><br />
<term>creator</term><br />
<term>date</term><br />
<term>dateAccepted</term><br />
<term>dateCopyrighted</term><br />
<term>dateSubmitted</term><br />
<term>description</term><br />
<term>extent</term><br />
<term>format</term><br />
<term>identifier</term><br />
<term>issued</term><br />
<term>language</term><br />
<term>license</term><br />
<term>modified</term><br />
<term>publisher</term><br />
<term>relation</term><br />
<term>rights</term><br />
<term>rightsHolder</term><br />
<term>source</term><br />
<term>subject</term><br />
<term>title</term><br />
<term>type</term><br />
</terms><br />
</namespace><br />
<namespace><br />
<name>DCTERMS</name><br />
<uri>http://purl.org/dc/terms/</uri><br />
<terms><br />
<term>contributor</term><br />
<term>coverage</term><br />
<term>creator</term><br />
<term>date</term><br />
<term>description</term><br />
<term>format</term><br />
<term>identifier</term><br />
<term>language</term><br />
<term>publisher</term><br />
<term>relation</term><br />
<term>rights</term><br />
<term>source</term><br />
<term>subject</term><br />
<term>title</term><br />
<term>type</term><br />
</terms><br />
</namespace><br />
<namespace><br />
<name>XSD</name><br />
<uri>http://www.w3.org/2001/XMLSchema#</uri><br />
<terms><br />
<term>date</term><br />
<term>decimal</term><br />
<term>integer</term><br />
<term>boolean</term><br />
<term>float</term><br />
<term>double</term><br />
<term>time</term><br />
<term>dateTime</term><br />
<term>duration</term><br />
<term>gYear</term><br />
</terms><br />
</namespace><br />
<namespace><br />
<name>CC</name><br />
<uri>http://creativecommons.org/ns#</uri><br />
<terms><br />
<term>license</term><br />
<term>attributionName</term><br />
<term>attributionURL</term><br />
<term>morePermissions</term><br />
</terms><br />
</namespace><br />
<namespace><br />
<name>ROL</name><br />
<uri>http://rdvocab.info/roles/</uri><br />
<terms><br />
<term>actor</term><br />
<term>director</term><br />
<term>producer</term><br />
<term>publisher</term><br />
<term>composer</term><br />
<term>screenwriter</term><br />
<term>contributor</term><br />
<term>editor</term><br />
<term>designer</term><br />
<term>photographer</term><br />
<term>directorOfPhotography</term><br />
</terms><br />
</namespace><br />
<namespace><br />
<name>GN</name><br />
<uri>http://www.geonames.org/ontology#</uri><br />
<terms><br />
<term>countryCode</term><br />
</terms><br />
</namespace><br />
</namespaces><br />
</pre><br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.list&diff=660Work.list2021-05-07T08:07:37Z<p>Adminwiki: 4 revisions imported</p>
<hr />
<div>Returns a user's registered works list.<br />
<br />
= Info =<br />
* '''Component name:''' work.list<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' GET<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' User's authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''page:''' Page number<br />
* '''locale:''' Locale for work type, license names,...<br />
<br />
== Filters ==<br />
The following parameters allow to filter the results:<br />
* '''state:''' Work state, as specified in [[About works]]<br />
* '''tag:''' Works with the specified tag<br />
* '''worktype''N'':''' (multivalue) Codes of the work types to include in the results (as returned in [[work.types]])<br />
* '''worktypegroup:''' Work type group code (as returned in [[work.types.tree]])<br />
* '''license:''' License code (e.g. copyright)<br />
* '''fromdate:''' Works registered beginning on this date<br />
* '''todate:''' Works registered up to this date<br />
* '''filter:''' Text filter, returns works containing this text in their codes, titles, excerpts or tags<br />
<br />
== Order ==<br />
* '''sortfield:''' Work list can be ordered by ''code''(default) or ''title''<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
<br />
A [[paginated list]] of ''work'' elements:<br />
* '''work'''<br />
** '''code''': Safe Creative work code <br />
** '''title''': Work title<br />
** '''entrydate''': Work registration date<br />
** '''state''': Work state (see [[About works]])<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.list<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''page'''=1<br />
&'''ztime'''=1271749847821<br />
&'''signature'''=40c6cabb341a463e4d824e702b1c4606692fa293<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<listpage><br />
<recordtotal>2</recordtotal><br />
<pagetotal>1</pagetotal><br />
<list><br />
<work><br />
<code>1003030120266</code><br />
<title>memorymanagement_whitepaper</title><br />
<entrydate>2010-03-03T08:17:15Z</entrydate><br />
<state>REGISTERED</state><br />
</work><br />
<work><br />
<code>1003030120259</code><br />
<title>Big times</title><br />
<entrydate>2010-03-03T08:16:30Z</entrydate><br />
<state>REGISTERED</state><br />
</work><br />
</list><br />
</listpage><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.languages&diff=655Work.languages2021-05-07T08:07:37Z<p>Adminwiki: 4 revisions imported</p>
<hr />
<div>Returns the list of supported languages<br />
<br />
= Info =<br />
* '''Component name:''' work.languages<br />
* '''Signature:''' No signature required<br />
* '''Timestamp:''' Ztime is not required<br />
* '''API trust level''': Public<br />
<br />
= Parameters = <br />
* '''locale:''' Locale for language names<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
* '''worklanguages'''<br />
** '''language'''<br />
*** '''code''': Language ISO code<br />
*** '''name''': Language name<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.languages<br />
&'''locale'''=en<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<worklanguages> <br />
<language> <br />
<code>AR</code> <br />
<name>Arabic</name> <br />
</language> <br />
<language> <br />
<code>OC</code> <br />
<name>Aranese</name> <br />
</language> <br />
<language> <br />
<code>EU</code> <br />
<name>Basque</name> <br />
</language> <br />
<language> <br />
<code>CA</code> <br />
<name>Catalan</name> <br />
</language> <br />
<language> <br />
<code>ZH</code> <br />
<name>Chinesse</name> <br />
</language> <br />
<language> <br />
<code>EN</code> <br />
<name>English</name> <br />
</language> <br />
<language> <br />
<code>FR</code> <br />
<name>French</name> <br />
</language> <br />
<language> <br />
<code>GL</code> <br />
<name>Galician</name> <br />
</language> <br />
<language> <br />
<code>DE</code> <br />
<name>German</name> <br />
</language> <br />
<language> <br />
<code>IT</code> <br />
<name>Italian</name> <br />
</language> <br />
<language> <br />
<code>PT</code> <br />
<name>Portuguese</name> <br />
</language> <br />
<language> <br />
<code>RU</code> <br />
<name>Russian</name> <br />
</language> <br />
<language> <br />
<code>ES</code> <br />
<name>Spanish</name> <br />
</language> <br />
</worklanguages><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwikihttps://www.safecreative.org/mw/index.php?title=Work.get.private&diff=650Work.get.private2021-05-07T08:07:36Z<p>Adminwiki: 12 revisions imported</p>
<hr />
<div>Returns all data of a user's work. This includes private data not available to the public.<br />
<br />
= Info =<br />
* '''Component name:''' work.get.private<br />
* '''Signature:''' Requires signature using the authkey's private key<br />
* '''Timestamp:''' Requires [[ztime parameter]]<br />
* '''Authorization level:''' GET<br />
* '''API trust level''': Standard<br />
<br />
= Parameters = <br />
* '''authkey*:''' User's authorization key<br />
* '''ztime*:''' Z-Timestamp<br />
* '''code*:''' Work code<br />
* '''locale:''' Locale for work type, license names,...<br />
<br />
<nowiki>* Required parameter</nowiki><br />
<br />
= Returns =<br />
<br />
Some works include more information than others. Not all fields will be present in all works.<br />
* '''work'''<br />
** '''code''': Safe Creative work code <br />
** '''title''': Work title<br />
** '''entrydate''': Work registration date<br />
** '''updatedate''': Work update date<br />
** '''state''': Work state (see [[About works]])<br />
** '''excerpt''': Work excerpt or description<br />
** '''observations''': Work private notes<br />
** '''tags''': Comma-separated list of tags<br />
** '''thumbnail''': URL to the work thumbnail (if any)<br />
** '''mimetype''': Work mime type<br />
** '''links''': Work links<br />
*** '''link''': Link URL. <br />
*** '''name''': Link title (XML attribute)<br />
*** '''type''': Link type (INFO|DOWNLOAD) (XML attribute)<br />
** '''relations''': Work relations with other works<br />
*** '''relation''': List of works related of a ''type'' (VERSION|DERIVATION|COMPOSITION|RELATED as XML attribute)<br />
**** '''work''': Work related to this work<br />
***** '''name''': Related work title (XML attribute)<br />
***** '''code''': Related work code (XML attribute)<br />
** '''license''': Work license<br />
*** '''code''': License code<br />
*** '''name''': License name<br />
*** '''shortname''': License short name<br />
*** '''endDate''': License expiration date (only for time-limited licenses)<br />
*** '''human-url''': URL to license text<br />
*** '''features''': License features (see [[user.licenses]])<br />
** '''professionalstatus''': This work has enabled professional service (true|false)<br />
** '''allowdownload''': This work can be downloaded (true|false)<br />
** '''allowevaluation''': An evaluation version of this work can be downloaded (true|false)<br />
** '''registrypublic''': Work registration is public (true|false)<br />
** '''usealias''': Work is registered under pseudonym (true|false)<br />
** '''userauthor''': User is author of this work (true|false)<br />
** '''userrights''': User is a rights holder of this work (true|false)<br />
** '''useralias''': User pseudonym this work is registered under<br />
** '''languagecode''': Work language code (see [[work.languages]])<br />
** '''worktype''': Work type (see [[work.types]], [[work.types.tree]])<br />
*** '''code''': Work type code<br />
*** '''name''': Work type name<br />
** '''worktypegroup''': Work type group (see [[work.types.tree]])<br />
*** '''code''': Work type group code<br />
*** '''name''': Work type group name<br />
<br />
= Example =<br />
REQUEST:<br />
<br />
<nowiki>https://api.safecreative.org/v2/</nowiki><br />
?'''component'''=work.get.private<br />
&'''authkey'''=1i5g2aaf2bz09lyo867cuimqg<br />
&'''code'''=1004200146116<br />
&'''ztime'''=1271749847821<br />
&'''signature'''=40c6cabb341a463e4d824e702b1c4606692fa293<br />
<br />
RESPONSE:<br />
<br />
<pre><br />
<?xml version="1.0" encoding="UTF-8"?><br />
<work><br />
<code>1004200146116</code><br />
<title>My first long registration</title><br />
<entrydate>2010-04-20T07:50:43Z</entrydate><br />
<updatedate>2010-08-26T03:00:00Z</updatedate><br />
<state>PRE_REGISTERED</state><br />
<excerpt>Very long text about registry philosophy</excerpt><br />
<observations>Obs 2</observations><br />
<tags>tag1, tag2</tags><br />
<mimetype>text/plain</mimetype><br />
<license><br />
<code>http://creativecommons.org/licenses/nc-sampling+/1.0/</code><br />
<name>Creative Commons NonCommercial Sampling Plus 1.0</name><br />
<shortname>CC nc-sampling+-1.0</shortname><br />
<endDate></endDate><br />
<human-url>http://creativecommons.org/licenses/nc-sampling+/1.0/legalcode</human-url><br />
<features><br />
<derivations>YES</derivations><br />
<distribution>YES</distribution><br />
<recognition>YES</recognition><br />
<commercial>NO</commercial><br />
<timelimited>NOT_APPLICABLE</timelimited><br />
</features><br />
</license><br />
<professionalstatus>false</professionalstatus><br />
<allowdownload>true</allowdownload><br />
<registrypublic>true</registrypublic><br />
<languagecode>EN</languagecode><br />
<usealias>false</usealias><br />
<userauthor>true</userauthor><br />
<userrights>true</userrights><br />
<worktype><br />
<code>article</code><br />
<name>Article</name><br />
</worktype><br />
<worktypegroup><br />
<code>Literary</code><br />
<name>Literary</name><br />
</worktypegroup><br />
</work><br />
</pre><br />
<br />
[[Category:API component]]</div>Adminwiki