code: public UploadDetails uploadTerms(String projectId, File translationFile, String[] allTags, String[] newTags, String[] obsoleteTags){
          Map<String, String[]> tags = new HashMap<String, String[]>();
          if(allTags != null) {
              tags.put("all", allTags);
          }
          
          if(newTags != null) {
              tags.put("new", newTags);
          }
          
          if(obsoleteTags != null) {
              tags.put("obsolete", obsoleteTags);
          }
          
          String tagsStr = new Gson().toJson(tags);
          
          TypedFile typedFile = new TypedFile("application/xml", translationFile);
          UploadResponse ur = service.upload("upload", apiKey, projectId, "terms", typedFile, null, "0", tagsStr);
          ApiUtils.checkResponse(ur.response);
          return ur.details;
      }
docs: Uploads a translation file. For the moment it only takes terms into account.
  
  @param projectId id of the project
  @param translationFile terms file to upload
  @param allTags - for the all the imported terms
  @param newTags - for the terms which aren't already in the project
  @param obsoleteTags - for the terms which are in the project but not in the imported file and "overwritten_translations"
  @return UploadDetails