Is the Podio Scrum Board on Github working?

586 views
Skip to first unread message

bward

unread,
Mar 1, 2012, 5:42:10 PM3/1/12
to Podio API
Hi guys -

We just got Podio up and running for my team this last week and are
loving it. We installed the Scrum Development app from the Podio App
Store and have started setting up our data. I then found the Podio
Scrum Board project up on Github (https://github.com/podio/podio-
board) but have been having some issues getting it to run. Here is my
error:

Fatal error: Uncaught exception 'PodioBadRequestError' in C:\inetpub
\wwwroot\scrumboard\podio-php\PodioAPI.php:245 Stack trace:
#0 C:\inetpub\wwwroot\scrumboard\podio-php\PodioAPI.php(146): Podio-
>request('POST', '/oauth/token', Array, Array)
#1 C:\inetpub\wwwroot\scrumboard\index.php(59): Podio-
>authenticate('authorization_c...', Array)
#2 [internal function]: authorize()
#3 C:\inetpub\wwwroot\scrumboard\vendor\limonade.php(424):
call_user_func_array('authorize', Array)
#4 C:\inetpub\wwwroot\scrumboard\index.php(110): run() #5 {main}
thrown in C:\inetpub\wwwroot\scrumboard\podio-php\PodioAPI.php on line
245

Any thoughts if the auth code in this project are up to date with the
current Podio API?

Any help would be appreciated, thanks.

-Brian

Andreas Haugstrup Pedersen

unread,
Mar 2, 2012, 2:45:54 AM3/2/12
to podi...@googlegroups.com
No, it's not up to date at all. I forked it a while ago to do some serious changes. Go here to get the repo where things are actually happening: https://github.com/haugstrup/sample-scrumboard

All the best,
Andreas
--
Andreas Haugstrup Pedersen
Founding Developer, Podio




Patrick Steil

unread,
Mar 2, 2012, 5:27:53 PM3/2/12
to podi...@googlegroups.com
For me, the API is the most powerful part of your product and will be the reason for sucess... sure wish there were some good complete Hello World type apps created that I could literally download and run on my PHP server... the example code I have seen is all incomplete... please correct me if I am wrong... thanks... 

--

Patrick Steil  |  ChurchBuzz.org


Admin

unread,
Mar 4, 2012, 12:18:56 PM3/4/12
to podi...@googlegroups.com
Agreed :o(

I struggled with it for a while, then moved it over to one of our more senior developers, who has already spent a full day wading though it to try and get up to speed on it.

The documentation is not great, and the corresponding examples do seem to be a mixed bag.

Some simple ones like output an app content as an rss feed etc would have been useful.

We're trying to get the google maps sample working but its based on the old Auth method, but no response from anyone in podio yet about what is needed to bring it up to date with the new Auth method.

Perhaps a developers wiki would be useful? (Although i suspect the group of developers is a little too small to support a wiki at the moment, but then all the more reason to really support the developers (and amateur developers) who are trying to hop on board now.

Warren

Andreas Haugstrup Pedersen

unread,
Mar 6, 2012, 1:11:51 AM3/6/12
to podi...@googlegroups.com
Hey Warren and Patrick,

I'm curious to know how we can improve the documentation. We have quite a few tutorials with code examples for both Ruby and PHP on the developer site. Can you give details on what would make it easier for you to get started? We're happy to improve the documentation and the getting started guides, but without feedback on specifics we're just taking shots in the dark.

Warren, I emailed you back with a link to our authentication articles at https://developers.podio.com/authentication (there are four articles that cover all our authentication options). You didn't get back to me so I assumed you were doing fine. Where are you running into trouble?

Patrick, I added some authentication examples / hello world PHP scripts to the PHP client earlier today: https://github.com/podio/podio-php/tree/master/examples Was it something like that you were missing or is it something else you are looking for?

All the best,
Andreas Haugstrup Pedersen

Admin

unread,
Mar 6, 2012, 5:05:15 AM3/6/12
to podi...@googlegroups.com
I think this is about bringing samples up to date. The change in recommended method of Auth using an app key is great. What would be even more helpful is if the samples were updated to reflect this change.

Perhaps all the samples are not 'official' (We're looking at the map sample on Git Hub) but if they are bringing them up to date with the new best practice would be very helpful.

I'm more of a php 'hacker' in so much as I can hack together code from samples etc, but I do enjoy doing it, but need my first few examples to work so I can get a clear idea of what I'm doing.

While I'm not a 'developer' I would say I'm quite representative of what you might find in a number of organisations where if i had a good example on spitting out an app as an rss feed, i could cobble together a dashboard to keep visibility on some priority information and happenings.

Anyway, my point is the examples are far more important to me than the documentation as they act as the starting points for real world things. When the samples are not up to date with the 'new way or best practice' that causes headaches.

Also having examples on the website itself would be great. While GIT is great, Its hard to know when what your looking at git is:

1) An official example from Podio that you expect to just work
2) A pet project of a Podio Employee who's trying to help (so no guarantees)
3) A friendly third party that's hard to tell what his/her connection is.


