PHPackages                             makarenko/worksnaps-bundle - 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. makarenko/worksnaps-bundle

ActiveLibrary

makarenko/worksnaps-bundle
==========================

Bundle provide ability work with Worksnaps API.

127PHP

Since Sep 4Pushed 9y ago1 watchersCompare

[ Source](https://github.com/umbrella-yuri-makarenko/worksnaps-api-client)[ Packagist](https://packagist.org/packages/makarenko/worksnaps-bundle)[ RSS](/packages/makarenko-worksnaps-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Worksnaps API client - Symfony Bundle
=====================================

[](#worksnaps-api-client---symfony-bundle)

[![SensioLabsInsight](https://camo.githubusercontent.com/2010dccfb127e8ae0760579f16013666f6e3c4b2090b23654a466e591a69b8e9/68747470733a2f2f696e73696768742e73656e73696f6c6162732e636f6d2f70726f6a656374732f61643166393939392d623166312d343735362d383538392d3237363333376630363731362f6269672e706e67)](https://insight.sensiolabs.com/projects/ad1f9999-b1f1-4756-8589-276337f06716)

Install the Bundle
------------------

[](#install-the-bundle)

`composer require makarenko/worksnaps-bundle`

Enable the Bundle
-----------------

[](#enable-the-bundle)

```
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new Umbrella\WorksnapsBundle\WorksnapsBundle(),
        );

        // ...
    }

    // ...
}

```

Configure the Bundle
--------------------

[](#configure-the-bundle)

```
# app/config/config.yml
worksnaps:
    api_key: "YOUR API KEY HERE"

```

Working in code
---------------

[](#working-in-code)

### Project API

[](#project-api)

#### Get all projects

[](#get-all-projects)

` $allProjects = $this->get('umbrella.worksnaps')->getProjects();`

#### Get project by ID

[](#get-project-by-id)

` $project = $this->get('umbrella.worksnaps')->getProject( $projectId );`

======

### Task API

[](#task-api)

#### Get tasks in project

[](#get-tasks-in-project)

` $tasks = $this->get('umbrella.worksnaps')->getTasks( $projectId );`

#### Get task

[](#get-task)

` $task = $this->get('umbrella.worksnaps')->getTask( $projectId, $taskId );`

======

### User Assignment API

[](#user-assignment-api)

#### Get users from project

[](#get-users-from-project)

` $users = $this->get('umbrella.worksnaps')->getUsersFromProject( $projectId );`

#### Get user from project

[](#get-user-from-project)

` $user = $this->get('umbrella.worksnaps')->getUserFromProject( $projectId, $userId );`

======

### User Account API

[](#user-account-api)

#### Get my user

[](#get-my-user)

` $myUser = $this->get('umbrella.worksnaps')->getMyUser();`

#### Get users

[](#get-users)

` $users = $this->get('umbrella.worksnaps')->getUsers();`

#### get user

[](#get-user)

` $user = $this->get('umbrella.worksnaps')->getUser( $userId );`

======

### Task Assignment API

[](#task-assignment-api)

#### Get tasks assignments in a project

[](#get-tasks-assignments-in-a-project)

` $tasksInProject = $this->get('umbrella.worksnaps')->getTasksFromProject( $projectId );`

#### Get task assignment in a project

[](#get-task-assignment-in-a-project)

` $taskInProject = $this->get('umbrella.worksnaps')->getTaskFromProject( $projectId, $taskId );`

======

### Time Entry API

[](#time-entry-api)

#### Get time entries in the specified project

[](#get-time-entries-in-the-specified-project)

` $timeEntries = $this->get('umbrella.worksnaps')->getTimeEntries( $projectId, array( $userId ), $fromTimestamp, $toTimestamp );`

#### Get time entries of the specified user in the specified project

[](#get-time-entries-of-the-specified-user-in-the-specified-project)

` $timeEntriesForUser = $this->get('umbrella.worksnaps')->getTimeEntriesForUser( $projectId, $userId, $fromTimestamp, $toTimestamp );`

#### Get the URL of full resolution screenshot of a time entry

[](#get-the-url-of-full-resolution-screenshot-of-a-time-entry)

` $fullUrl = $this->get('umbrella.worksnaps')->getScreenshot( $projectId, $timeEntryId );`

#### Get time entry

[](#get-time-entry)

` $timeEntry = $this->get('umbrella.worksnaps')->getTimeEntry( $projectId, $timeEntryId );`

======

### Report API

[](#report-api)

` $report = $this->get('umbrella.worksnaps')->getReport( $projectId, $fromTimestamp, $toTimestamp, [ $userId ] );`

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/4701eb3637cd90d0208afe3d6e475f5d6b5a4c09c18942adae0087fb3172682b?d=identicon)[ynmakarenko](/maintainers/ynmakarenko)

### Embed Badge

![Health badge](/badges/makarenko-worksnaps-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/makarenko-worksnaps-bundle/health.svg)](https://phpackages.com/packages/makarenko-worksnaps-bundle)
```

PHPackages © 2026

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