How often, do the keywords change. If not much, can you just create a SQL statement to generate the keywords data and install them on the delivery server.
If you feel they change a lot and do not want to have an out of sync data, you can create a post publishing task to publish the keyword data. Use the API to get the data.
I think the keywords may change frequently enough for there to be the potential of out of sync data so a post publishing task would be a good option.
When you say to use the API are you refering to the webservice? I have not found that it is possible to retrieve the translated keywords through the webservice.
I have tried setting the locale in the login request, but this seems to have no affect, and I can’t see that it is possible to specify a locale in the actual call the retrieve a keyword.
Do you have any suggestions on how to do this through the websservice or have I missunderstood what you are suggesting?
I don’t have the concrete example, but here is what people do it in assembly to get the localized string.
$rs.i18n.getString(String key, String locale);
The i18n variable is bind to com.percussion.services.assembly.jexl.PSI18nUtils.
You can get the keywords first and create a key with the value of the keyword by prefixing it with standard keyword prefix.