Now forgive me if all the above already exists, but in the day to day hectic-ness of life and business I may have missed it or misunderstood, but if that's the case then there is a lesser issue of presentation to be looked at :o)

Warren

Brook Warner

unread,
Jun 21, 2012, 6:48:04 AM6/21/12
to podi...@googlegroups.com
I am getting the same error, and not really sure where to next? What do i need to do?

Andreas Haugstrup Pedersen

unread,
Jun 21, 2012, 12:47:43 PM6/21/12
to podi...@googlegroups.com
Hi Brook,

The repo you pulled is rather old and I'm pretty sure I deleted that a long time ago. It certainly gives me a 404 now. Grab the newest code from https://github.com/haugstrup/sample-scrumboard -- I just made a small update so it will at least give you a nicer error message we can use to debug with.

All the best,
Andreas

Brook Warner

unread,
Jun 21, 2012, 9:42:14 PM6/21/12
to podi...@googlegroups.com
Hey there.

I was using the lastest build but ive just pulled your last commit. The error message is still the same...

Fatal error: Uncaught exception 'PodioBadRequestError' in /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php:241 Stack trace: #0 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php(143): Podio->request('POST', '/oauth/token', Array, Array) #1 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php(249): Podio->authenticate('refresh_token', Array) #2 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php(301): Podio->request('GET', '/item/app/11171...', Array) #3 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/areas/PodioItem.php(153): Podio->get('/item/app/11171...', Array) #4 /Applications/XAMPP/xamppfiles/htdocs/scrumboard/index.php(25): PodioItem->getItems(1117175, Array) #5 [internal function]: scrumboard() #6 /Applications/XAMPP/xamppfiles/htdocs/scrumboard/vendor/limonade.php(424): call_user_func_array('scrumboard', Array) #7 /Applications/XAMPP/xamppfiles/htdocs/scrumboard/index.php(115): run() #8 {main} thrown in /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php on line 241

I'm learning, so I don't know what Stack Trace means....


Brook Warner

Brook Warner

unread,
Jun 21, 2012, 9:56:50 PM6/21/12
to podi...@googlegroups.com
Also, perhaps a very n00b question, but what values do I put in these sections:

define('STORY_SPRINT_ID', "sprint");
define('STORY_OWNER', "product-owner");
define('STORY_IMPORTANCE_ID', null);

Brook Warner

unread,
Jun 24, 2012, 11:33:46 PM6/24/12
to podi...@googlegroups.com

Here is my latest error messages. I think that I am filling in config.php wrong, but I am very unclear as to what to put where.

There was an error. The API responded with the error type invalid_value and the message Invalid value u'': Must not be empty (at property 'values': at position 0). The URL was /item/app/1117174/v2/?limit=200&sort_by=title&sort_desc=0&sprint=

Here is my config.php file:

<?php

define('OAUTH_ENDPOINT', 'https://podio.com/oauth/authorize');
define('CLIENT', '/Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php');
define('CLIENT_ID', 'XXXXXXX');
define('CLIENT_SECRET', 'XXXXXXXX');

define('SPRINT_APP_ID', 1117175);
define('SPRINT_STATE_ID', "state");

define('STORY_APP_ID', 1117174);
define('STORY_SPRINT_ID', "sprint");
define('STORY_OWNER', "product-owner");
define('STORY_IMPORTANCE_ID', null);

define('ITEM_TITLE_ID', "title");
define('ITEM_APP_ID', 1117176);
define('ITEM_STORY_ID', "story");
define('ITEM_STATE_ID', "state");
define('ITEM_ESTIMATE_ID', "estimate");
define('ITEM_TIMELEFT_ID', "time-left");
define('ITEM_RESPONSIBLE_ID', "responsible");

define('STATE_DEV_DONE', 'Development done');
define('STATE_QA_DONE', 'QA done');
define('STATE_PO_DONE', 'PO done');
define('STATE_NOT_STARTED', 'Not started');



Help?



Brook

On Friday, 22 June 2012 13:56:50 UTC+12, Brook Warner wrote:
Also, perhaps a very n00b question, but what values do I put in these sections:

define('STORY_SPRINT_ID', "sprint");
define('STORY_OWNER', "product-owner");
define('STORY_IMPORTANCE_ID', null);

On Friday, 22 June 2012 13:42:14 UTC+12, Brook Warner wrote:
Hey there.

I was using the lastest build but ive just pulled your last commit. The error message is still the same...

