diff --git a/README.md b/README.md index 57de449..dfdc17e 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ -PHP bindings for Upwork API +PHP bindings for Upwork API (OAuth1) ============ -[![License](http://img.shields.io/packagist/l/upwork/php-upwork.svg)](http://www.apache.org/licenses/LICENSE-2.0.html) +[![License](https://img.shields.io/github/license/upwork/php-upwork)](http://www.apache.org/licenses/LICENSE-2.0.html) [![Latest Stable Version](https://poser.pugx.org/upwork/php-upwork/v/stable.svg)](https://github.com/upwork/php-upwork/releases) [![Package version](http://img.shields.io/packagist/v/upwork/php-upwork.svg)](https://packagist.org/packages/upwork/php-upwork) [![Build status](https://travis-ci.org/upwork/php-upwork.svg)](http://travis-ci.org/upwork/php-upwork) diff --git a/src/Upwork/API/Routers/Messages.php b/src/Upwork/API/Routers/Messages.php index 949582d..9f3094b 100644 --- a/src/Upwork/API/Routers/Messages.php +++ b/src/Upwork/API/Routers/Messages.php @@ -77,6 +77,25 @@ public function getRoomDetails($company, $roomId, $params = array()) return $response; } + /** + * Get messages from a specific room + * + * @param string $company Company ID + * @param string $roomId Room ID + * @param array $params List of parameters + * @access public + * @return object + */ + public function getRoomMessages($company, $roomId, $params = array()) + { + ApiDebug::p(__FUNCTION__); + + $response = $this->_client->get('/messages/v3/' . $company . '/rooms/' . $roomId . '/stories', $params); + ApiDebug::p('received data', $response); + + return $response; + } + /** * Get a specific room by offer ID * diff --git a/src/Upwork/API/Routers/Metadata.php b/src/Upwork/API/Routers/Metadata.php index 6a1b601..2674086 100644 --- a/src/Upwork/API/Routers/Metadata.php +++ b/src/Upwork/API/Routers/Metadata.php @@ -72,6 +72,36 @@ public function getSkills() return $response; } + /** + * Get Skills V2 + * + * @return object + */ + public function getSkillsV2() + { + ApiDebug::p(__FUNCTION__); + + $response = $this->_client->get('/profiles/v2/metadata/skills'); + ApiDebug::p('found response info', $response); + + return $response; + } + + /** + * Get Specialties + * + * @return object + */ + public function getSpecialties() + { + ApiDebug::p(__FUNCTION__); + + $response = $this->_client->get('/profiles/v1/metadata/specialties'); + ApiDebug::p('found response info', $response); + + return $response; + } + /** * Get regions * diff --git a/tests/Upwork/API/Routers/MessagesTest.php b/tests/Upwork/API/Routers/MessagesTest.php index dd7071f..0d4f76a 100644 --- a/tests/Upwork/API/Routers/MessagesTest.php +++ b/tests/Upwork/API/Routers/MessagesTest.php @@ -35,6 +35,17 @@ public function testGetRoomDetails() $this->_checkResponse($response); } + /** + * @test + */ + public function testGetRoomMessages() + { + $router = new \Upwork\API\Routers\Messages($this->_client); + $response = $router->getRoomMessages('company', 'room-id', array()); + + $this->_checkResponse($response); + } + /** * @test */ diff --git a/tests/Upwork/API/Routers/MetadataTest.php b/tests/Upwork/API/Routers/MetadataTest.php index bbe2248..2cc2954 100644 --- a/tests/Upwork/API/Routers/MetadataTest.php +++ b/tests/Upwork/API/Routers/MetadataTest.php @@ -35,6 +35,28 @@ public function testGetSkills() $this->_checkResponse($response); } + /** + * @test + */ + public function testGetSkillsV2() + { + $router = new \Upwork\API\Routers\Metadata($this->_client); + $response = $router->getSkillsV2(); + + $this->_checkResponse($response); + } + + /** + * @test + */ + public function testGetSpecialties() + { + $router = new \Upwork\API\Routers\Metadata($this->_client); + $response = $router->getSpecialties(); + + $this->_checkResponse($response); + } + /** * @test */