<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://support.tygron.com/w/index.php?action=history&amp;feed=atom&amp;title=Streaming_assets</id>
	<title>Streaming assets - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://support.tygron.com/w/index.php?action=history&amp;feed=atom&amp;title=Streaming_assets"/>
	<link rel="alternate" type="text/html" href="https://support.tygron.com/w/index.php?title=Streaming_assets&amp;action=history"/>
	<updated>2026-05-01T17:07:53Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://support.tygron.com/w/index.php?title=Streaming_assets&amp;diff=44092&amp;oldid=prev</id>
		<title>Frank@tygron.nl at 13:08, 17 January 2022</title>
		<link rel="alternate" type="text/html" href="https://support.tygron.com/w/index.php?title=Streaming_assets&amp;diff=44092&amp;oldid=prev"/>
		<updated>2022-01-17T13:08:07Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:08, 17 January 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l6&quot;&gt;Line 6:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 6:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===PHP===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===PHP===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This example is a functional PHP example for streaming a [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GeoTiff&lt;/del&gt;]] asset on the [[Geo Share]] directly to a session.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This example is a functional PHP example for streaming a [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GeoTIFF&lt;/ins&gt;]] asset on the [[Geo Share]] directly to a session.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{code|1=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{code|1=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Frank@tygron.nl</name></author>
	</entry>
	<entry>
		<id>https://support.tygron.com/w/index.php?title=Streaming_assets&amp;diff=43822&amp;oldid=prev</id>
		<title>Rudolf@tygron.nl: Created page with &quot;{{stub}}  The streaming endpoint of the API allows the download and upload of large assets which are infeasible to download and upload in full. This is especially important in...&quot;</title>
		<link rel="alternate" type="text/html" href="https://support.tygron.com/w/index.php?title=Streaming_assets&amp;diff=43822&amp;oldid=prev"/>
		<updated>2021-12-16T08:09:24Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{stub}}  The streaming endpoint of the API allows the download and upload of large assets which are infeasible to download and upload in full. This is especially important in...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
The streaming endpoint of the API allows the download and upload of large assets which are infeasible to download and upload in full. This is especially important in environments where there isn&amp;#039;t a large allowance of memory.&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
&lt;br /&gt;
===PHP===&lt;br /&gt;
This example is a functional PHP example for streaming a [[GeoTiff]] asset on the [[Geo Share]] directly to a session.&lt;br /&gt;
&lt;br /&gt;
{{code|1=&lt;br /&gt;
&lt;br /&gt;
function streamFromGeoshareToGeotiff( string $geoshareableUrl, string $streamingImportUrl, string $fileName, int $geotiffId = null ) {&lt;br /&gt;
&lt;br /&gt;
	$targetUrl = $streamingImportUrl . &amp;#039;&amp;amp;name=&amp;#039; . $fileName . &amp;#039;&amp;amp;mapLink=GEO_TIFFS&amp;#039;;&lt;br /&gt;
	if ( !is_null($geotiffId) ) {&lt;br /&gt;
		$targetUrl .=&amp;#039;&amp;amp;id=&amp;#039;.$geotiffId;&lt;br /&gt;
	}&lt;br /&gt;
	//Reading a file can be done via a simple resource handle.&lt;br /&gt;
	$originHandle = fopen( $geoshareableUrl, &amp;#039;r&amp;#039; );&lt;br /&gt;
&lt;br /&gt;
	//Writing should be done as a proper webcall. Curl will handle the low-level stuff.&lt;br /&gt;
	$ch = curl_init();&lt;br /&gt;
	curl_setopt( $ch, CURLOPT_PUT, 1 ); //Required for infile to work properly&lt;br /&gt;
	curl_setopt( $ch, CURLOPT_INFILE, ( $originHandle ) );&lt;br /&gt;
	curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, &amp;#039;POST&amp;#039; ); //Overwrite method (back) to POST&lt;br /&gt;
	curl_setopt( $ch, CURLOPT_URL, $targetUrl );&lt;br /&gt;
	curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );&lt;br /&gt;
&lt;br /&gt;
	$result = curl_exec($ch);&lt;br /&gt;
	$curlError = curl_error($ch);&lt;br /&gt;
	$statusCode = curl_getinfo ( $ch ,CURLINFO_HTTP_CODE );&lt;br /&gt;
	curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
	fclose($originHandle);&lt;br /&gt;
&lt;br /&gt;
	return [&lt;br /&gt;
		&amp;#039;result&amp;#039; =&amp;gt; $result,&lt;br /&gt;
		&amp;#039;statusCode&amp;#039; =&amp;gt; $statusCode,&lt;br /&gt;
		&amp;#039;curlError&amp;#039; =&amp;gt; $curlError&lt;br /&gt;
	];&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
	&lt;br /&gt;
$serverUrl = &amp;#039;https://engine.tygron.com&amp;#039;; //Set this: the url of the server.&lt;br /&gt;
$apiToken = &amp;#039;c0hARlThlohZes2TFuQSZ95pXEtc619t&amp;#039;; //Set this: API token of the session.&lt;br /&gt;
$streamingImportUrl = $serverUrl . &amp;#039;/api/session/stream/import?token=&amp;#039; . $apiToken;&lt;br /&gt;
&lt;br /&gt;
$domain = &amp;#039;tygron&amp;#039;; //Set this: the domain in which the desired Geo Share asset can be found.&lt;br /&gt;
$fileName = &amp;#039;example.tiff&amp;#039;; //Set this: the name of the file to obtain from the Geo Share.&lt;br /&gt;
$fileToken = &amp;#039;c0hARlThlohZes2TFuQSZ95pXEtc619t&amp;#039;; //Set this: the access token of the asset on the Geo Share&lt;br /&gt;
$geoshareUrl = $serverUrl . &amp;#039;/share/&amp;#039; . $domain.  &amp;#039;/&amp;#039; . $fileName . &amp;#039;?token=&amp;#039; . $fileToken;&lt;br /&gt;
&lt;br /&gt;
streamFromGeoshareToGeotiff( $geoshareUrl, $streamingImportUrl, $fileName );&lt;br /&gt;
&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Rudolf@tygron.nl</name></author>
	</entry>
</feed>