This project provides a set of resources of Upwork API from http://developers.upwork.com based on OAuth 2.0.
These are the supported API resources:
- My Info
- Custom Payments
- Hiring
- Job and Freelancer Profile
- Search Jobs and Freelancers
- Organization
- Messages
- Time and Financial Reporting
- Metadata
- Snapshot
- Team
- Work Diary
- Activities
Copyright 2018 Upwork Corporation. All Rights Reserved.
php-upwork-oauth2 is licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
The usage of this API is ruled by the Terms of Use at:
https://developers.upwork.com/api-tos.html
To integrate this library you need to have:
- PHP >= 5.6.0
- Composer installed
In addition to this, a full example is available in the example
directory.
This includes example.php
that gets an access token and requests the data.
There is also a composer.json
included to use with Composer.
In order to easily integrate with your application we recommend using Composer to install the dependencies.
Below is a simple example of the composer.json
file you can use:
{
"name": "upwork/my-oauth2-app",
"require": {
"upwork/php-upwork-oauth2": "dev-master"
}
}
Add upwork/php-upwork-oauth2
to your composer.json
, simple example:
{
"name": "my/my-oauth-app",
"require": {
"upwork/php-upwork-oauth2": "v2.0.0" // note: the latest release is recommended
}
}
run the following command /usr/local/bin/composer.phar update
the output should look similar to
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing upwork/php-upwork-oauth2 (v2.0.0)
Downloading: 100%
Writing lock file
Generating autoload files
IMPORTANT:
The library supports different OAuth2 clients, by default it uses thephpleague/oauth2-client
.
In case you don't want to use it, or you don't have the possibility to install it, you can create
your own wrapper (check vendor/upwork/php-upwork-oauth2/src/Upwork/API/AuthTypes/
to see how it works).
copy vendor/upwork/php-upwork-oauth2/example/example.php
to the myapp.php
if you have
NOTE: if you use your own wrapper, update 'authType' property in the configuration section of
myapp.php
and specify the name of your handler.
open myapp.php
and type the clientId
, clientSecret
and redirectUri
that you previously got from the API Center.
Please, read carefully the comments in the example.
That's all. Run your app as php myapp.php
and have fun.