PHPackages                             upwork/php-upwork - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. upwork/php-upwork

AbandonedArchivedLibrary[API Development](/categories/api)

upwork/php-upwork
=================

PHP bindings for Upwork API

v1.4.0(5y ago)4913.4k41[3 issues](https://github.com/upwork/php-upwork/issues)1Apache-2.0PHPPHP &gt;=5.3.3

Since May 5Pushed 1y ago44 watchersCompare

[ Source](https://github.com/upwork/php-upwork)[ Packagist](https://packagist.org/packages/upwork/php-upwork)[ Docs](http://www.upwork.com)[ RSS](/packages/upwork-php-upwork/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (15)Used By (1)

PHP bindings for Upwork API (OAuth1) - DEPRECATED
=================================================

[](#php-bindings-for-upwork-api-oauth1---deprecated)

[![License](https://camo.githubusercontent.com/0c05801eeb468c69a212eb022c417f51e085a751a37df5bf4c7aacd0015c3d96/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f7570776f726b2f7068702d7570776f726b)](http://www.apache.org/licenses/LICENSE-2.0.html)[![Latest Stable Version](https://camo.githubusercontent.com/ab94467d67c97274b108d92d43b219e88f0339d233631128732968a22df48034/68747470733a2f2f706f7365722e707567782e6f72672f7570776f726b2f7068702d7570776f726b2f762f737461626c652e737667)](https://github.com/upwork/php-upwork/releases)[![Package version](https://camo.githubusercontent.com/31a85e1487c3d867785c864d77adaf7af3b183bcd703374a8239ccc5ef1dea39/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7570776f726b2f7068702d7570776f726b2e737667)](https://packagist.org/packages/upwork/php-upwork)[![Build status](https://github.com/upwork/php-upwork/workflows/build/badge.svg)](https://github.com/upwork/php-upwork2/actions)[![Monthly downloads](https://camo.githubusercontent.com/b1eef96ac148f0947015d0cef76158a5c448c5251abe9dcb92c3cbcb4b51e224/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646d2f7570776f726b2f7068702d7570776f726b2e737667)](https://packagist.org/packages/upwork/php-upwork)

Introduction
============

[](#introduction)

This project provides a set of resources of Upwork API from based on OAuth 1.0a.

Features
========

[](#features)

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

License
=======

[](#license)

Copyright 2015 Upwork Corporation. All Rights Reserved.

php-upwork 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

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.

SLA
---

[](#sla)

The usage of this API is ruled by the Terms of Use at:

```
https://developers.upwork.com/api-tos.html

```

Application Integration
=======================

[](#application-integration)

To integrate this library you need to have:

- PHP &gt;= 5.3.0
- OAuth Extension installed (optional), we recommend using official pecl extension, but in case you want to use your own library, you need to drop line 'ext-oauth' from composer json, or do not use composer, which is also optional. In that case, you need to setup the 'authType' parameter in your configuration options. The source contains an oauth-php library that can be used as alternative. See more in the AuthTypes directory if you want to create an authentication layer for your own client library.
- Composer installed (optional)

Example
-------

[](#example)

In addition to this, a full example is available in the `example` directory. This includes `console.php` that gets an access token and requests the data for applications that are not web-based, and `web.php` for web-based applications. You can also find the `console-own-auth-lib.php` file to use your own php client together with this Upwork library.

There is also a `composer.json` included to use with Composer.

Composer
--------

[](#composer)

In order to easily integrate with your application we recommend using [Composer](https://getcomposer.org) to install the dependencies.

Below is a simple example of the `composer.json` file you can use:

```
{
    "name": "upwork/my-oauth-app",
    "require": {
        "upwork/php-upwork": "dev-master"
    }
}

```

Installation using Composer
---------------------------

[](#installation-using-composer)

1.

Add `upwork/php-upwork` to your `composer.json`, simple example:

```
{
    "name": "my/my-oauth-app",
    "require": {
        "upwork/php-upwork": "v1.1.0" // note: the latest release is recommended
    }
}

```

2.

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 (v1.1.0)
    Downloading: 100%

Writing lock file
Generating autoload files

```

3.

IMPORTANT: The library supports different OAuth clients, by default it requires PECL PHP extension (see more at ). Make sure it is installed. In case you don't want to use it, or you don't have the possibility to install it, you can use a preloaded php library, called oauth-php (read more in vendor-src/README).

copy `vendor/upwork/php-upwork/example/console.php` to the `myapp.php` if you have `ext-oauth` installed

or

copy `vendor/upwork/php-upwork/example/console-own-auth-lib.php` to `myapp.php` if you want to use preloaded php library as OAuth client

otherwise

- check `vendor/upwork/php-upwork/src/Upwork/API/AuthTypes/` and create your own wrapper for OAuth
- copy `vendor/upwork/php-upwork/example/console-own-auth-lib.php` to `myapp.php`
- after that update 'authType' property in the configuration section of `myapp.php` and specify the name of your handler.

*NOTE: use `web.php` example if you are creating a web-based application.*

4.

open `myapp.php` and type the consumerKey and consumerSecret that you previously got from the API Center. ***That's all. Run your app as `php myapp.php` and have fun.***

Installation by downloading sources
-----------------------------------

[](#installation-by-downloading-sources)

1.

Download latest release from , let's say it is , and extract it to `vendor/upwork` folder, located in the root directory of your application.

2.

Create vendor/autoload.php, a possible simple variant could be:

```
require_once __DIR__ . '/upwork/php-upwork-1.1.0/src/Upwork/API/constants.php';

spl_autoload_register('UpworkVendorAutoloader');

function UpworkVendorAutoloader($_class)
{
    $path = __DIR__ . '/upwork/php-upwork-1.1.0/src/' . str_replace('\\', '/', $_class) . '.php';
    include_once $path;
}

```

3.

open `myapp.php` and type the consumerKey and consumerSecret that you previously got from the API Center.

***That's all. Run your app as `php myapp.php` and have fun.***

###  Health Score

43

—

FairBetter than 91% of packages

Maintenance34

Infrequent updates — may be unmaintained

Popularity38

Limited adoption so far

Community23

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 98.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~150 days

Recently: every ~210 days

Total

14

Last Release

2078d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/188588a50fdacb60a09035f700b45965348ea9b77c9ac12a76f0797a3565ee05?d=identicon)[Maksym Novozhylov](/maintainers/Maksym%20Novozhylov)

---

Top Contributors

[![mnovozhylov](https://avatars.githubusercontent.com/u/197380?v=4)](https://github.com/mnovozhylov "mnovozhylov (62 commits)")[![reedy](https://avatars.githubusercontent.com/u/67615?v=4)](https://github.com/reedy "reedy (1 commits)")

---

Tags

phpupwork-apiphpapiupwork

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/upwork-php-upwork/health.svg)

```
[![Health](https://phpackages.com/badges/upwork-php-upwork/health.svg)](https://phpackages.com/packages/upwork-php-upwork)
```

###  Alternatives

[jstolpe/instagram-graph-api-php-sdk

Instagram Graph API PHP SDK

13998.4k2](/packages/jstolpe-instagram-graph-api-php-sdk)[upwork/php-upwork-oauth2

PHP bindings for Upwork API (OAuth2)

153.8k](/packages/upwork-php-upwork-oauth2)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
