Skip to content

Контракты

Получение списка контрактов

URL: /contracts/

Method: GET

Auth required: YES

Permissions required: None

Payload: None

Success response:

[
    {
        "id": <id>,
        "contract_type": "<contract_type>",
        "start_date": "<start_date>",
        "end_date": "<end_date>",
        "insurance_cost": "<insurance_cost>",
        "organization": {
            "id": <id>,
            "code": "<code>",
            "full_name": "<full_name>",
            "short_name": "<short_name>",
            "address": "<address>",
            "bank_account_number": "<bank_account_number>",
            "specialization": "<specialization>"
        },
        "agent": {
            "id": <id>,
            "full_name": "<full_name>",
            "passport_details": "<passport_details>",
            "contact_details": "<contact_details>",
            "employment_contract_id": <employment_contract_id>,
            "contracts": [
                <contract_id>,
                ...
            ]
        },
        "employees": [
            <employee_id>,
            ...
        ]
    },
    ...
]

Получение контракта по ID

URL: /contracts/<int:pk>/

Method: GET

Auth required: YES

Permissions required: None

Payload: None

Success response:

{
    "id": <id>,
    "contract_type": "<contract_type>",
    "start_date": "<start_date>",
    "end_date": "<end_date>",
    "insurance_cost": "<insurance_cost>",
    "organization": {
        "id": <id>,
        "code": "<code>",
        "full_name": "<full_name>",
        "short_name": "<short_name>",
        "address": "<address>",
        "bank_account_number": "<bank_account_number>",
        "specialization": "<specialization>"
    },
    "agent": {
        "id": <id>,
        "full_name": "<full_name>",
        "passport_details": "<passport_details>",
        "contact_details": "<contact_details>",
        "employment_contract_id": <employment_contract_id>,
        "contracts": [
            <contract_id>,
            ...
        ]
    },
    "employees": [
        <employee_id>,
        ...
    ]
}

Создание контракта

URL: /contracts/

Method: POST

Auth required: YES

Permissions required: is_staff

Payload:

{
    "contract_type": "<contract_type>",
    "start_date": "<start_date>",
    "end_date": "<end_date>",
    "insurance_cost": "<insurance_cost>",
    "organization": <organization_id>,
    "agent": <agent_id>,
    "employees": [
        <employee_id>,
        ...
    ]
}

Success response:

{
    "id": <id>,
    "contract_type": "<contract_type>",
    "start_date": "<start_date>",
    "end_date": "<end_date>",
    "insurance_cost": "<insurance_cost>",
    "organization": {
        "id": <id>,
        "code": "<code>",
        "full_name": "<full_name>",
        "short_name": "<short_name>",
        "address": "<address>",
        "bank_account_number": "<bank_account_number>",
        "specialization": "<specialization>"
    },
    "agent": {
        "id": <id>,
        "full_name": "<full_name>",
        "passport_details": "<passport_details>",
        "contact_details": "<contact_details>",
        "employment_contract_id": <employment_contract_id>,
        "contracts": [
            <contract_id>,
            ...
        ]
    },
    "employees": [
        <employee_id>,
        ...
    ]
}