Main menu

Automation

Automatic services you can add to your translation projects

  • Machine translation / AI
    "Bots" are automated team members that translate your content via third party APIs.
    See Machine translation.

  • Notification hooks
    "Hooks" receive change notifications when your project is updated.
    See Notifying external systems.

  • Deployment / publishing
    "Deployments" are collections of translation files that are automatically published to remote hosts when your project is updated.
    See Automatically publishing translation files.

Important: All third party API integrations are provided on a "bring your own key" basis. Please read our security recommendations before storing your keys on our servers.

Key security

Integrating external providers into Loco requires that we store the secret credentials you use to access third party APIs. If you're sharing a configuration that writes data, take extra care to restrict the resources the key can operate on.

Recommended precautions

  • Restrict key usage
    If possible, you should generate API keys specifically for use with Loco, and (if supported by the vendor) restrict key usage to our IP range as well as your own.

  • Minimize privileges
    Some vendors may provide multiple services via the same access credentials. Ensure the credentials we store don't have access beyond the specific functions you need.

  • Use service accounts
    Some vendors allow access credentials to be associated with low privileged service accounts, or provide short-lived tokens that can be tracked as to who's using them. Whichever provider you're working with, follow their recommendations for sharing access credentials with third parties.

  • Delete unused keys
    Once a service is deleted from Loco we have no record of its configuration. Access credentials are not logged anywhere, so you might want to consider removing keys you don't use regularly.

Configuration sharing

Some services you configure in Loco can be shared with other team members. These team members will NOT see your access credentials, and will NOT be able to edit the configuration. However, they will be free to utilise the service as they choose, so be careful what you share.

Loco project permissions are maintained when team members use a shared service, but that doesn't extend to the external entity being authenticated. Consider that shared usage of an API key may still incur charges from the provider, and (depending on the service) perform privileged operations on the provider account or its resources.

  • e.g. Translation bots
    Sharing a translation bot means any user of the bot can run up a large bill, or exhaust any free quota you have.

  • e.g. Deployment hosts
    Sharing a deployment host means any team member with developer permissions can overwrite its remote files.

Background tasks

All automated services can be run manually, or scheduled to run in the background. See the relevant sections as follows:

  • Automatic translation while you sleep
    Deploying a bot to run on your project automatically requires a paid Loco plan.
    See: Running a bot in the background.

  • Notifying hooks when translations change
    Notifying remote systems of updates is best done automatically, and is available to all accounts.
    See: Notifying external systems.

  • Deployment / publishing
    Publishing translation files can be done automatically when your project is updated. Available to all accounts.
    See: Automatically publishing translation files.

Frequency / scheduling

When configuring a service to run automatically you can specify the frequency of the background task with the following options:

  • Paused:
    Background invocation is disabled. You can run the service manually, but it won't run automatically.

  • Continuous:
    Continuous tasks are re-queued immediately after they've finished running. In reality the frequency will be no sooner than every minute, but could be several minutes at busy times.

  • Hourly:
    Hourly tasks will run at most every hour. Pro users can specify the number of minutes past each hour, but you can't specify specific hours.

  • Daily:
    Daily tasks will run at most every 24 hours. Pro users can specify a preferred hour, and the number of minutes past that hour.

Note that background tasks only run when they have work to do. For example: a continuous translation task isn't continuously translating. It just means it will be triggered as soon as possible when its needed. Continuous tasks may actually be more efficient if rate limits or quotas are a factor for the running of a service, as the workload is spread more thinly.

Preferred time slots are useful for ensuring certain tasks run before others. The order is guaranteed, but the exact time of execution is approximate. Avoid peak times (like 00:00) as these are most likely to run later than expected.

Last updated by