slakbal / gotowebinar Goto Github PK
View Code? Open in Web Editor NEWLaravel GoToWebinar API wrapper
License: MIT License
Laravel GoToWebinar API wrapper
License: MIT License
Hi,
in email from goto support they said:
We want to inform you of two upcoming changes regarding GoTo APIs, which could affect your integrations.
They are:
API host deprecation (api.jive.com) – Replaced by new host (api.goto.com)
Authentication for API tokens -- API Token Migration Guide
GoTo Connect API Host Migration
We are deprecating the old API host api.jive.com and migrating to a new host: api.goto.com. This transition is crucial to ensure uninterrupted service for your end users. The adjustment is needed before our upcoming deprecation timeline of August 28th, 2024, at which point those legacy endpoints will no longer function. Although there is ample time before the deprecation deadline the changes are vital to uninterrupted service for your customers and we encourage you to implement them quickly. After August 28th, 2024, the old host will be officially decommissioned and any integrations utilizing the old host will no longer function. We have a migration guide for the needed host change here.
GoTo API Token Authentication Migration
For increased security and stability, GoTo is deprecating one of the available token authentication services (api.getgo.com) and migrating current users to authenticate with (authentication.logmeininc.com). To achieve uninterrupted service this change is vital, the authorization process using api.getgo.com will be decommissioned August 28th, 2024. The migration needs to be done before that date for authentication to continue to function correctly. We have comprehensive migration guide: Authentication API Token Migration Guide that has steps informing on how to migrate from api.getgo.com to authenticaion.logmeininc.com.
We have several project that use your library for accessing goto resources.
I'm intereseted in two things:
Thanks in advance,
Vladan Aleksic
array:2 [
"state" => "Access object available"
"accessObject" => {#278
+"error": "invalid_client"
+"error_description": "Client authentication failed."
}
]
I get this error in browser after this in my controller:
$gotoResponse = GotoWebinar::state(false);
dd($gotoResponse);
I guess I did not set up something, but I did as I read in the doc. So I got this package in my laravel project, I've made an app in goto-developer page. I got the keys and I put in into my .env file like this, but with my real datas.
GOTO_DIRECT_USER=
GOTO_CONSUMER_SECRET=
GOTO_CONSUMER_KEY=
Not sure GoTo have changed things on their end or the documentation is incorrect.
You talk about creating an App under "My Apps", but this menu option does not exist in the developer back end. Trying to use an OAuth Clients, which is the option I see in the menu, only results in an authentication error.
Slakbal\Gotowebinar\Exception\GotoException : Unauthorized - Could not authenticate with the provided credentials.
Hi there, so I was playing with the API and I noticed something that, judging by comments you left in the repo, you have also noticed.
When using the test routes that display the JSON response, any call I tried to make using the registrant key given from the response to a registrant create call would fail with a 404 as if that registrant did not exist, which was very confusing since the API had just given me a response with the apparently incorrect key!
It was then that I noticed that, like the registrant keys in your comments, my registrant keys were also ending in a bunch of zeros.
I then looked at the raw response data and to my surprise, the registrant key that was in the raw response was NOT the same key that my browser was displaying!
It seems that the GoToWebinar API actually breaks a JSON standard by encoding this Registrant Key as an INT; the number is simply too big! Firefox was interperating the INT and simply rounding up the last few digits for whatever reason.
In further testing, it seems like the package works just fine in PHP land, the correct key is present in the response object. All that was broken was the way that Firefox chose to display the key, which led me to input the incorrect key when making subsequent calls.
This may be old news to you but I thought I would mention this here for anyone else that has had the same problem, as I suspect you may have judging by the comments left in the registrant routes file of the repo.
I would recommend perhaps mentioning this wierd little bug in the README as I'm sure I won't be the last person to spend way too long bashing their head against this issue!
when are we going to have a laravel 6.5.0 compatible?
In Laravel 5.5 cache ttl is set in minutes
and in the latest code seconds
is used, any chance for a config setting for ttl, or other solution?
private function setAccessToken($accessToken, $ttlSeconds = null)
{
Cache::tags($this->cache_tags)->put('access-token', $accessToken, $ttlSeconds ?? Carbon::now()->addHour());
return $this;
}
We can't update right now the project to L5.8+ because it's so huge not feasible
thanks
Hi,
to support Laravel 8 guzzle version has to be bumped up to ^7.0.1 and illuminate/contracts to ^7.20.0.
Should i create a pull request for that or could you do it?
BTW I did a quick search in src/ and i couldn't find any usage of Guzzle.
@slakbal I just received this today from GoTo Developer Center:
Thank you for using the GoTo Developer Center. We informed you earlier in the year about LogMeIn GoTo Developer Center and API enforcement of the strict OAuth 2.0 authentication protocol to improve security of our API program. This change requires your action.
Support for the old protocol has been extended until January 31, 2019 to give you time to test and update your code to use the new authentication services available under https://api.getgo.com/oauth/v2.
Do you have any intentions of building out the OAuth 2.0 auth type like you stated in your config file?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.