Skip to content

Solvro/backend-translator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

backend-translator

Solvro banner Solvro banner

Translation API Documentation

Base URL

/api/v1

Endpoints

Languages

Get All Languages

GET /languages

Response: List of all available languages.

Create a Language

POST /languages

Body:

{
  "isoCode": "en"
}

Response: Created language object.

Get Language by ISO Code

GET /languages/:isoCode

Response: Language object.

Update Language

PUT /languages/:isoCode

Body:

{
  "name": "Updated Name"
}

Response: Updated language object.

Delete Language

DELETE /languages/:isoCode

Response: No content.


Translations

Get All Translations

GET /translations

Response: List of all translations.

Create a Translation

POST /translations

Body:

{
  "originalText": "Hello",
  "originalLanguageCode": "en",
  "translatedLanguageCode": "fr",
  "translatedText": "Bonjour"
}

Response: Created translation object.

Get Translations for a Specific Text

GET /translations/:hash

Response: List of translations for the given text hash.

Get Translations for a Specific Language

GET /translations/:isoCode

Response: List of translations in the given language.

Get Specific Translation

GET /translations/:hash/:isoCode

Response: Translation object.

Update Translation

PUT /translations/:hash/:isoCode

Body:

{
  "originalText": "Hello",
  "translatedText": "Salut"
}

Response: Updated translation object.

Delete Translation

DELETE /translations/:hash/:isoCode

Response: No content.

Approve Translation

POST /translations/:hash/:isoCode/approve

Response: Approved translation object.

Request Translation via OpenAI

POST /translations/openAI

Body:

{
  "originalText": "Hello",
  "originalLanguageCode": "en",
  "translatedLanguageCode": "es"
}

Response: Translation object created using OpenAI.

Request Batch Translation via OpenAI

POST /translations/openAI/batch

Body:

{
  "texts": ["Hello", "Good morning", "How are you?"],
  "originalLanguageCode": "en",
  "translatedLanguageCode": "es"
}

Response:

{
  "translations": [
    {
      "originalText": "Hello",
      "translation": {
        "hash": "...",
        "originalText": "Hello",
        "translatedText": "Hola",
        "originalLanguageCode": "en",
        "translatedLanguageCode": "es",
        "isApproved": false,
        "createdAt": "...",
        "updatedAt": "..."
      },
      "success": true
    },
    {
      "originalText": "Good morning",
      "translation": { ... },
      "success": true
    },
    {
      "originalText": "How are you?",
      "translation": { ... },
      "success": true
    }
  ],
  "total": 3,
  "successful": 3,
  "failed": 0
}

This endpoint allows translating multiple texts in a single request. Each text is processed independently, and if a translation already exists in the database, it will be reused. The response includes individual success/failure status for each translation, along with summary statistics.


Notes

  • The hash parameter is generated using SHA-256 from originalText.
  • The OpenAI translation request utilizes gpt-4o-mini.
  • All responses follow JSON format.
  • Errors return appropriate HTTP status codes with messages.
  • The API is generated by ChatGPT - watch out for inconsistencies

Links

docs.solvro.pl

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors