| POST | /RestApi/translations/projects |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class XliffProxy:
is_xliff: bool = False
is_ftp: bool = False
is_machine_translation: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LanguageProxy:
code: Optional[str] = None
name: Optional[str] = None
count: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LanguagePairProxy:
actual_source: Optional[LanguageProxy] = None
target: Optional[LanguageProxy] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ConnectorProxy:
name: Optional[str] = None
title: Optional[str] = None
count: int = 0
xliff: Optional[XliffProxy] = None
supported_languages: Optional[List[LanguagePairProxy]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ProjectProxy:
id: Optional[str] = None
title: Optional[str] = None
description: Optional[str] = None
start_date: datetime.datetime = datetime.datetime(1, 1, 1)
due_date: datetime.datetime = datetime.datetime(1, 1, 1)
date_sent: Optional[datetime.datetime] = None
date_completed: Optional[datetime.datetime] = None
sent_by: Optional[str] = None
connector: Optional[ConnectorProxy] = None
status: Optional[str] = None
po_reference: Optional[str] = None
actual_source_language: Optional[LanguageProxy] = None
target_languages: Optional[List[LanguageProxy]] = None
translations_count: int = 0
can_be_completed: bool = False
external_id: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CreateProject(IProjectInfo):
title: Optional[str] = None
start_date: Optional[datetime.datetime] = None
end_date: Optional[datetime.datetime] = None
description: Optional[str] = None
connector: Optional[str] = None
po_reference: Optional[str] = None
actual_source_language: Optional[str] = None
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /RestApi/translations/projects HTTP/1.1
Host: www.imglobal.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"Title":"String","StartDate":"\/Date(-62135596800000-0000)\/","EndDate":"\/Date(-62135596800000-0000)\/","Description":"String","Connector":"String","PoReference":"String","ActualSourceLanguage":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"Title":"String","Description":"String","StartDate":"\/Date(-62135596800000-0000)\/","DueDate":"\/Date(-62135596800000-0000)\/","DateSent":"\/Date(-62135596800000-0000)\/","DateCompleted":"\/Date(-62135596800000-0000)\/","SentBy":"String","Connector":{"Name":"String","Title":"String","Count":0,"Xliff":{"IsXliff":false,"IsFtp":false,"IsMachineTranslation":false}},"Status":"String","PoReference":"String","ActualSourceLanguage":{"Code":"String","Name":"String","Count":0},"TargetLanguages":[{"Code":"String","Name":"String","Count":0}],"TranslationsCount":0,"CanBeCompleted":false,"ExternalId":"String"}