Jira, GitLab, Asana and Trello
Это содержимое пока не доступно на вашем языке.
Focus keeps its projects and tasks in sync with Jira, GitLab, Asana and Trello: issues become tasks, and a task’s status and name go back to the issue. With Jira and GitLab, the time people log on a task can be sent back as well. Issue tracker sync is part of the Premium plan. Owners and admins set it up in Settings → Integrations, which is also where calendar sync and user import, both part of Pro as well, and the developer settings start (calendar sync, user import).
If Workify360 has not set up a provider yet, its card says it is not available (integration_not_configured).
Connect a provider
Section titled “Connect a provider”| Provider | How it connects |
|---|---|
| Jira Cloud | Sign in at Atlassian and allow access. Focus uses the first Jira site of the account. |
| GitLab | A personal, group or project access token with the api scope. For a self-managed GitLab, also its address; it must be a public https address. |
| Asana | A personal access token. |
| Trello | An API key and a token of the Trello account. |
Each provider account can be connected once per organization (connection_exists). Focus checks a token when you
add it and refuses one the provider does not accept (provider_rejected). The connection runs on behalf of the
organization: the changes it makes in Focus are recorded in the audit log under the connection’s own name, not under
a person’s.
Link a project
Section titled “Link a project”Open the connection and choose Link a project. Pick a project of the provider, and either an existing Focus project
or a new one that Focus creates for it. A provider project and a Focus project can be linked only once per
connection (project_link_exists). For each link you choose what is synced:
| Option | Default | What it does |
|---|---|---|
| Import issues | On | Issues become tasks of the Focus project |
| Send status | On | A task’s status (and its name) goes back to the issue |
| Create issues | Off | A task created in Focus becomes a new issue |
| Send logged time | Off | Time assigned to a task is added to the issue as logged time (Jira and GitLab only) |
The first sync starts right after you link the project. Removing a link stops the sync; the tasks stay in the Focus project.
How the sync works
Section titled “How the sync works”- Schedule: every 10 minutes Focus asks the provider for the issues that changed. Sync now on the connection
starts a sync at once, at most once a minute (
sync_too_frequent). Focus does not receive the providers’ own webhooks. - Task names: an issue becomes a task named after its key and summary, such as
MOB-12 Login screen. Changing the project’s name at the provider does not rename the Focus project. - Status: each provider’s states are mapped to the task statuses open, in progress and done (see the table below).
- Assignee: when the issue’s assignee has an e-mail address the provider shares, and that person is a member who may work on the project, they become the task’s assignee; otherwise the task has none.
- Conflicts: when an issue and its task both changed since the last sync, the provider wins: the task takes the issue’s values and is marked as a conflict until the next clean sync. The connection’s problem list shows these.
- Deleted issues: a task whose issue was deleted or moved out of the project is archived, not deleted, because time may be assigned to it. Archiving a task in Focus leaves its issue unchanged.
Send logged time
Section titled “Send logged time”With Send logged time on, time that people assign to a linked task is added to the issue:
- Jira: as a worklog, which is changed or deleted when the time in Focus changes.
- GitLab: as spent time; a correction is sent as negative spent time, because GitLab has no separate entries.
The worklog’s comment says “Workify360”. Only when you choose to name the person on the link does it also carry the person’s name. The logged time is then in your issue tracker, which your organization manages; erasing someone in Focus does not remove it there.
What each provider supports
Section titled “What each provider supports”| Capability | Jira | GitLab | Asana | Trello |
|---|---|---|---|---|
| Connect, list projects | Yes | Yes | Yes | Yes (boards) |
| Issues become tasks | Yes | Yes | Yes | Yes (cards) |
| Status mapping | Status category (to do, in progress, done) | Open or closed, plus an in-progress label (doing by default) | Completed or not | Lists: the first list is open, the last is done, the ones between are in progress |
| Task status back to the issue | Yes (a workflow transition) | Yes (close, reopen, label) | Yes (completed) | Yes (moves the card) |
| New task becomes an issue | Yes | Yes | Yes | Yes (in the first list) |
| Task name back to the issue | Yes | Yes | Yes | Yes |
| Send logged time | Yes | Yes | No | No |
| Assignee by e-mail | Yes (when the e-mail is visible) | Yes (when the public e-mail is set) | Yes | No |
| Estimate, due date | Yes, yes | Yes, yes | No, yes | No, yes |
When Jira has no transition to the status a task needs, the issue stays as it is and the problem list shows it.
Pause, take over or remove a connection
Section titled “Pause, take over or remove a connection”- The connection belongs to the admin who connected it. If that person stops being an owner or admin, or leaves, the
connection pauses and the other admins are notified; another admin takes it over to resume it. A paused connection
refuses a sync (
connection_paused). - If the provider stops accepting the access, the connection asks for a new sign-in or token
(
integration_needs_reauth). - Removing a connection stops every sync. Projects, tasks and assigned time stay in Focus. Focus withdraws its Jira access at Atlassian; GitLab, Asana and Trello tokens are withdrawn by you at the provider.
Error messages
Section titled “Error messages”| Code | What to do |
|---|---|
integration_not_configured | Workify360 has not set up this provider yet |
provider_unavailable | The provider did not answer; Focus tries again later |
provider_rejected | The provider refused the request, for example an invalid token or a project the account cannot see; check the token or the provider’s permissions |
connection_exists | This provider account is already connected |
connection_not_found | The connection was removed; reload the page |
connection_paused | Take over or resume the connection first |
sync_too_frequent | Wait a minute before you start the next sync |
project_link_exists | The provider project or the Focus project is already linked |
remote_project_not_found | The provider project no longer exists or the account cannot see it |
project_link_not_found | The project link was removed; reload the page |
integration_needs_reauth | Reconnect the provider, or enter a new token |
oauth_denied | Access was not allowed at Atlassian; connect again and allow it |