Adding Amazon S3 as a storage to Vidispine is done the same way as you add any other storage, by creating a storage and adding a storage method to it. Storage is created by making a POST request to /storage with the following body: 
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<StorageDocument xmlns="http://xml.vidispine.com/schema/vidispine">
  <type>LOCAL</type>
  <capacity>5000000000</capacity>
  <method>
    <uri>s3://ACCESSKEY:SECRETKEY@vidispine/video/</uri>
    <read>true</read>
    <write>true</write>
    <browse>true</browse>
  </method>
</StorageDocument>
 Note: LOCAL as storage type means that the storage is dedicated to Vidispine, not that it necessarily is physically local. 

You can also configure how move and copy to S3 should be done in more detail with a number of parameters. For example you can increase efficiency of the upload by using more threads and change the size of the chunks. This is done by setting the configuration parameters s3ConcurrentParts (1 by default) and s3partSize (5242880 = 5MB by default) with a PUT to /configuration/properties.  
<ConfigurationPropertyDocument xmlns="http://xml.vidispine.com/schema/vidispine">
  <key>s3concurrentParts</key>
  <value>4</value>
</ConfigurationPropertyDocument>
and 
<ConfigurationPropertyDocument xmlns="http://xml.vidispine.com/schema/vidispine">
  <key>s3partSize</key>
  <value>2097152</value>
</ConfigurationPropertyDocument>

 You can read more about storage methods, the S3 storage URI, and storage and file properties in the API documentation.