Problems with API Loguin!

46 views
Skip to first unread message

Marianoi

unread,
Jun 5, 2012, 10:08:09 PM6/5/12
to SlimTimer Developer Forum
Hi, I´m trying to login through the API in C#, but when I try to get
the token response is wrong. It comes with html content instead a xml
content. It´s really weird. I put the code that i use to do it, if
anyone can help me It will be a great help, thanks!

My code:
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://
slimtimer.com/users");
req.Method = "POST";
req.ContentType = "application/xml";

StringBuilder str = new StringBuilder();
str.Append(@"<?xml version=""1.0"" encoding=""UTF-8""?
>");
str.AppendLine("<request>");
str.AppendLine("<user>");
str.AppendLine("<email>" + user+ "</email>");
str.AppendLine("<password>" + pass + "</password>");
str.AppendLine("</user>");
str.AppendLine("<api_key>" + api + "</api_key>");
str.AppendLine("</request>");
byte[] bt = Encoding.ASCII.GetBytes(str.ToString());
req.ContentLength = (long)bt.Length;

Stream body = req.GetRequestStream();
body.Write(bt, 0, bt.Length);
body.Close();
WebResponse rsp = req.GetResponse();
StreamReader sr = new
StreamReader(rsp.GetResponseStream());
string Result = sr.ReadToEnd();


Response body:
|<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/
xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<title>SlimTimer - Time Tracking without the Timesheet</title>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8" />
<link href="/stylesheets/front_packaged.css?1332815349"
media="all" rel="Stylesheet"
type="text/css" />
<script src="/javascripts/front_packaged.js?1332815346" type="text/
javascript"></script>
<!--[if IE]><link href="/stylesheets/front_ie_packaged.css?
1332815349" media="all" rel="Stylesheet" type="text/css" /><![endif]--
>
</head>
<body id="front" class="external">
<div id="wrapper">
<div id="main">
<div id="topNav">
Home | <a href="http://blog.slimtimer.com">Blog</a> |
<a href="/front/about">About</a>
| <a href="/front/api">API</a>
<p id="counter">
<strong>15,923,910</strong> Hours Logged
</p>
</div>
<div id="banner">
<h1>
SlimTimer.com</h1>
<h2 class="row-2">
Timesheets have left the building.</h2>
</div>
<div id="content">
<div id="left">
<div id="step-1" class="step">
<h4>
Create tasks</h4>
<div class="step-content">
<p>
From the <span
class="brand">SLIM<strong>TIMER</strong> </span>you can create tasks
and even share them with your
coworkers and those you report to.
</p>
</div>
<a href="/images/screenshots/add_task.png"
id="screenshot-1" class="screenshot lbOn">
</a>
</div>
<div id="step-2" class="step">
<h4>
time your work</h4>
<div class="step-content">
<p>
Open the <span
class="brand">SLIM<strong>TIMER</strong> </span>and click on a task
to start the clock and click again
when you're finished. If you've completed the
task click the checkbox to mark it
off. Close the browser when you're done.
</p>
</div>
<a href="/images/screenshots/slimtimer.png"
id="screenshot-2" class="screenshot lbOn">
</a>
</div>
<div id="step-3" class="step">
<h4>
Run reports</h4>
<div class="step-content">
<p>
Run reports of not only your time but
also that of your coworkers and reportees.
You can export any report to
CSV(Excel), subscribe to its RSS feed<em>*</em>, or
email it to a colleague<em>*</em>.
</p>
</div>
<a href="/images/screenshots/report.png"
id="screenshot-3" class="screenshot lbOn">
</a>
</div>
<div id="step-4" class="step">
<h4>
That's it!</h4>
<div class="step-content">
<p>
It's that easy! If you don't believe
me then check out this <a href="http://screeniac.com/wp-content/
uploads/2006/07/slimtimer.com.review.wmv">
<span
class="brand">SLIM<strong>TIMER</strong> </span>screencast </
a>courtesy
of <a href="http://screeniac.com/
2006/07/21/slimtimercom/">screeniac.com</a>.
</p>
</div>
<a href="http://screeniac.com/wp-content/
uploads/2006/07/slimtimer.com.review.wmv"
id="screenshot-4" class="screenshot
lbOn"></a>
</div>
<p id="coming-soon">
<em>*</em> Coming Soon
</p>
</div>
<div id="right">
<div id="loginHeader">
<h3>
Login</h3>
</div>
<div id="loginContainer">
<form action="/users/login" id="login-form"
method="post">
<fieldset>
<legend>Login</legend>
<label>
Email</label>
<input class="text-input" id="user[email]"
name="user[email]" size="20" type="text" />
<label>
Password</label>
<input class="text-input"
id="user[password]" name="user[password]" size="20" type="password" />
<p class="checkbox-container">
<input id="user_remember_me"
name="user[remember_me]" type="checkbox" value="1" /><input
name="user[remember_me]"
type="hidden" value="0" />Remember me
</p>
</fieldset>
<input class="submit" name="commit"
type="submit" value="Login" />
<a href="/users/forgot_password">Forgot my
password</a>
</form>
</div>
<script>
Form.focusFirstElement('login-form');
try {
Rico.Corner.round('loginHeader',
{ corners: 'top' });
Rico.Corner.round('loginContainer',
{ corners: 'bottom' });
} catch (e) { }
</script>
<div id="signup-box-wrapper" class="signup-form">
<div id="signup-box">
<h3>
Create a FREE account</h3>
<form action="/users/create" method="post"
onsubmit="new Ajax.Updater('signup-box', '/users/create',
{asynchronous:true, evalScripts:true, onLoading:function(request)
{Element.show('signup-indicator');},
parameters:Form.serialize(this)}); return false;">
<fieldset>
<legend>Create an Account</legend>
<label>
Full Name</label>
<input class="text-input"
id="user_fullname" name="user[fullname]" size="30" type="text" />
<label>
Email</label>
<input class="text-input"
id="user_email" name="user[email]" size="30" type="text"
value="" />
<label>
Password</label>
<p class="help">
Must be at least <strong>5
characters</strong>
</p>
<input class="text-input"
id="user_password" name="user[password]" size="30" type="password" />
<label>
Password Again</label>
<input class="text-input"
id="user_password_confirmation" name="user[password_confirmation]"
size="30" type="password" />
<label>
Date/Time Format</label>
<select id="user_locale_format"
name="user[locale_format]">
<option value="0">3/25/2006 4:00
PM</option>
<option value="1">25/3/2006 16:00</
option>
<option value="2">2006/3/25 16:00</
option>
</select>
<label>
Time Zone</label>
<select id="user_time_zone"
name="user[time_zone]">
<option value="Eastern Time (US
&amp; Canada)">(GMT-05:00) Eastern Time (US &amp; Canada)</option>
<option value="Central Time (US
&amp; Canada)">(GMT-06:00) Central Time (US &amp; Canada)</option>
<option value="Mountain Time (US
&amp; Canada)">(GMT-07:00) Mountain Time (US &amp;
Canada)</option>
<option value="Pacific Time (US
&amp; Canada)">(GMT-08:00) Pacific Time (US &amp; Canada)</option>
<option value="">-------------</
option>
<option value="International Date
Line West">(GMT-12:00) International Date Line West</option>
<option value="Midway
Island">(GMT-11:00) Midway Island</option>
<option value="Samoa">(GMT-11:00)
Samoa</option>
<option value="Hawaii">(GMT-10:00)
Hawaii</option>
<option value="Alaska">(GMT-09:00)
Alaska</option>
<option
value="Tijuana">(GMT-08:00) Tijuana</option>
<option
value="Arizona">(GMT-07:00) Arizona</option>
<option
value="Chihuahua">(GMT-07:00) Chihuahua</option>
<option value="La Paz">(GMT-07:00)
La Paz</option>
<option
value="Mazatlan">(GMT-07:00) Mazatlan</option>
<option value="Central
America">(GMT-06:00) Central America</option>
<option
value="Guadalajara">(GMT-06:00) Guadalajara</option>
<option value="Mexico
City">(GMT-06:00) Mexico City</option>
<option
value="Monterrey">(GMT-06:00) Monterrey</option>
<option
value="Saskatchewan">(GMT-06:00) Saskatchewan</option>
<option value="Bogota">(GMT-05:00)
Bogota</option>
<option value="Indiana
(East)">(GMT-05:00) Indiana (East)</option>
<option value="Lima">(GMT-05:00)
Lima</option>
<option value="Quito">(GMT-05:00)
Quito</option>
<option value="Atlantic Time
(Canada)">(GMT-04:00) Atlantic Time (Canada)</option>
<option
value="Caracas">(GMT-04:00) Caracas</option>
<option value="La Paz">(GMT-04:00)
La Paz</option>
<option
value="Santiago">(GMT-04:00) Santiago</option>
<option
value="Newfoundland">(GMT-03:30) Newfoundland</option>
<option
value="Brasilia">(GMT-03:00) Brasilia</option>
<option value="Buenos
Aires">(GMT-03:00) Buenos Aires</option>
<option
value="Georgetown">(GMT-03:00) Georgetown</option>
<option
value="Greenland">(GMT-03:00) Greenland</option>
<option value="Mid-
Atlantic">(GMT-02:00) Mid-Atlantic</option>
<option value="Azores">(GMT-01:00)
Azores</option>
<option value="Cape Verde
Is.">(GMT-01:00) Cape Verde Is.</option>
<option value="Casablanca">(GMT)
Casablanca</option>
<option value="Dublin">(GMT)
Dublin</option>
<option value="Edinburgh">(GMT)
Edinburgh</option>
<option value="Lisbon">(GMT)
Lisbon</option>
<option value="London">(GMT)
London</option>
<option value="Monrovia">(GMT)
Monrovia</option>
<option value="Amsterdam">(GMT
+01:00) Amsterdam</option>
<option value="Belgrade">(GMT
+01:00) Belgrade</option>
<option value="Berlin">(GMT+01:00)
Berlin</option>
<option value="Bern">(GMT+01:00)
Bern</option>
<option value="Bratislava">(GMT
+01:00) Bratislava</option>
<option value="Brussels">(GMT
+01:00) Brussels</option>
<option value="Budapest">(GMT
+01:00) Budapest</option>
<option value="Copenhagen">(GMT
+01:00) Copenhagen</option>
<option value="Ljubljana">(GMT
+01:00) Ljubljana</option>
<option value="Madrid">(GMT+01:00)
Madrid</option>
<option value="Paris">(GMT+01:00)
Paris</option>
<option value="Prague">(GMT+01:00)
Prague</option>
<option value="Rome">(GMT+01:00)
Rome</option>
<option value="Sarajevo">(GMT
+01:00) Sarajevo</option>
<option value="Skopje">(GMT+01:00)
Skopje</option>
<option value="Stockholm">(GMT
+01:00) Stockholm</option>
<option value="Vienna">(GMT+01:00)
Vienna</option>
<option value="Warsaw">(GMT+01:00)
Warsaw</option>
<option value="West Central
Africa">(GMT+01:00) West Central Africa</option>
<option value="Zagreb">(GMT+01:00)
Zagreb</option>
<option value="Athens">(GMT+02:00)
Athens</option>
<option value="Bucharest">(GMT
+02:00) Bucharest</option>
<option value="Cairo">(GMT+02:00)
Cairo</option>
<option value="Harare">(GMT+02:00)
Harare</option>
<option value="Helsinki">(GMT
+02:00) Helsinki</option>
<option value="Istanbul">(GMT
+02:00) Istanbul</option>
<option value="Jerusalem">(GMT
+02:00) Jerusalem</option>
<option value="Kyev">(GMT+02:00)
Kyev</option>
<option value="Minsk">(GMT+02:00)
Minsk</option>
<option value="Pretoria">(GMT
+02:00) Pretoria</option>
<option value="Riga">(GMT+02:00)
Riga</option>
<option value="Sofia">(GMT+02:00)
Sofia</option>
<option value="Tallinn">(GMT
+02:00) Tallinn</option>
<option value="Vilnius">(GMT
+02:00) Vilnius</option>
<option value="Baghdad">(GMT
+03:00) Baghdad</option>
<option value="Kuwait">(GMT+03:00)
Kuwait</option>
<option value="Moscow">(GMT+03:00)
Moscow</option>
<option value="Nairobi">(GMT
+03:00) Nairobi</option>
<option value="Riyadh">(GMT+03:00)
Riyadh</option>
<option value="St. Petersburg">(GMT
+03:00) St. Petersburg</option>
<option value="Volgograd">(GMT
+03:00) Volgograd</option>
<option value="Tehran">(GMT+03:30)
Tehran</option>
<option value="Abu Dhabi">(GMT
+04:00) Abu Dhabi</option>
<option value="Baku">(GMT+04:00)
Baku</option>
<option value="Muscat">(GMT+04:00)
Muscat</option>
<option value="Tbilisi">(GMT
+04:00) Tbilisi</option>
<option value="Yerevan">(GMT
+04:00) Yerevan</option>
<option value="Kabul">(GMT+04:30)
Kabul</option>
<option value="Ekaterinburg">(GMT
+05:00) Ekaterinburg</option>
<option value="Islamabad">(GMT
+05:00) Islamabad</option>
<option value="Karachi">(GMT
+05:00) Karachi</option>
<option value="Tashkent">(GMT
+05:00) Tashkent</option>
<option value="Chennai">(GMT
+05:30) Chennai</option>
<option value="Kolkata">(GMT
+05:30) Kolkata</option>
<option value="Mumbai">(GMT+05:30)
Mumbai</option>
<option value="New Delhi">(GMT
+05:30) New Delhi</option>
<option value="Kathmandu">(GMT
+05:45) Kathmandu</option>
<option value="Almaty">(GMT+06:00)
Almaty</option>
<option value="Astana">(GMT+06:00)
Astana</option>
<option value="Dhaka">(GMT+06:00)
Dhaka</option>
<option value="Novosibirsk">(GMT
+06:00) Novosibirsk</option>
<option value="Sri
Jayawardenepura">(GMT+06:00) Sri Jayawardenepura</option>
<option value="Rangoon">(GMT
+06:30) Rangoon</option>
<option value="Bangkok">(GMT
+07:00) Bangkok</option>
<option value="Hanoi">(GMT+07:00)
Hanoi</option>
<option value="Jakarta">(GMT
+07:00) Jakarta</option>
<option value="Krasnoyarsk">(GMT
+07:00) Krasnoyarsk</option>
<option value="Beijing">(GMT
+08:00) Beijing</option>
<option value="Chongqing">(GMT
+08:00) Chongqing</option>
<option value="Hong Kong">(GMT
+08:00) Hong Kong</option>
<option value="Irkutsk">(GMT
+08:00) Irkutsk</option>
<option value="Kuala Lumpur">(GMT
+08:00) Kuala Lumpur</option>
<option value="Perth">(GMT+08:00)
Perth</option>
<option value="Singapore">(GMT
+08:00) Singapore</option>
<option value="Taipei">(GMT+08:00)
Taipei</option>
<option value="Ulaan Bataar">(GMT
+08:00) Ulaan Bataar</option>
<option value="Urumqi">(GMT+08:00)
Urumqi</option>
<option value="Osaka">(GMT+09:00)
Osaka</option>
<option value="Sapporo">(GMT
+09:00) Sapporo</option>
<option value="Seoul">(GMT+09:00)
Seoul</option>
<option value="Tokyo">(GMT+09:00)
Tokyo</option>
<option value="Yakutsk">(GMT
+09:00) Yakutsk</option>
<option value="Adelaide">(GMT
+09:30) Adelaide</option>
<option value="Darwin">(GMT+09:30)
Darwin</option>
<option value="Brisbane">(GMT
+10:00) Brisbane</option>
<option value="Canberra">(GMT
+10:00) Canberra</option>
<option value="Guam">(GMT+10:00)
Guam</option>
<option value="Hobart">(GMT+10:00)
Hobart</option>
<option value="Melbourne">(GMT
+10:00) Melbourne</option>
<option value="Port Moresby">(GMT
+10:00) Port Moresby</option>
<option value="Sydney">(GMT+10:00)
Sydney</option>
<option value="Vladivostok">(GMT
+10:00) Vladivostok</option>
<option value="Magadan">(GMT
+11:00) Magadan</option>
<option value="New Caledonia">(GMT
+11:00) New Caledonia</option>
<option value="Solomon Is.">(GMT
+11:00) Solomon Is.</option>
<option value="Auckland">(GMT
+12:00) Auckland</option>
<option value="Fiji">(GMT+12:00)
Fiji</option>
<option value="Kamchatka">(GMT
+12:00) Kamchatka</option>
<option value="Marshall Is.">(GMT
+12:00) Marshall Is.</option>
<option value="Wellington">(GMT
+12:00) Wellington</option>
<option value="Nuku'alofa">(GMT
+13:00) Nuku'alofa</option>
</select>
</fieldset>
<input class="submit" name="commit"
type="submit" value="Sign Up" />
<img src="/images/indicator.gif"
style="display: none;" id="signup-indicator" />
</form>
</div>
</div>
<script>
Rico.Corner.round('signup-box-wrapper');
</script>
</div>
<!-- Google Code for default Conversion Page -->
<script language="JavaScript" type="text/javascript">
<!--
var google_conversion_type = 'landing';
var google_conversion_id = 1063327613;
var google_conversion_language = "en_US";
var google_conversion_format = "1";
var google_conversion_color = "666666";
//-->
</script>
<script language="JavaScript" src="http://
www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<img height="1" width="1" border="0" src="http://
www.googleadservices.com/pagead/conversion/1063327613/extclk?script=0">
</noscript>
</div>
<div class="clear-fix">
</div>
</div>
</div>
<p id="footer">
<span id="external-links"><a href="http://digg.com/software/
SlimTimer_-_Keeps_Track_of_Time_on_Tasks"
id="digg-link" target="_blank">Digg It!</a> <a
href="http://del.icio.us/post?v=2&url=http://www.slimtimer.com"
id="delicious-link" target="_blank">Del.icio.us</a> </
span>&#169; 2012 <a href="http://www.height1percent.com"
target="_blank">Richard White</a> ... <a
href="http://blog.slimtimer.com" target="_blank">
Blog</a> | <a href="http://
slimtimer.uservoice.com/" target="_blank">Feedback</a>
| <a href="/help/privacy" target="_blank">Privacy Policy</a>
</p>
<script type="text/javascript">

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-7223357-2']);
_gaq.push(['_trackPageview']);