Fatal error: Uncaught exception 'PodioBadRequestError' in /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php:241 Stack trace: #0 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php(143): Podio->request('POST', '/oauth/token', Array, Array) #1 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php(249): Podio->authenticate('refresh_token', Array) #2 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php(301): Podio->request('GET', '/item/app/11171...', Array) #3 /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/areas/PodioItem.php(153): Podio->get('/item/app/11171...', Array) #4 /Applications/XAMPP/xamppfiles/htdocs/scrumboard/index.php(25): PodioItem->getItems(1117175, Array) #5 [internal function]: scrumboard() #6 /Applications/XAMPP/xamppfiles/htdocs/scrumboard/vendor/limonade.php(424): call_user_func_array('scrumboard', Array) #7 /Applications/XAMPP/xamppfiles/htdocs/scrumboard/index.php(115): run() #8 {main} thrown in /Applications/XAMPP/xamppfiles/htdocs/podio-podio-php/PodioAPI.php on line 241

I'm learning, so I don't know what Stack Trace means....


Brook Warner




Nick Barnwell

unread,
Jun 24, 2012, 11:36:07 PM6/24/12
to podi...@googlegroups.com
You're missing a required field in the call – double check the API documentation and make sure you are sending all of the required parameters.

Brook Warner

unread,
Jun 25, 2012, 12:58:43 AM6/25/12
to podi...@googlegroups.com
I think i may have solved that issue, but now have another.

"

There was an error. The API responded with the error type invalid_client and the message Invalid auth, only basic supported


'


Here is my config.php 

<?php


define('OAUTH_ENDPOINT', 'https://podio.com/oauth/authorize');

define('CLIENT', '/Applications/XAMPP/xamppfiles/htdocs/podio-php/PodioAPI.php');

define('CLIENT_ID', '*****');

define('CLIENT_SECRET', '******');


define('1117175', null); //'SPRINT_APP_ID', 

define('8247475', "state");//'SPRINT_STATE_ID',


define('1117174', null);//'STORY_APP_ID', 

define('8247473', "sprints");//'STORY_SPRINT_ID', 

define('8247474', "owner");//'STORY_OWNER', 

define('', null);//'STORY_IMPORTANCE_ID', 


define('8247481', "quests");//'ITEM_TITLE_ID', 

define('1117176', null);//'ITEM_APP_ID', 

define('8247482', "story");//'ITEM_STORY_ID', 

define('8247485', "state");//'ITEM_STATE_ID', 

define('8247483', "estimate");//'ITEM_ESTIMATE_ID', 

define('8247484', "time-remaining");//'ITEM_TIMELEFT_ID', 

define('8247486', "product-owner");//'ITEM_RESPONSIBLE_ID', 


define('STATE_DEV_DONE', 'Development done');

define('STATE_QA_DONE', 'QA done');

define('STATE_PO_DONE', 'PO done');

define('STATE_NOT_STARTED', 'Not started');



Nick Barnwell

unread,
Jun 25, 2012, 1:01:30 AM6/25/12
to podi...@googlegroups.com
'authorize' should be 'token' if you're doing app authentication I believe

Brook Warner

unread,
Jun 25, 2012, 1:04:29 AM6/25/12
to podi...@googlegroups.com
As in, change 


to

https://podio.com/oauth/token');


cos that doesn't work :(

Andreas Haugstrup Pedersen

unread,
Jun 25, 2012, 12:30:31 PM6/25/12
to podi...@googlegroups.com
Hi Brook,

There are multiple things here. I think for starters it's best if you revert to the config sample and start over because this one has gotten a bit mangled. :)

You don't need to change the oauth endpoint. It's only in the config file because I sometimes have to switch to a different one when I'm doing development against our pre-production environment.

As for the define() statements: Do not touch the first argument. This is the key that the scrumboard needs. You only ever touch the second argument (the value). Also, it seems like you are putting in external_ids. The scrumboard requires field_ids for fields and app_ids for apps.

So:

define('STORY_SPRINT_ID', null);

becomes

define('STORY_SPRINT_ID', 123456); // If your field_id for the sprint app reference field is 123456

You find the app_id by going to your app on Podio and clicking the wrench by the app name in the sidebar and then clicking on 'Developer'.

You find the field_ids by going here https://developers.podio.com/doc/applications/get-app-22349 scrolling to the bottom and putting in the app_id. You have to do this for each of the three apps.

The only optional field_id is STORY_IMPORTANCE_ID. Something will break if you don't put in values for everything else.

Does that help?

- Andreas

Brook Warner

unread,
Jun 25, 2012, 6:10:18 PM6/25/12
to podi...@googlegroups.com
Awesome, that really helps with getting the config.php sorted.

I am still having the error message 

There was an error. The API responded with the error type invalid_client and the message Invalid auth, only basic supported 

though.

Why is this occurring?


Andreas Haugstrup Pedersen

unread,
Jun 26, 2012, 5:07:05 PM6/26/12
to podi...@googlegroups.com
Did you set the CLIENT_ID constant to match one of your API keys? And the domain you entered when creating your API key match the domain you are making requests from?

Try also closing your browser and opening it up again. This deletes your user session in case you ended up with a bad one.

- Andreas
Reply all
Reply to author
Forward
0 new messages