You’ve been asking for it and we’ve heard you, so here it is! The Visual Studio Team Services (VSTS) and Team Foundation Server (TFS) integration is the latest entry on our list of integrated code hosting platforms. Among integrations with other great players, such as GitHub, Bitbucket and GitLab, it is here to make your life easier.
How to set up the integration with VSTS/TFS
The setup takes just a few clicks. Since this is an account-level feature, the integration can only be made by the account (and, thus, project-) owner. We describe how to connect your POEditor account with both Microsoft services here.
How the ingrations works
The integration with VSTS and TFS functions similarly to the other integrations with code hosting platforms supported by POEditor. To get a quick idea of the functionality, check out this article.
Automation and webhooks
Just like with GitHub, GitLab and Bitbucket, you can automate your work with this integration using webhooks. You can trigger the webhooks from anywhere to send data from the localization files in your repos to the assigned languages/projects on POEditor.
Webhooks are also useful if a project owner wants to let an admin take over the file management, after they make the connection between the POEditor account and the VSTS account.
Where to send your impressions
If you have any questions or comments about the newest kid on our block of integrations, just drop a few lines in the comments below. Also, feel free to show us some love on our Visual Studio Marketplace page
if your work with Visual Studio Team Services or Team Foundation Server and this feature is useful to you.
To audit your POEditor account, you can access the Logs section in Account Settings. The Logs section is divided into three sub-sections: Activity Log, API Log and Webhooks Log.
The Activity Log
The Activity Log tracks events related to translation, project management, API activity, integrations with code hosting services, settings changes (both project and account settings) and other events relevant to the user.
To more easily find the events of interest, use the search bar at the top of the Activity Log page. You can also filter events by user, language and project.
We keep most tracked events for 15 days. The ones which have to do with data deletion are kept for 30 days.
The API Log
To check your API activity, go to Account Settings > Logs > API Log.
The API Log stores for 15 days all the requests that POEditor can identify as yours (using an API token generated from your account).
You can filter the API logs by date, using the date range picker at the top right corner of the page.
The Webhooks Log
As a POEditor user, you can see what actions have been triggered in your account using webhooks. For this, go to Account Settings > Logs > Webhooks Log.
The Webhooks Log stores for 30 days all the requests that POEditor can identify yours (using a webhook generated from your account).
To filter the webhook logs by date, use the date range picker at the top right corner of the page.
Note: POEditor uses UTC to express the time when an event took place.
A Bitbucket push method for our integration is something we’ve all been expecting for years.
Up until recently, the Bitbucket API did not support this method, unlike GitHub and GitLab. But, thanks to many Bitbucket users asking for it, your preferred code hosting platform has finally added this feature!
Upon hearing the news, we’ve immediately made it our main priority to update the Bitbucket integration. So, now, we’re happy to announce that you can export translations from your POEditor localization projects to your repos with just a few clicks.
We’ve also updated the Webhooks generator to reflect the implementation of the commit.
If you’re new to the Bitbucket integration, you can learn how to set it up here. More information about how to manage localization files between POEditor and Bitbucket is available here.
Cheers to all of you who took the time to push for this change! Don’t be shy to let us know if you have any feedback.
The POEditor dev team has been very busy lately, tinkering with the localization API (among others). Below are described the improvements you can find in API v2.
New API methods
Besides completely refreshing the look (structure) of the API, we’ve also completed it with a few methods. Now, we can say it better mirrors the functionalities in the localization interface.
- Update terms. This is the equivalent of the View or Add Terms in the localization interface. It lets you change the text, context, reference, plural and tags.
- Remove contributor. This method removes a contributor from a project language or an admin from a project, if the language is not specified.
- Delete project. It deletes the project from the account. You must be the owner of the project.
- Update project settings. The method lets you set or delete a Default Reference Language, as well as edit the name and/or description of the project.
We’ve also updated some already existing methods in the localization API, as follows:
- View Project Details now also shows the number of terms in the project.
- List project terms supports plurals.
- Update project language gained the fuzzy trigger (and can mark as fuzzy the translations in the other languages).
That’s all folks! We hope you enjoy API v2 and look forward to your feedback on it.
We’re happy to announce that POEditor is now integrated with WPML, one of the most popular plugins to translate WordPress sites. In case you’re not familiar with WPML, what you should know is that it lets you write content in different languages and translate the existing content of your WP site. But content is not the only thing it can help translate.
How POEditor helps WPML users
WPML is also useful for theme and plugin translation, by extracting the strings in your WordPress language files and sending them to a platform where they can be translated. POEditor is such a translation management platform, where you can bring your translation team members to collaborate. They don’t even need a WordPress account to participate! Just add them to your POEditor translation project using their email address and that’s it.
How to connect WPML to POEditor
A detailed guide for connecting WPML and POEditor you can find here. The guide also describes how to send the strings you want to translate from your site to your POEditor translation project.
What translation options do I have with POEditor?
To translate WordPress sites and plugins with us, you can choose between one or more of the following methods:
- Crowdsourcing translations from your community (using public projects)
- Using your own translators (by adding them as contributors)
- Using Machine Translation
- Ordering translations from one of our partners
According to your resources and needs, you can combine the available translation options in whatever way suits you best.
We believe the integration with the WPML translation plugin nicely complements our WordPress translation plugin. With the POEditor plugin, you can translate WordPress strings efficiently. But with WPML, you can also manage the translation of WordPress content as well, all from your WP dashboard.
POEditor users have multiple options for translating their software strings. They can bring their own translators, crowdsource translations using public projects, use machine translation engines, or even opt for third party human translation services. The latter feature is provided in partnership with well-reputed human translation platforms in the industry.
Until recently, as a POEditor user, you had to access each localization project to order human translations for it. And you had to repeat this process for each language. Because our users made us aware they wish to accelerate this part of their workflow, we’ve made some small changes.
What’s new with the human translation order process
In essence, you can now place orders for any project in the same page, and can order as many translations as you want, at the same time.
Connectivity is essential to a flexibile and efficient localization workflow. Being connected to your team at all times and also being connected to the constant flow of events during the localization process, you can react on the spot whenever something needs attention, increasing productivity and saving a lot of resources on the way. With this in mind, and somehow as a logical step to offering you a better solution for collaborative localization, we’ve decided to add two more options to the list of integrations available with the POEditor localization management platform- Slack and HipChat.
The walkthroughs below will help you connect your POEditor account to Slack or to HipChat. Make sure you log in both to the POEditor localization platform and to your preferred communication service before you begin.
The POEditor localization management platform is mainly designed as a productivity tool for localization teams that want to use their own translators in the process of localizing software strings.
Despite this, we know that not everyone who reaches our localization platform has translators to assign to their l10n projects, or a community to crowdsource translation. For them, we provide quick access to professional translation services. Following the steps described below, you can easily order translations for your software localization project, directly from your POEditor account.
Step 1: Go to the Translation Orders page, choose your values and get a quote
In the Project page, click on the Translation Orders button to reach the New Order page. Here, select your desired values, then press Get Quote to find out what the translation price is.
If you want to translate an app that uses language files such as .strings, .xliff, .resx, .xml or .properties with the software localization management platform POEditor, it’s very likely your localization process will be a little different than if you were using any of the other supported language files. This is because these language files contain labels.
As a developer/localization manager/someone else handling a labels-based project with POEditor, you will start your software localization process by importing strings from a language file and setting a Default Reference Language.
Lately, some users have been asking for a way to automate the synchronization between the POEditor localization platform and GitHub/Bitbucket repositories. Because we want to make them happy, we found a way to do this – webhooks. These “user-defined HTTP callbacks” can be used to trigger a certain sync in your repos. They can be called from anywhere, and can be maintained, modified and managed by any third-party users.
Preparing the webhook
To make use of a webhook, you first need to create a webhook URL. Find an example for GitHub here, and one for Bitbucket here.
After creating the webhook, you can add it to a GitHub or Bitbucket account so that events in the repos trigger terms (and translations) updates in a POEditor project.
Using webhooks with Bitbucket
To add a webhook to a Bitbucket account, just log on to it, go to Settings → Hooks, and select “POST” from the “Select a hook” dropdown menu. Then click on “Add hook” and introduce the webhook URL in the empty field. Whenever the repository changes, the webhook will be triggered to sync between the assigned language/project on POEditor and the file in the repo.
Using webhooks with Github
Adding a webhook to GitHub is also easy. Go to the account, click on Settings → Webhooks & Services → Add webhook, and add the webhook URL to the “Payload URL” field. Unlike in the case of Bitbucket webhooks, you can pick what kind of event(s) you want to trigger the webhook. It can be just the push event, individual events, or everything (any change in the repo).
So that’s that. The POEditor GitHub integration and Bitbucket integration are now faster than ever, because you have the choice to automatically send the updates in the repos to your localization projects managed on POEditor.
Update July 2015: It is now possible to use webhooks to export terms and translations from your POEditor localization project to your connected GitHub account. Please note that the export option can be triggered from anywhere, except GitHub.