(function () {
var ga = document.createElement('script'); ga.type = 'text/
javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ?
'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();

</script>
<script type="text/javascript">
var uvOptions = {};
(function () {
var uv = document.createElement('script'); uv.type = 'text/
javascript'; uv.async = true;
uv.src = ('https:' == document.location.protocol ?
'https://' : 'http://') + 'widget.uservoice.com/
AKMQiAR03XdbBZt4b0mlvw.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(uv, s);
})();
</script>
</body>
</html>


Regards,
Mariano

Daniel Raftery

unread,
Jun 5, 2012, 10:15:52 PM6/5/12
to slimti...@googlegroups.com
The URL is /users/token

Marianoi

unread,
Jun 5, 2012, 10:22:58 PM6/5/12
to SlimTimer Developer Forum
Thanks a lot, those silly things that are in front of the eyes.
Now I´m getting a 500 error. Anything about it? Thanks!

Regards,
Mariano

On 5 jun, 23:15, Daniel Raftery <dan...@thepurplepig.co> wrote:
> The URL is /users/token

Daniel Raftery

unread,
Jun 5, 2012, 11:04:26 PM6/5/12
to slimti...@googlegroups.com
No problem. What sort of error are you getting? I was getting an "API Key Required" error and removing "www" from my request URL corrected it. You also want to make sure you're setting the accept header

Marianoi

unread,
Jun 6, 2012, 3:28:33 PM6/6/12
to SlimTimer Developer Forum
It throws me "Authentication failed". I´ve set the Accept header, but
still it happens.

Regards,
Mariano

Erico Lendzian

unread,
Jul 13, 2012, 11:49:05 AM7/13/12
to slimti...@googlegroups.com
Hey, I was wondering if you still have issues?
It was very difficult for me to manage to log in into the API, I could give you a hand here.
Reply all
Reply to author
Forward
0 new messages