Skip to content

Latest commit

 

History

History
231 lines (159 loc) · 15.9 KB

File metadata and controls

231 lines (159 loc) · 15.9 KB

Translations

Overview

Used to localize your notifications to different languages. https://docs.novu.co/platform/workflow/advanced-features/translations

Available Operations

create

Create a translation for a specific workflow and locale, if the translation already exists, it will be updated

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use novu;
use novu\Models\Components;

$sdk = novu\Novu::builder()
    ->setSecurity(
        'YOUR_SECRET_KEY_HERE'
    )
    ->build();

$createTranslationRequestDto = new Components\CreateTranslationRequestDto(
    resourceId: 'welcome-email',
    resourceType: Components\ResourceType::Layout,
    locale: 'en_US',
    content: [
        'welcome.title' => 'Welcome',
        'welcome.message' => 'Hello there!',
    ],
);

$response = $sdk->translations->create(
    createTranslationRequestDto: $createTranslationRequestDto
);

if ($response->translationResponseDto !== null) {
    // handle response
}

Parameters

Parameter Type Required Description
createTranslationRequestDto Components\CreateTranslationRequestDto ✔️ N/A
idempotencyKey ?string A header for idempotency purposes

Response

?Operations\TranslationControllerCreateTranslationEndpointResponse

Errors

Error Type Status Code Content Type
Errors\APIException 4XX, 5XX */*

retrieve

Retrieve a specific translation by resource type, resource ID and locale

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use novu;
use novu\Models\Operations;

$sdk = novu\Novu::builder()
    ->setSecurity(
        'YOUR_SECRET_KEY_HERE'
    )
    ->build();



$response = $sdk->translations->retrieve(
    resourceType: Operations\PathParamResourceType::Layout,
    resourceId: 'welcome-email',
    locale: 'en_US'

);

if ($response->translationResponseDto !== null) {
    // handle response
}

Parameters

Parameter Type Required Description Example
resourceType Operations\PathParamResourceType ✔️ Resource type
resourceId string ✔️ Resource ID welcome-email
locale string ✔️ Locale code en_US
idempotencyKey ?string A header for idempotency purposes

Response

?Operations\TranslationControllerGetSingleTranslationResponse

Errors

Error Type Status Code Content Type
Errors\APIException 4XX, 5XX */*

delete

Delete a specific translation by resource type, resource ID and locale

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use novu;
use novu\Models\Operations;

$sdk = novu\Novu::builder()
    ->setSecurity(
        'YOUR_SECRET_KEY_HERE'
    )
    ->build();



$response = $sdk->translations->delete(
    resourceType: Operations\TranslationControllerDeleteTranslationEndpointPathParamResourceType::Layout,
    resourceId: '<id>',
    locale: 'pl'

);

if ($response->statusCode === 200) {
    // handle response
}

Parameters

Parameter Type Required Description
resourceType Operations\TranslationControllerDeleteTranslationEndpointPathParamResourceType ✔️ Resource type
resourceId string ✔️ Resource ID
locale string ✔️ Locale code
idempotencyKey ?string A header for idempotency purposes

Response

?Operations\TranslationControllerDeleteTranslationEndpointResponse

Errors

Error Type Status Code Content Type
Errors\APIException 4XX, 5XX */*

upload

Upload one or more JSON translation files for a specific workflow. Files name must match the locale, e.g. en_US.json. Supports both "files" and "files[]" field names for backwards compatibility.

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use novu;
use novu\Models\Operations;

$sdk = novu\Novu::builder()
    ->setSecurity(
        'YOUR_SECRET_KEY_HERE'
    )
    ->build();

$requestBody = new Operations\TranslationControllerUploadTranslationFilesRequestBody(
    resourceId: 'welcome-email',
    resourceType: Operations\ResourceType::Workflow,
    files: [],
);

$response = $sdk->translations->upload(
    requestBody: $requestBody
);

if ($response->uploadTranslationsResponseDto !== null) {
    // handle response
}

Parameters

Parameter Type Required Description
requestBody Operations\TranslationControllerUploadTranslationFilesRequestBody ✔️ N/A
idempotencyKey ?string A header for idempotency purposes

Response

?Operations\TranslationControllerUploadTranslationFilesResponse

Errors

Error Type Status Code Content Type
Errors\APIException 4XX, 5XX */*