API Documentation

http://www.shutterfly.com/developer

Polls

What API would you like to see next?
What API would you like to see next?
Closing poll for different options...

Developer API news

Some more updates

A couple more updates on the API to let you know about:

1. Folder API. This is just the beginning of this API - it's read-only (GET) at the moment, but we're trying to get the Open API's up to what the site is supporting. Look for additional methods going forward.

2. Forgot password. This is a little buried - it's under the User API, but it allows an API method to initiate a forgot password email for the user. The user still needs to get the email and go through the standard Shutterfly forgot password mechanism.

3. Pagination. There is a new page buried in the initial "trail" that goes over some of the general concepts and buried down at the bottom there is a section on pagination.

As always, let us know if you have any questions or problems at developerhelp@shutterfly.com.

Update: Order API

I know it's been a while since we updated this site, but I just wanted to drop a word that we do still exist ;-)

Specifically, there was an update to our Pricing and Order API in our last release. Basically we were experiencing an issue where user discounts were being applied in the order step but not in the pricing step. As a result, most requests would fail as the pricing total would not equal the order total. In response, we have just globally enabled user discounts, as they exist in the user account.

This change did force a couple of hopefully minor changes in the interface so please review the API documentation.

Please drop us a line at developerhelp@shutterfly.com if you notice any further issues or have questions, as always.

Shutterfly developer site is going!

Welcome to the Shutterfly developer site!

We're pretty excited to start the process of developing API's that will allow some cool uses of Shutterfly by external developers. This site is for you to give us feedback, get some help, and generally discuss what's going on and where we're headed.

So go hit the developer site - http://www.shutterfly.com/developer - and see what you think.

And again, welcome!

Forum

unable to complete the seamless sign-in process
I'm trying to run through the seamless sign-in process, but I'm not able to send the user to grantApp.sfly page since I get a series of endless redirects (302)
Here are the details:

The string that I'm hashing looks like this:
<secret>/oflyuser/grantApp.sfly?oflyCallbackUrl=http://passportcorner.com/approved.php&oflyRemoteUser=user@mail.com&oflyAppId=74418d90f3355a869d4964a6198610ff&oflyHashMeth=MD5&oflyTimestamp=2009-10-17T08:00:49.000+03:00

I'm connecting to shutterfly and sending the following:
* About to connect() to www.shutterfly.com port 80 (#0)
*   Trying 64.74.143.134... * connected
* Connected to www.shutterfly.com (64.74.143.134) port 80 (#0)
> GET /oflyuser/grantApp.sfly?oflyAppId=74418d90f3355a869d4964a6198610ff&oflyCallbackUrl=http%3A%2F%2Fpassportcorner.com%2Fapproved.php&oflyRemoteUser=user%40mail.com HTTP/1.1
Host: www.shutterfly.com
Accept: */*
oflyTimestamp: 2009-10-17T08:00:49.000+03:00
oflyApiSig: 206e600c1100b1a16720cc0c5b445438
oflyHashMeth: MD5

in response I'm getting the following (redirect):
< HTTP/1.1 302 Moved Temporarily
< Date: Sat, 17 Oct 2009 05:01:06 GMT
< Server: Apache-Coyote/1.1
< P3P: policyref="/w3c/p3p.xml", CP="CAO DSP COR CURa ADMa TAIa PSAa PSDa OUR BUS ONL COM NAV INT STA PRE UNI"
< Pragma: no-cache
< Expires: Thu, 01 Jan 1970 00:00:00 GMT
< Cache-Control: no-cache
< Cache-Control: no-store
< Location: http://www.shutterfly.com/oflyuser/grantPermission.sfly;jsessionid=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
< Content-Language: en-US
< Content-Length: 0
< Set-Cookie: JSESSIONID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx; Path=/
< Set-Cookie: masterServer=serverName:www.shutterfly.com&serverIP:172.16.113.8&sessionId:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx; Domain=.shutterfly.com; Path=/
< Set-Cookie: trialSeed=512; Domain=.shutterfly.com; Expires=Fri, 13-Jul-2012 05:01:07 GMT; Path=/
< Set-Cookie: sflyversion=O; Domain=.shutterfly.com; Path=/
< Set-Cookie: lb=xxxxxxxxxx-app233.internal.shutterfly.com; Path=/
< Set-Cookie: visitor=xxxxxxxxxxxxxxxxxxxxxxxx; Domain=.shutterfly.com; Expires=Fri, 13-Jul-2012 05:01:07 GMT; Path=/
< Set-Cookie: BIGipServerAPP-A-LR=141627564.20480.0000; path=/
< Content-Type: text/plain

my code follows redirect, and from that point I'm only getting back redirects to /signup/start.sfly and /signup/viewSignup.sfly alternately. the fid and jsessionidparameters are different every time:
< Location: http://www.shutterfly.com/signup/start.sfly?fid=xxxxxx
< Location: https://www.shutterfly.com/signup/viewSignup.sfly?fid=xxxxxx
< Location: http://www.shutterfly.com/signup/start.sfly;jsessionid=xxxxxxx?requestedURLFromTimeout=%2Fsignup%2FviewSignup.sfly
< Location: https://www.shutterfly.com/signup/viewSignup.sfly?fid=xxxxxx
< Location: http://www.shutterfly.com/signup/start.sfly;jsessionid=xxxxxxxxxx?requestedURLFromTimeout=%2Fsignup%2FviewSignup.sfly
< Location: https://www.shutterfly.com/signup/viewSignup.sfly?fid=xxxxxx
< Location: http://www.shutterfly.com/signup/start.sfly;jsessionid=xxxxxxxxxx?requestedURLFromTimeout=%2Fsignup%2FviewSignup.sfly
< Location: https://www.shutterfly.com/signup/viewSignup.sfly?fid=xxxxxxx
< Location: http://www.shutterfly.com/signup/start.sfly;jsessionid=xxxxxxx?requestedURLFromTimeout=%2Fsignup%2FviewSignup.sfly

Just in case it's interesting, my code is using curl on PHP 5.2.5, running on apache.

Any help would be appreciated.

Thanks,
Dan Bar-Shalom

did anyone get around to get this working in Dotnet
i see a lot of posts from ages ago but has anyone got this working correct from dotnet.
Re: code snippet for integration of SFLY in .NET
Hi thanks for your help. i try to view the SFLy.txt file but it shows me nothing. I click on file in my browser it shows blank screen. kindly help
Uploading images using PHP
Hi,

I want to upload images using php to the shutterfly album.
Do you guys have any code snippet for this???
Re: The request sent by the client was syntactically incorrect
It should only be required if there is no default callback URL associated with the application. Let me know if your experience differs.

I'll take it as an item to improve the error messaging, regardless, though.

Thanks!
Re: The request sent by the client was syntactically incorrect
Hi Tim,

     Is it compulsory to give call back URL.

Thanks
Re: The request sent by the client was syntactically incorrect
I fixed that issue. Now it is telling "The calling application did not tell Shutterfly who it is.  Please contact its developer or Support staff."

I am setting header field User-Agent to Application Title which i provided in Application Registration.

What information do i need to send.
Re: The request sent by the client was syntactically incorrect
I fixed that one still i am facing the same issue.
Re: The request sent by the client was syntactically incorrect
The timestamp in the initial string looks encoded, I do not think that is right.

Tim
The request sent by the client was syntactically incorrect

I am creating signature from the following string


3bf919f026036a45/oflyuser/createToken.sfly?oflyAppId=6c2f272be040b1e2f569ed4fa6d5dbb1&oflyHashMeth=MD5&oflyTimestamp=6c2f272be040b1e2f569ed4fa6d5dbb1


Request URL:

https://www.shutterfly.com/oflyuser/createToken.sfly?oflyAppId=6c2f272be040b1e2f569ed4fa6d5dbb1&oflyApiSig=864ba5addb74fc4d1ba472ecf8b51fe9&oflyTimestamp=2009-06-10T07:52:31.183-0700&oflyHashMeth=MD5


Request Response:

The request sent by the client was syntactically incorrect 


Do am i doing right way?. Please suggest me.


Thanks in advance.


11/23/2009 2:30:35 AM