📜 Get org’s translation history log

    This API returns a paginated list of translation records (history) for an organization or user account.


    📋 Basic Information

    • Method: GET
    • Path: https://api.bluente.com/api/20250924/blu_translate/history
    • Authentication: Required — Authorization: Bearer $BLUENTE_API_KEY

    📝 Request Parameters (Query)

    Query String

    FieldTypeRequiredDescription
    callerstringNoCaller name, "blutranslate" by default
    next_tokenstringNoPagination token for next page; omit or empty to fetch the first page

    Request Body

    • None

    💡 Example

    curl -X GET "https://api.bluente.com/api/20250924/blu_translate/history?caller=blutranslate&next_token=xxx" \
         -H "Authorization: Bearer $BLUENTE_API_KEY" \
         -H "Accept: application/json"

    or

    fetch("https://api.bluente.com/api/20250924/blu_translate/history?caller=blutranslate&next_token=xxx", {
      method: "GET",
      headers: {
        "Authorization": "Bearer $BLUENTE_API_KEY"
      }
    })

    ✅ Success Response Example

    {
      "message": "success",
      "code": 0,
      "data": {
        "translations": [
          {
            "id": 2480,
            "file_extension": ".docx",
            "page_count": 70,
            "deducted": 0,
            "source_lang": "",
            "target_lang": "",
            "state_str": "SERVICE_PROCESSED",
            "created_at": "2024-08-06 09:44:39",
            "created_by": "tech@bluente.com",
            "updated_at": "2024-08-06 09:44:50"
          },
          {
            "id": 2479,
            "file_extension": ".docx",
            "page_count": 70,
            "deducted": 0,
            "source_lang": "",
            "target_lang": "",
            "state_str": "SERVICE_PROCESSED",
            "created_at": "2024-08-06 09:44:39",
            "created_by": "tech@bluente.com",
            "updated_at": "2024-08-06 09:44:50"
          },
          {
            "id": 2471,
            "file_extension": ".docx",
            "page_count": 70,
            "deducted": 0,
            "source_lang": "en",
            "target_lang": "zh",
            "state_str": "READY",
            "created_at": "2024-08-06 09:44:39",
            "created_by": "tech@bluente.com",
            "updated_at": "2024-08-06 10:00:43"
          }
        ],
        "next_token": "2471" // if this next_token is empty means no more logs; otherwise pass this value to the next request
      }
    }

    📊 Response Fields

    FieldTypeDescription
    messagestringResponse message, usually "success"
    codeintStatus code, 0 means success
    data.translationsarrayList of translation log entries
    translations[].idintTranslation task ID
    translations[].file_extensionstringOriginal file extension (e.g., .docx)
    translations[].page_countintNumber of pages in the file
    translations[].deductedintPages deducted from account for this translation
    translations[].source_langstringSource language code (may be empty)
    translations[].target_langstringTarget language code (may be empty)
    translations[].state_strstringTask state (e.g., SERVICE_PROCESSED, READY)
    translations[].created_atstringCreation timestamp
    translations[].created_bystringCreator (user email)
    translations[].updated_atstringLast update timestamp
    data.next_tokenstringPagination token for next page; empty means no more pages

    ❌ Error Response Example

    {
      "message": "unauthorized",
      "code": 401
    }

    📌 Notes

    • Use next_token for pagination: if the response data.next_token is non-empty, supply it in the next request to fetch the following page.
    • deducted indicates how many pages were charged for that translation (may be 0 for some internal/system entries).
    • state_str corresponds to the same status values used by the Get Translation Status API (e.g., SERVICE_PROCESSED, READY, ERROR).