components:
  examples:
    ProfileVideosProfileVideosList:
      value:
        items:
          - download_url:
              expires_at: '2022-01-01T12:00:00+0300'
              url: 'https://storage.yandexcloud.net/...'
            id: ec6b42e5-b0fb-4f72-b81b-5b44f8c09968
    VacancyDraftVacancyDraftResponse:
      value:
        id: '22'
        ignored_fields:
          - area
          - salary
          - employment
        name: Новая вакансия черновик1
        publication_ready: false
        validation_errors:
          - reason: too_short
            value: description
          - reason: too_long
            value: name
    EmployerAddresses:
      value:
        found: 1
        items:
          - building: 9с10
            can_edit: true
            city: Москва
            deleted: false
            description: На проходной потребуется паспорт
            id: '15'
            lat: 55.807794
            lng: 37.638699
            manager:
              full_name: Достоевский Федор Михайлович
              id: '11'
            metro_stations:
              - lat: 55.728994
                line_id: '5'
                line_name: Кольцевая
                lng: 37.622533
                station_id: '5.36'
                station_name: Добрынинская
            raw: 'Москва, улица Годовикова, 9с10'
            street: улица Годовикова
        page: 0
        pages: 1
        per_page: 20
    EmployerAddressItem:
      value:
        building: 9с10
        can_edit: true
        city: Москва
        deleted: false
        description: На проходной потребуется паспорт
        id: '15'
        lat: 55.807794
        lng: 37.638699
        manager:
          full_name: Достоевский Федор Михайлович
          id: '11'
        metro_stations:
          - lat: 55.728994
            line_id: '5'
            line_name: Кольцевая
            lng: 37.622533
            station_id: '5.36'
            station_name: Добрынинская
        raw: 'Москва, улица Годовикова, 9с10'
        street: улица Годовикова
    EmployerManagerId:
      value:
        id: '78789890'
    SuggestsResumeSearchKeyword:
      value:
        items:
          - text: Москва
          - text: Мосты
          - text: Московская государственная юридическая академия
    VacanciesVacancyConditions:
      value:
        accept_handicapped:
          required: false
        accept_incomplete_resumes:
          required: false
        accept_kids:
          required: false
        accept_temporary:
          required: false
        address:
          fields:
            show_metro_only:
              required: false
          required: false
        allow_messages:
          required: false
        area:
          required: true
        billing_type:
          required: true
        branded_template:
          required: false
        code:
          max_length: 50
          min_length: 0
          required: false
        contacts:
          fields:
            email:
              max_length: 255
              min_length: 0
              required: false
            name:
              max_length: 255
              min_length: 0
              required: true
            phones:
              fields:
                city:
                  max_length: 6
                  min_length: 1
                  regexp: '^\d{0,6}$'
                  required: true
                comment:
                  max_length: 255
                  min_length: 0
                  required: false
                country:
                  max_length: 6
                  min_length: 1
                  regexp: '^\+?\d{0,5}$'
                  required: true
                formatted:
                  max_length: 43
                  min_length: 6
                  regexp: '^\d{6,43}$'
                  required: false
                number:
                  max_length: 32
                  min_length: 4
                  regexp: '^[\d -]{4,32}$'
                  required: true
              max_count: 2
              min_count: 0
              required: true
          required: false
        custom_employer_name:
          max_length: 150
          min_length: 0
          required: false
        department:
          max_length: 32
          min_length: 0
          required: false
        description:
          max_length: 10000
          min_length: 0
          required: true
        driver_license_types:
          max_count: null
          min_count: 0
          required: false
        employment:
          required: false
        experience:
          required: false
        key_skills:
          max_count: 30
          min_count: 0
          required: false
        languages:
          max_count: null
          min_count: 0
          required: false
        manager:
          required: false
        name:
          max_length: 100
          min_length: 0
          required: true
        professional_roles:
          max_count: 1
          min_count: 1
          required: true
        response_letter_required:
          required: false
        response_notifications:
          required: false
        response_url:
          max_length: 511
          min_length: 0
          regexp: '^(http|https)://.+$'
          required: false
        salary:
          fields:
            currency:
              required: false
            from:
              required: false
            gross:
              required: false
            to:
              required: false
          required: false
        schedule:
          required: false
        test:
          fields:
            required:
              required: false
          required: false
        type:
          required: true
        working_days:
          max_count: null
          min_count: 0
          required: false
        working_time_intervals:
          max_count: null
          min_count: 0
          required: false
        working_time_modes:
          max_count: null
          min_count: 0
          required: false
    VacancyCreate:
      value:
        accept_handicapped: true
        accept_incomplete_resumes: false
        accept_kids: false
        accept_temporary: true
        address:
          id: '123'
          show_metro_only: true
        allow_messages: true
        area:
          id: '1'
        billing_type:
          id: standard
        branded_template:
          id: marketing
        code: код-1234
        contacts:
          email: i.ivanov@example.com
          name: Иванов Иван
          phones:
            - city: '495'
              comment: с 10 до 20
              country: '7'
              formatted: '79198883344'
              number: '1234567'
        description: Работа в дружном коллективе
        driver_license_types:
          - id: A
          - id: B
        employment:
          id: full
        experience:
          id: moreThan6
        key_skills:
          - name: Холодные продажи
          - name: Проведение промо-акций
        languages:
          - id: eng
            level:
              id: a1
        manager:
          id: '321'
        name: Менеджер по продажам
        previous_id: '123456'
        professional_roles:
          - id: '59'
        response_letter_required: true
        response_notifications: true
        salary:
          currency: USD
          from: 100
          gross: true
          to: 500
        schedule:
          id: flyInFlyOut
        test:
          id: '42'
          required: true
        type:
          id: open
        working_days:
          - id: only_saturday_and_sunday
        working_time_intervals:
          - id: from_four_to_six_hours_in_a_day
        working_time_modes:
          - id: start_after_sixteen
    ResumesPostResumeVisibilityListBody:
      value:
        items:
          - id: '407'
          - id: '412'
    SuggestsFieldsOfStudy:
      value:
        items:
          - id: '382'
            text: 'Холодильная, криогенная техника и кондиционирование (Инженер)'
    ResumesResumeConditions:
      value:
        access:
          fields:
            type:
              required: true
          required: true
        area:
          required: true
        auto_hide_time:
          required: false
        birth_date:
          max_date: '2009-04-24'
          min_date: '1900-01-01'
          required: false
        business_trip_readiness:
          required: true
        citizenship:
          max_count: 3
          min_count: 1
          required: true
        contact:
          fields:
            comment:
              max_length: 255
              min_length: 1
              required: false
            preferred:
              required: true
            type:
              required: true
            value:
              required: true
          max_count: 4
          min_count: 1
          required: true
        district:
          required: false
        driver_license_types:
          max_count: null
          min_count: 0
          required: false
        education:
          fields:
            additional:
              fields:
                name:
                  max_length: 512
                  min_length: 1
                  required: true
                organization:
                  max_length: 128
                  min_length: 1
                  required: true
                result:
                  max_length: 128
                  min_length: 1
                  required: false
                year:
                  max_value: 2033
                  min_value: 1950
                  required: true
              max_count: 100
              min_count: 0
              required: false
            attestation:
              fields:
                name:
                  max_length: 512
                  min_length: 1
                  required: true
                organization:
                  max_length: 128
                  min_length: 1
                  required: true
                result:
                  max_length: 128
                  min_length: 1
                  required: false
                year:
                  max_value: 2033
                  min_value: 1950
                  required: true
              max_count: 64
              min_count: 0
              required: false
            elementary:
              fields:
                name:
                  max_length: 512
                  min_length: 1
                  required: true
                year:
                  max_value: 2033
                  min_value: 1950
                  required: true
              max_count: 64
              min_count: 0
              required: false
            level:
              required: true
            primary:
              fields:
                name:
                  max_length: 512
                  min_length: 1
                  required: true
                organization:
                  max_length: 128
                  min_length: 1
                  required: false
                result:
                  max_length: 128
                  min_length: 1
                  required: false
                year:
                  max_value: 2033
                  min_value: 1950
                  required: true
              max_count: 64
              min_count: 1
              required: true
          required: true
        employment:
          required: true
        employments:
          max_count: null
          min_count: 1
          required: true
        experience:
          fields:
            area:
              required: false
            company:
              max_length: 512
              min_length: 1
              required: true
            company_url:
              max_length: 255
              min_length: 1
              required: false
            description:
              max_length: 32768
              min_length: 1
              required: true
            end:
              max_date: '2023-04-24'
              min_date: '1900-01-01'
              required: false
            industries:
              max_count: 5
              min_count: 0
              required: false
            industry:
              required: false
            position:
              max_length: 512
              min_length: 1
              required: true
            start:
              max_date: '2023-04-24'
              min_date: '1900-01-01'
              required: true
          max_count: 64
          min_count: 0
          required: false
        first_name:
          max_length: 100
          min_length: 1
          regexp: '^[ ]*[A-Z][a-z]*([ ʼ’''`-][A-Z][a-z]*)*[ ]*$'
          required: true
        gender:
          required: true
        has_vehicle:
          required: false
        hidden_fields:
          max_count: null
          min_count: 0
          required: false
        language:
          fields:
            id:
              required: true
            level:
              required: true
          max_count: null
          min_count: 1
          required: true
        last_name:
          max_length: 100
          min_length: 1
          regexp: '^[ ]*[A-Z][a-z]*([ ʼ’''`-][A-Z][a-z]*)*[ ]*$'
          required: true
        metro:
          required: false
        middle_name:
          max_length: 100
          min_length: 1
          regexp: '^[ ]*[A-Z][a-z]*([ ʼ’''`-][A-Z][a-z]*)*[ ]*$'
          required: false
        photo:
          required: false
        portfolio:
          max_count: null
          min_count: 0
          required: false
        professional_roles:
          max_count: 5
          min_count: 1
          required: true
        recommendation:
          fields:
            name:
              max_length: 128
              min_length: 1
              required: true
            organization:
              max_length: 128
              min_length: 1
              required: true
            position:
              max_length: 128
              min_length: 1
              required: true
          max_count: null
          min_count: 0
          required: false
        relocation:
          fields:
            area:
              max_count: null
              min_count: 0
              required: false
            district:
              max_count: 512
              min_count: 0
              required: false
            type:
              required: true
          required: false
        resume_locale:
          required: true
        salary:
          fields:
            amount:
              max_value: null
              min_value: 0
              required: true
            currency:
              required: true
          required: false
        schedule:
          required: true
        schedules:
          max_count: null
          min_count: 1
          required: true
        site:
          fields:
            type:
              required: true
            url:
              max_length: 200
              min_length: 1
              required: true
          max_count: 10
          min_count: 0
          required: false
        skill_set:
          max_count: 30
          max_length: 100
          min_count: 1
          min_length: 1
          required: true
        skills:
          max_length: 32768
          min_length: 1
          required: false
        title:
          max_length: 100
          min_length: 2
          not_in:
            - TEST_RESUME
          required: true
        travel_time:
          required: true
        work_ticket:
          max_count: 8
          min_count: 0
          required: false
    VacancyDuplicates:
      value:
        found: 4
        has_duplicates: true
        items:
          - 171
          - 172
          - 173
          - 174
    EmployerManagerTypes:
      value:
        items:
          - available_permissions:
              - id: can_create_vacancy
                name: Создание и продление вакансий
              - id: can_view_resume_contacts
                name: Просмотр контактов соискателей
            id: manager
            name: Менеджер
    VacancyDraftVacancyDraftFull:
      value:
        accept_handicapped: false
        accept_incomplete_resumes: false
        accept_kids: false
        accept_temporary: false
        address:
          building: '10'
          city: Москва
          description: Направо под знак
          id: '4321234'
          lat: 55.807794
          lng: 37.638699
          metro_stations:
            - lat: 55.789704
              line_id: '2'
              line_name: Замоскворецкая
              lng: 37.558212
              station_id: '6.8'
              station_name: Динамо
          show_metro_only: true
          street: ул. Динамо
        allow_messages: true
        areas:
          - id: '1'
            name: Москва
            url: 'https://api.hh.ru/areas/1'
        billing_type:
          id: standard
          name: Стандарт
        branded_template:
          id: marketing
          name: Маркетинг
        code: HRR-3487
        contacts:
          email: user@example.com
          name: Имя
          phones:
            - comment: null
              formatted: +7 (495) 711-11-11
        department:
          id: HH-1455-TECH
          name: 'HeadHunter::Технический департамент'
        description: Работа хороша
        driver_license_types:
          - id: A
          - id: B
        employer:
          alternate_url: 'https://hh.ru/employer/4011061'
          id: '4011061'
          logo_urls:
            '90': 'https://hh.ru/employer/logo/3568'
            '240': 'https://hh.ru/employer/logo/3569'
          name: ООО СибНефть
          url: 'https://localhost:2000/employers/4011061'
        employer_service_id: '4325621'
        employment:
          id: full
          name: Полная занятость
        experience:
          id: between1And3
          name: От 1 года до 3 лет
        has_test: false
        key_skills:
          - name: Прием посетителей
          - name: Первичный документооборот
        languages:
          - id: spa
            level:
              id: b2
              name: B2 — Средне-продвинутый
            name: Испанский
          - id: ita
            level:
              id: a1
              name: A1 — Начальный
            name: Итальянский
        manager:
          id: '657438'
        meta_info:
          auto_publication:
            bill_uid: 4011054/3
            cart_id: '5967030'
          completed_fields_percentage: 100
          draft_id: '1110031'
          insufficient_publications: null
          insufficient_quotas: null
          last_change_time: null
          publication_ready: true
          required_publications: null
          scheduled_at: null
        name: Секретарь
        professional_roles:
          - id: '96'
            name: 'Программист, разработчик'
        response_letter_required: true
        response_notifications: false
        response_url: null
        salary:
          currency: RUR
          from: 30000
          gross: true
          to: null
        schedule:
          id: fullDay
          name: Полный день
        test:
          required: false
        type:
          id: open
          name: Открытая
        with_zp: false
        working_days:
          - id: only_saturday_and_sunday
            name: Работа только по сб и вс
        working_time_intervals:
          - id: from_four_to_six_hours_in_a_day
            name: Можно работать сменами по 4-6 часов в день
        working_time_modes:
          - id: start_after_sixteen
            name: Можно начинать работать после 16-00
    ServicesEmployerServices:
      value:
        items:
          - activated_at: '2018-02-01T12:00:00+0300'
            balance: null
            expires_at: '2019-01-31T12:00:00+0300'
            id: '12345678'
            service_type:
              id: API_UNLIMITED
              name: Доступ к API HH
          - activated_at: '2019-02-01T12:00:00+0300'
            balance:
              actual: 10000
              initial: 10000
            expires_at: '2020-01-31T12:00:00+0300'
            id: '12345680'
            service_type:
              id: API_LIMITED
              name: Пакет запросов к API HH
    MetroMetro:
      value:
        - id: '1'
          lines:
            - hex_color: '339999'
              id: '11'
              name: Каховская
              stations:
                - id: '11.46'
                  lat: 55.654327
                  line:
                    hex_color: 88CDCF
                    id: '11'
                    name: Каховская
                  lng: 37.647705
                  name: Каширская
                  order: 1
          name: Москва
          url: 'https://api.hh.ru/metro/1'
    VacanciesVacancy:
      value:
        accept_handicapped: false
        accept_incomplete_resumes: false
        accept_kids: false
        accept_temporary: false
        address:
          building: 9с10
          city: Москва
          description: На проходной потребуется паспорт
          lat: 55.807794
          lng: 37.638699
          metro_stations:
            - lat: 55.807794
              line_id: '6'
              line_name: Калужско-Рижская
              lng: 37.638699
              station_id: '6.8'
              station_name: Алексеевская
          street: улица Годовикова
        allow_messages: true
        alternate_url: 'https://hh.ru/vacancy/8331228'
        apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=8331228'
        approved: false
        archived: false
        area:
          id: '1'
          name: Москва
          url: 'https://api.hh.ru/areas/1'
        billing_type:
          id: standard
          name: Стандарт
        branded_description: <style>...</style><div>...</div><script></script>
        branded_template:
          id: '1'
          name: test
        can_upgrade_billing_type: true
        code: HRR-3487
        contacts:
          email: user@example.com
          name: Имя
          phones:
            - city: '985'
              comment: null
              country: '7'
              number: 000-00-00
        created_at: '2013-07-08T16:17:21+0400'
        department:
          id: HH-1455-TECH
          name: 'HeadHunter::Технический департамент'
        description: Работа хороша
        driver_license_types:
          - id: A
          - id: B
        employer:
          alternate_url: 'https://hh.ru/employer/1455'
          blacklisted: false
          id: '1455'
          logo_urls:
            '90': 'https://hh.ru/employer-logo/289027.png'
            '240': 'https://hh.ru/employer-logo/289169.png'
            original: 'https://hh.ru/file/2352807.png'
          name: HeadHunter
          trusted: true
          url: 'https://api.hh.ru/employers/1455'
        employment:
          id: full
          name: Полная занятость
        experience:
          id: between1And3
          name: От 1 года до 3 лет
        expires_at: '2013-08-08T16:17:21+0400'
        has_test: true
        hidden: false
        id: '8331228'
        initial_created_at: '2013-06-08T16:17:21+0400'
        insider_interview:
          id: '12345'
          url: 'https://hh.ru/interview/12345?employerId=777'
        key_skills:
          - name: Прием посетителей
          - name: Первичный документооборот
        languages:
          - id: eng
            level:
              id: b2
              name: B2 — Средне-продвинутый
            name: Английский
        manager:
          id: '1'
        name: Секретарь
        premium: true
        previous_id: '123456'
        professional_roles:
          - id: '96'
            name: 'Программист, разработчик'
        published_at: '2013-07-08T16:17:21+0400'
        response_letter_required: true
        response_notifications: true
        response_url: null
        salary:
          currency: RUR
          from: 30000
          gross: true
          to: null
        schedule:
          id: fullDay
          name: Полный день
        test:
          required: false
        type:
          id: open
          name: Открытая
        video_vacancy:
          cover_picture:
            resized_height: 444
            resized_path: 'https://img.hhcdn.ru/branding-pictures-original/2229739.png'
            resized_width: 788
          video_url: 'https://host/video/123'
        working_days:
          - id: only_saturday_and_sunday
            name: Работа только по сб и вс
        working_time_intervals:
          - id: from_four_to_six_hours_in_a_day
            name: Можно работать сменами по 4-6 часов в день
        working_time_modes:
          - id: start_after_sixteen
            name: Можно начинать работать после 16-00
    NegotiationsCollectionNegotiations:
      value:
        found: 1
        items:
          - actions:
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                  - id: address_id
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: interview
                method: PUT
                name: Интервью
                resulting_employer_state:
                  id: interview
                  name: Интервью
                templates:
                  - id: interview
                    name: Приглашение на Интервью
                    quick: false
                    url: 'https://api.hh.ru/message_templates/interview?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/interview/1359972474'
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: consider
                method: PUT
                name: Подумать
                resulting_employer_state:
                  id: consider
                  name: Подумать
                templates:
                  - id: consider
                    name: Приглашение на этап Подумать
                    quick: false
                    url: 'https://api.hh.ru/message_templates/consider?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/consider/1359972474'
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                  - id: address_id
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: phone_interview
                method: PUT
                name: Телефонное интервью
                resulting_employer_state:
                  id: phone_interview
                  name: Тел. интервью
                templates:
                  - id: invite
                    name: Приглашение на Телефонное интервью
                    quick: false
                    url: 'https://api.hh.ru/message_templates/invite?topic_id=1359972474'
                  - id: invite_after_response
                    name: Приглашение откликнувшегося соискателя на Телефонное интервью
                    quick: false
                    url: 'https://api.hh.ru/message_templates/invite_after_response?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/phone_interview/1359972474'
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: assessment
                method: PUT
                name: Оценка
                resulting_employer_state:
                  id: assessment
                  name: Оценка
                templates:
                  - id: assessment_owner_tool
                    name: Приглашение на Оценку (свой инструмент оценки)
                    quick: false
                    url: 'https://api.hh.ru/message_templates/assessment_owner_tool?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/assessment/1359972474'
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                  - id: address_id
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: hired
                method: PUT
                name: Выход на работу
                resulting_employer_state:
                  id: hired
                  name: Выход на работу
                templates:
                  - id: hired
                    name: Приглашение на Выход на работу
                    quick: false
                    url: 'https://api.hh.ru/message_templates/hired?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/hired/1359972474'
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                enabled: true
                id: discard_by_employer
                method: PUT
                name: Отказ
                resulting_employer_state:
                  id: discard_by_employer
                  name: Отказано
                templates:
                  - id: discard_after_interview
                    name: Отказ
                    quick: false
                    url: 'https://api.hh.ru/message_templates/discard_after_interview?topic_id=1359972474'
                  - id: discard_after_response
                    name: Отказ откликнувшемуся на вакансию соискателю
                    quick: false
                    url: 'https://api.hh.ru/message_templates/discard_after_response?topic_id=1359972474'
                  - id: quick_discard_after_response
                    name: Шаблон быстрого отказа на отклик
                    quick: true
                    url: 'https://api.hh.ru/message_templates/quick_discard_after_response?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/discard_by_employer/1359972474'
              - arguments:
                  - id: message
                    required: false
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: offer
                method: PUT
                name: Предложение о работе
                resulting_employer_state:
                  id: offer
                  name: Предложение о работе
                templates:
                  - id: offer
                    name: Приглашение на Предложение о работе
                    quick: false
                    url: 'https://api.hh.ru/message_templates/offer?topic_id=1359972474'
                url: 'https://api.hh.ru/negotiations/offer/1359972474'
            chat_id: 1831
            chat_states:
              response_reminder_state:
                allowed: false
            counters:
              messages: 0
              unread_messages: 0
            created_at: '2022-05-19T18:14:13+0300'
            employer_state:
              id: response
              name: Отклик
            has_updates: true
            id: '1359972474'
            messages_url: 'https://api.hh.ru/negotiations/1359972474/messages'
            messaging_status: ok
            resume:
              actions:
                download:
                  pdf:
                    url: 'https://api.hh.ru/resumes/0123456789abcdef/download/Lndihedidxsoacg%20Fndihedhjdxkxxy%20Mndihedjsdlshsf.pdf?type=pdf&topic_id=1359972474&vacancy_id=30251545'
                  rtf:
                    url: 'https://api.hh.ru/resumes/0123456789abcdef/download/Lndihedidxsoacg%20Fndihedhjdxkxxy%20Mndihedjsdlshsf.rtf?type=rtf&topic_id=1359972474&vacancy_id=30251545'
              age: 55
              alternate_url: 'https://hh.ru/resume/0123456789abcdef?t=1359972474&vacancyId=30251545'
              area:
                id: '1'
                name: Москва
                url: 'https://api.hh.ru/areas/1'
              can_view_full_info: true
              certificate: []
              created_at: '2022-05-19T11:19:47+0300'
              download:
                pdf:
                  url: 'https://api.hh.ru/resumes/0123456789abcdef/download/Lndihedidxsoacg%20Fndihedhjdxkxxy%20Mndihedjsdlshsf.pdf?type=pdf&topic_id=1359972474&vacancy_id=30251545'
                rtf:
                  url: 'https://api.hh.ru/resumes/0123456789abcdef/download/Lndihedidxsoacg%20Fndihedhjdxkxxy%20Mndihedjsdlshsf.rtf?type=rtf&topic_id=1359972474&vacancy_id=30251545'
              education:
                level:
                  id: higher
                  name: Высшее
                primary:
                  - name: 'Российский государственный социальный университет, Москва'
                    name_id: '39420'
                    organization: Факультет информационных технологий
                    organization_id: null
                    result: ''
                    result_id: null
                    year: 2019
              experience:
                - area:
                    id: '1'
                    name: Москва
                    url: 'https://api.hh.ru/areas/1'
                  company: DHL Express
                  company_id: '272'
                  company_url: 'http://some-kind.ru'
                  employer:
                    alternate_url: 'https://hh.ru/employer/272'
                    id: '272'
                    logo_urls:
                      '90': 'https://hh.ru/employer/logo/272'
                    name: DHL Express
                    url: 'https://api.hh.ru/employers/272'
                  end: '2022-05-19'
                  industries:
                    - id: '5.467'
                      name: 'Курьерская, почтовая доставка'
                    - id: '5.461'
                      name: Авиаперевозки
                    - id: '5.465'
                      name: 'Транспортно-логистические комплексы, порты (воздушный, водный, железнодорожный)'
                    - id: '5.464'
                      name: 'Морские, речные перевозки'
                    - id: '5.463'
                      name: Железнодорожные перевозки
                  industry: null
                  position: Тестировщик
                  start: '2021-01-04'
              favorited: false
              first_name: Иван
              gender:
                id: male
                name: Мужской
              hidden_fields: []
              id: 0123456789abcdef
              last_name: Иванов
              marked: false
              middle_name: Иванович
              negotiations_history:
                url: 'https://api.hh.ru/resumes/0123456789abcdef/negotiations_history'
              owner:
                comments:
                  counters:
                    total: 0
                  url: 'https://api.hh.ru/applicant_comments/54761929'
                id: '54761929'
              photo: null
              salary:
                amount: 1500
                currency: USD
              title: Начинающий специалист
              total_experience:
                months: 17
              updated_at: '2022-05-20T10:49:47+0300'
              url: 'https://api.hh.ru/resumes/0123456789abcdef?topic_id=1359972474'
              viewed: false
            source: NEGOTIATION
            state:
              id: response
              name: Отклик
            templates:
              - id: interview
                name: Приглашение на Интервью
                quick: false
                url: 'https://api.hh.ru/message_templates/interview?topic_id=1359972474'
              - id: consider
                name: Приглашение на этап Подумать
                quick: false
                url: 'https://api.hh.ru/message_templates/consider?topic_id=1359972474'
              - id: invite
                name: Приглашение на Телефонное интервью
                quick: false
                url: 'https://api.hh.ru/message_templates/invite?topic_id=1359972474'
              - id: invite_after_response
                name: Приглашение откликнувшегося соискателя на Телефонное интервью
                quick: false
                url: 'https://api.hh.ru/message_templates/invite_after_response?topic_id=1359972474'
              - id: assessment_owner_tool
                name: Приглашение на Оценку (свой инструмент оценки)
                quick: false
                url: 'https://api.hh.ru/message_templates/assessment_owner_tool?topic_id=1359972474'
              - id: hired
                name: Приглашение на Выход на работу
                quick: false
                url: 'https://api.hh.ru/message_templates/hired?topic_id=1359972474'
              - id: discard_after_interview
                name: Отказ
                quick: false
                url: 'https://api.hh.ru/message_templates/discard_after_interview?topic_id=1359972474'
              - id: discard_after_response
                name: Отказ откликнувшемуся на вакансию соискателю
                quick: false
                url: 'https://api.hh.ru/message_templates/discard_after_response?topic_id=1359972474'
              - id: quick_discard_after_response
                name: Шаблон быстрого отказа на отклик
                quick: true
                url: 'https://api.hh.ru/message_templates/quick_discard_after_response?topic_id=1359972474'
              - id: offer
                name: Приглашение на Предложение о работе
                quick: false
                url: 'https://api.hh.ru/message_templates/offer?topic_id=1359972474'
            updated_at: '2022-05-19T18:14:13+0300'
            url: 'https://api.hh.ru/negotiations/1359972474'
            viewed_by_opponent: true
        ordered_by:
          id: last_change_time_except_employer_inbox
          name: По дате создания и активности соискателя
        page: 0
        pages: 1
        per_page: 20
    AddEmployerManager:
      value:
        additional_phone:
          city: '916'
          comment: личный
          country: '7'
          number: '4555555'
        area:
          id: '1'
        email: employer@example.com
        first_name: Илья
        is_main_contact_person: false
        last_name: Федотов
        manager_type:
          id: manager
        middle_name: Игоревич
        permissions:
          - id: can_create_vacancy
          - id: can_view_resume_contacts
        phone:
          city: '495'
          comment: с 9 до 17
          country: '7'
          number: '1568055'
        position: Менеджер по подбору персонала
    SuggestsSuggestsPositions:
      value:
        items:
          - id: '2569'
            professional_roles:
              - accept_incomplete_resumes: false
                id: '70'
                name: 'Менеджер по продажам, менеджер по работе с клиентами'
            text: Менеджер по развитию бизнеса
    SuggestsSkillSet:
      value:
        items:
          - id: '2716'
            text: Системы тепло- и холодоснабжения
          - id: '3019'
            text: Холодный цех
          - id: '3018'
            text: Холодные продажи
    NegotiationsNegotiationTestResults:
      value:
        test_result:
          duration: 10
          mark: EXCELLENT
          name: name
          score: 100
          tasks:
            - closed_answers:
                - correct: false
                  selected: true
                  value: «Государство и революция»
                - correct: true
                  selected: false
                  value: «Три источника и три составных части марксизма»
              opened_answer:
                mark: UNFAIR
                value: ' «Материализм и эмпириокритицизм»'
              question: 'В какой работе Ленина появляется знаменитая фраза «Учение Маркса всесильно, потому что оно верно»?'
            - closed_answers: []
              opened_answer:
                mark: EXCELLENT
                value: чтобы изменить его
              question: 'Закончите фразу Маркса: «Философы лишь различным образом объясняли мир, но дело заключается в том…»'
    ResumeStatusReadiness:
      value:
        blocked: false
        can_publish_or_update: false
        finished: false
        moderation_note:
          - id: bad
            name: Резюме составлено небрежно.
          - field: education
            id: block_no_education_place_or_date
            name: Отсутствуют данные об учебном заведении и дате его окончания.
        progress:
          mandatory:
            - id: citizenship
              name: Гражданство
            - id: language
              name: Язык
            - id: area
              name: Город проживания
            - id: skills
              name: Ключевые навыки
            - id: contact
              name: Контакты
            - id: education
              name: Образование
          percentage: 42
          recommended:
            - id: salary
              name: Заработная плата
            - id: middle_name
              name: Отчество
            - id: work_ticket
              name: Разрешение на работу
            - id: site
              name: Сайт
            - id: recommendation
              name: Рекомендации
            - id: birth_date
              name: Дата рождения
        publish_url: 'https://api.hh.ru/resumes/12345678901234567890123456789012abcdef/publish'
        status:
          id: not_published
          name: не опубликовано
    SalaryStatisticsEvaluation:
      value:
        market_salary:
          average: 50054
          bottom: 28500
          maximum: 52643
          median: 35000
          minimum: 20000
          upper: 50000
        resulting_parameters:
          areas:
            - id: '10010'
              name: Южный федеральный округ
          employee_levels:
            - id: specialist
              name: Специалист
          employers_count: 21
          excluded_areas:
            - id: '1530'
              name: Ростовская область
          indirect_calculation: null
          industries:
            - id: '7'
              name: 'Информационные технологии, системная интеграция, интернет'
          positions_count: 1648
          sources:
            - SALARIES
            - RESUMES
            - VACANCIES
          specialities:
            - id: '1200000'
              name: Эксплуатация информационных систем
    ResumeResumeViewEmployer:
      value:
        actions:
          download:
            pdf:
              url: 'https://api.hh.ru/resumes/09866c49/download/file-name.pdf?type=pdf'
            rtf:
              url: 'https://api.hh.ru/resumes/09866c49/download/file-name.rtf?type=rtf'
        age: 29
        alternate_url: 'https://hh.ru/resume/09866c49'
        area:
          id: '1'
          name: Москва
          url: 'https://api.hh.ru/areas/1'
        birth_date: '1993-06-28'
        business_trip_readiness:
          id: sometimes
          name: готов к редким командировкам
        can_view_full_info: true
        certificate: []
        citizenship:
          - id: '113'
            name: Россия
            url: 'https://api.hh.ru/areas/113'
        contact:
          - comment: Звонить после 12
            need_verification: true
            preferred: false
            type:
              id: cell
              name: Мобильный телефон
            value:
              city: '495'
              country: '7'
              formatted: +7 (495) 552-73-67
              number: '5527367'
            verified: false
          - preferred: true
            type:
              id: email
              name: Эл. почта
            value: my-email@example.com
        created_at: '2023-05-25T14:22:06+0300'
        download:
          pdf:
            url: 'https://api.hh.ru/resumes/09866c49/download/file-name.pdf?type=pdf'
          rtf:
            url: 'https://api.hh.ru/resumes/09866c49/download/file-name.rtf?type=rtf'
        driver_license_types:
          - id: A
        education:
          additional: []
          attestation: []
          elementary: []
          level:
            id: master
            name: Магистр
          primary:
            - name: testUniversity
              name_id: null
              organization: testFaculty
              organization_id: null
              result: testSpeciality
              result_id: null
              year: 1988
        employment:
          id: part
          name: Частичная занятость
        employments:
          - id: part
            name: Частичная занятость
        experience:
          - area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            company: Компания
            company_id: null
            company_url: 'http://url.ru'
            description: Руководил отделом
            employer: null
            end: '2012-02-06'
            industries: []
            industry:
              id: '1'
              name: Банки/кредиты/инвестиции/лизинг
            position: Директор
            start: '2011-01-02'
        favorited: false
        first_name: Иван
        gender:
          id: male
          name: Мужской
        has_vehicle: true
        hidden_fields: []
        id: 09866c49
        language:
          - id: chv
            level:
              id: a1
              name: A1 — Начальный
            name: Чувашский
        last_name: Иванов
        metro:
          id: '6.8'
          lat: 55.807794
          line:
            hex_color: F07E24
            id: '6'
            name: Калужско-Рижская
          lng: 37.638699
          name: Алексеевская
          order: 5
        middle_name: null
        negotiations_history:
          url: 'https://api.hh.ru/resumes/09866c49/negotiations_history'
        owner:
          comments:
            counters:
              total: 0
            url: 'https://api.hh.ru/applicant_comments/54765267'
          id: '54765267'
        paid_services: []
        photo:
          '40': 'https://hhcdn.ru/photo/00970.png'
          '100': 'https://hhcdn.ru/photo/00971.png'
          '500': 'https://hhcdn.ru/photo/00972.png'
          medium: 'https://hhcdn.ru/photo/00972.png'
          small: 'https://hhcdn.ru/photo/00971.png'
        platform:
          id: headhunter
        portfolio:
          - description: Portfolio description
            medium: 'https://hhcdn.ru/photo/00976.png'
            small: 'https://hhcdn.ru/photo/00975.png'
        professional_roles:
          - id: '124'
            name: Тестировщик
        recommendation:
          - contact: ''
            name: Ivan
            organization: HH
            position: CEO
        relocation:
          area:
            - id: '98'
              name: Ульяновск
              url: 'https://api.hh.ru/areas/98'
          district: []
          type:
            id: relocation_possible
            name: готов к переезду
        resume_locale:
          id: RU
          name: Русский
        salary:
          amount: 10000
          currency: USD
        schedule:
          id: flexible
          name: Гибкий график
        schedules:
          - id: flexible
            name: Гибкий график
        site:
          - type:
              id: icq
              name: ICQ
            url: '123321123'
        skill_set:
          - Графика
          - Дизайн
        skills: Руководство большой командой
        title: API Test Resume
        total_experience:
          months: 14
        travel_time:
          id: less_than_hour
          name: Не более часа
        updated_at: '2023-05-25T14:22:06+0300'
        work_ticket:
          - id: '113'
            name: Россия
            url: 'https://api.hh.ru/areas/113'
    VacanciesVacanciesBlacklisted:
      value:
        found: 1
        items:
          - address: null
            adv_response_url: 'https://api.hh.ru/vacancies/8/adv_response?host=hh.ru'
            alternate_url: 'https://hh.ru/vacancy/8'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=8'
            archived: false
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            created_at: '2022-09-26T12:37:14+0300'
            department: null
            employer:
              alternate_url: 'https://hh.ru/employer/48'
              id: '48'
              logo_urls: null
              name: ADAGFJSKGRRKQ
              trusted: true
              url: 'https://api.hh.ru/employers/48'
              vacancies_url: 'https://api.hh.ru/vacancies?employer_id=48'
            has_test: false
            id: '8'
            insider_interview: null
            name: JЛEтмюАНрG ДAsёЙtпЁёж
            premium: false
            published_at: '2022-09-26T12:37:14+0300'
            relations:
              - blacklisted
            response_letter_required: false
            response_url: null
            salary:
              currency: USD
              from: 1209
              gross: true
              to: 1506
            sort_point_distance: null
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/8?host=hh.ru'
        limit_reached: false
        page: 0
        pages: 1
        per_page: 20
    ResumesResumeViewHistory:
      value:
        found: 1
        items:
          - created_at: '2014-02-05T19:05:58+0400'
            employer:
              alternate_url: 'https://hh.ru/employer/1455'
              id: '1455'
              logo_urls:
                '90': 'https://hh.ru/employer/logo/1455'
              name: HeadHunter
              url: 'https://api.hh.ru/employers/1455'
              vacancies_url: 'https://api.hh.ru/vacancies?employer_id=1455'
            viewed: true
        page: 0
        pages: 1
        per_page: 20
        resume:
          alternate_url: 'https://hh.ru/resumes/555aaaabbbfrfs123'
          id: 555aaaabbbfrfs123
          title: Консультант
          url: 'https://api.hh.ru/resumes/555aaaabbbfrfs123'
    ResumesSearchForResumes:
      value:
        found: 1
        items:
          - actions:
              download:
                pdf:
                  url: 'https://api.hh.ru/resumes/ABCDEF01234567890/download/Lnhfbjibfvcixqb%20Fnhfbjiaxluffhw%20Mnhfbjicdkicrzl.pdf?type=pdf'
                rtf:
                  url: 'https://api.hh.ru/resumes/ABCDEF01234567890/download/Lnhfbjibfvcixqb%20Fnhfbjiaxluffhw%20Mnhfbjicdkicrzl.rtf?type=rtf'
              download_with_contact:
                pdf:
                  url: 'https://api.hh.ru/resumes/ABCDEF01234567890/download/Lnhfbjibfvcixqb%20Fnhfbjiaxluffhw%20Mnhfbjicdkicrzl.pdf?type=pdf&with_contact=ab65a8562d85e1798ad90d67fe8f5253'
                rtf:
                  url: 'https://api.hh.ru/resumes/ABCDEF01234567890/download/Lnhfbjibfvcixqb%20Fnhfbjiaxluffhw%20Mnhfbjicdkicrzl.pdf?type=rtf&with_contact=ab65a8562d85e1798ad90d67fe8f5253'
              get_with_contact:
                url: 'https://api.hh.ru/resumes/ABCDEF01234567890?with_contact=ab65a8562d85e1798ad90d67fe8f5253'
            age: 56
            alternate_url: 'https://hh.ru/resume/ABCDEF01234567890'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            can_view_full_info: false
            certificate: []
            created_at: '2023-08-04T16:20:48+0300'
            download:
              pdf:
                url: 'https://api.hh.ru/resumes/ABCDEF01234567890/download/Lnhfbjibfvcixqb%20Fnhfbjiaxluffhw%20Mnhfbjicdkicrzl.pdf?type=pdf'
              rtf:
                url: 'https://api.hh.ru/resumes/ABCDEF01234567890/download/Lnhfbjibfvcixqb%20Fnhfbjiaxluffhw%20Mnhfbjicdkicrzl.pdf?type=rtf'
            education:
              level:
                id: higher
                name: Высшее
              primary:
                - name: МАИ
                  name_id: null
                  organization: Аэрокосмический
                  organization_id: null
                  result: 'Архитектура, магистр архитектуры'
                  result_id: null
                  year: 2020
            experience:
              - area:
                  id: '1'
                  name: Москва
                  url: 'https://api.hh.ru/areas/1'
                company: Роскосмос
                company_id: '2'
                company_url: 'http://some-kind.ru'
                employer: null
                end: '2023-08-04'
                industries:
                  - id: '19.623'
                    name: 'Столярно-строительные изделия (продвижение, оптовая торговля)'
                  - id: '52.651'
                    name: 'Архив, библиотека, искусствоведение'
                industry:
                  id: '52'
                  name: 'Искусство, культура'
                position: Тестировщик
                start: '2022-03-22'
            favorited: true
            first_name: null
            gender:
              id: male
              name: Male
            hidden_fields: []
            id: ABCDEF01234567890
            last_name: null
            last_negotiation: null
            marked: false
            middle_name: null
            negotiations_history:
              url: 'https://api.hh.ru/resumes/ABCDEF01234567890/negotiations_history'
            owner:
              comments:
                counters:
                  total: 1
                url: 'https://api.hh.ru/applicant_comments/54752012'
              id: '54751619'
            photo: null
            platform:
              id: headhunter
            salary:
              amount: 1500
              currency: USD
            title: TEST_RESUME
            total_experience:
              months: 18
            updated_at: '2023-08-04T16:20:48+0300'
            url: 'https://api.hh.ru/resumes/ABCDEF01234567890'
            viewed: false
        page: 0
        pages: 1
        per_page: 20
    VacanciesVisitors:
      value:
        found: 2
        hidden_on_page: 0
        items:
          - actions:
              download:
                pdf:
                  url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/download/TEST_RESUME_DECDHAEFEMAEN.pdf?type=pdf&vacancy_id=28'
                rtf:
                  url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/download/TEST_RESUME_DECDHAEFEMAEN.rtf?type=rtf&vacancy_id=28'
              download_with_contact:
                pdf:
                  url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/download/TEST_RESUME_DECDHAEFEMAEN.pdf?type=pdf&vacancy_id=28&with_contact=77da67de52a447c3dd5b5b06dab2d8ef'
                rtf:
                  url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/download/TEST_RESUME_DECDHAEFEMAEN.rtf?type=rtf&vacancy_id=28&with_contact=77da67de52a447c3dd5b5b06dab2d8ef'
              get_with_contact:
                url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036?with_contact=77da67de52a447c3dd5b5b06dab2d8ef'
            age: 56
            alternate_url: 'https://hh.ru/resume/c1e693d00000000014000000264a64655a3036?vacancyId=28'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            can_view_full_info: false
            certificate: []
            created_at: '2023-03-07T14:25:42+0300'
            download:
              pdf:
                url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/download/TEST_RESUME_DECDHAEFEMAEN.pdf?type=pdf&vacancy_id=28'
              rtf:
                url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/download/TEST_RESUME_DECDHAEFEMAEN.rtf?type=rtf&vacancy_id=28'
            education:
              level:
                id: higher
                name: Высшее
              primary:
                - name: МАИ
                  name_id: null
                  organization: Аэрокосмический
                  organization_id: null
                  result: 'Архитектура, магистр архитектуры'
                  result_id: null
                  year: 2020
            experience:
              - area:
                  id: '1'
                  name: Москва
                  url: 'https://api.hh.ru/areas/1'
                company: DHL Express
                company_id: '2'
                company_url: 'http://some-kind.ru'
                employer: null
                end: '2023-03-07'
                industries:
                  - id: '19.623'
                    name: 'Столярно-строительные изделия (продвижение, оптовая торговля)'
                  - id: '52.651'
                    name: 'Архив, библиотека, искусствоведение'
                industry:
                  id: '52'
                  name: 'Искусство, культура'
                position: Тестировщик
                start: '2021-10-23'
            favorited: false
            first_name: null
            gender:
              id: male
              name: Мужской
            hidden_fields: []
            id: c1e693d00000000014000000264a64655a3036
            last_name: null
            marked: false
            middle_name: null
            negotiations_history:
              url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036/negotiations_history'
            owner:
              comments:
                counters:
                  total: 0
                url: 'https://api.hh.ru/applicant_comments/54751648'
              id: '54751648'
            photo: null
            platform:
              id: headhunter
            salary:
              amount: 1500
              currency: USD
            title: TEST_RESUME_DECDHAEFEMAEN
            total_experience:
              months: 17
            updated_at: '2023-03-07T14:25:42+0300'
            url: 'https://api.hh.ru/resumes/c1e693d00000000014000000264a64655a3036'
            viewed: false
          - actions:
              download:
                pdf:
                  url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/download/TEST_RESUME_DEAJCCHYGGWZJ.pdf?type=pdf&vacancy_id=28'
                rtf:
                  url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/download/TEST_RESUME_DEAJCCHYGGWZJ.rtf?type=rtf&vacancy_id=28'
              download_with_contact:
                pdf:
                  url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/download/TEST_RESUME_DEAJCCHYGGWZJ.pdf?type=pdf&vacancy_id=28&with_contact=80ffa749334f07f12311cc9f9034a7cb'
                rtf:
                  url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/download/TEST_RESUME_DEAJCCHYGGWZJ.rtf?type=rtf&vacancy_id=28&with_contact=80ffa749334f07f12311cc9f9034a7cb'
              get_with_contact:
                url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935?with_contact=80ffa749334f07f12311cc9f9034a7cb'
            age: 56
            alternate_url: 'https://hh.ru/resume/414fa29f00000000130000002641686c723935?vacancyId=28'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            can_view_full_info: false
            certificate: []
            created_at: '2023-03-07T14:25:40+0300'
            download:
              pdf:
                url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/download/TEST_RESUME_DEAJCCHYGGWZJ.pdf?type=pdf&vacancy_id=28'
              rtf:
                url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/download/TEST_RESUME_DEAJCCHYGGWZJ.rtf?type=rtf&vacancy_id=28'
            education:
              level:
                id: higher
                name: Высшее
              primary:
                - name: МАИ
                  name_id: null
                  organization: Аэрокосмический
                  organization_id: null
                  result: 'Архитектура, магистр архитектуры'
                  result_id: null
                  year: 2020
            experience:
              - area:
                  id: '1'
                  name: Москва
                  url: 'https://api.hh.ru/areas/1'
                company: DHL Express
                company_id: '2'
                company_url: 'http://some-kind.ru'
                employer: null
                end: '2023-03-07'
                industries:
                  - id: '19.623'
                    name: 'Столярно-строительные изделия (продвижение, оптовая торговля)'
                  - id: '52.651'
                    name: 'Архив, библиотека, искусствоведение'
                industry:
                  id: '52'
                  name: 'Искусство, культура'
                position: Тестировщик
                start: '2021-10-23'
            favorited: false
            first_name: null
            gender:
              id: male
              name: Мужской
            hidden_fields: []
            id: 414fa29f00000000130000002641686c723935
            last_name: null
            marked: false
            middle_name: null
            negotiations_history:
              url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935/negotiations_history'
            owner:
              comments:
                counters:
                  total: 0
                url: 'https://api.hh.ru/applicant_comments/54751647'
              id: '54751647'
            photo: null
            platform:
              id: headhunter
            salary:
              amount: 1500
              currency: USD
            title: TEST_RESUME_DEAJCCHYGGWZJ
            total_experience:
              months: 17
            updated_at: '2023-03-07T14:25:40+0300'
            url: 'https://api.hh.ru/resumes/414fa29f00000000130000002641686c723935'
            viewed: false
        page: 0
        pages: 1
        per_page: 20
    ResumesAccessTypes:
      value:
        auto_hide_time_options:
          - id: month_12
            name: 1 год
          - active: true
            id: month_10
            name: 10 месяцев
          - id: month_8
            name: 8 месяцев
        items:
          - id: everyone
            name: видно всему интернету
          - id: no_one
            name: не видно никому
          - id: clients
            name: 'видно всем компаниям, зарегистрированным на HeadHunter'
          - id: whitelist
            limit: 2000
            list_url: 'https://api.hh.ru/resumes/012345abcde/whitelist'
            name: видно выбранным компаниям
            total: 3
          - active: true
            id: blacklist
            limit: 2000
            list_url: 'https://api.hh.ru/resumes/012345abcde/blacklist'
            name: скрыто от выбранных компаний
            total: 5
          - id: direct
            name: доступно только по прямой ссылке
    VacanciesVacanciesFavorited:
      value:
        found: 20
        items:
          - address: null
            adv_response_url: 'https://api.hh.ru/vacancies/239/adv_response?host=hh.ru'
            alternate_url: 'https://hh.ru/vacancy/239'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=239'
            archived: false
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            created_at: '2022-09-19T12:31:51+0300'
            department: null
            employer:
              alternate_url: 'https://hh.ru/employer/275'
              id: '275'
              logo_urls: null
              name: JAFJGESKCUOPG
              trusted: true
              url: 'https://api.hh.ru/employers/275'
              vacancies_url: 'https://api.hh.ru/vacancies?employer_id=275'
            has_test: false
            id: '239'
            insider_interview: null
            name: TEST_VACANCY 1
            premium: false
            published_at: '2022-09-19T12:31:51+0300'
            relations:
              - favorited
            response_letter_required: false
            response_url: null
            salary:
              currency: USD
              from: 1209
              gross: true
              to: 1508
            sort_point_distance: null
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/239?host=hh.ru'
        page: 0
        pages: 1
        per_page: 20
    SavedSearchesSavedSearchVacancyItem:
      value:
        created_at: '2014-04-11T13:12:17+0400'
        id: '123'
        items:
          count: 304234
          url: 'https://api.hh.ru/vacancies?area=1&saved_search_id=123'
        name: Test autosearch
        new_items:
          count: 12
          url: 'https://api.hh.ru/vacancies?area=1&saved_search_id=123&date_from=2014-01-11T13%3A12%3A17%2B0400'
        subscription: true
    VacanciesPreferredNegotiationsOrder:
      value:
        order_type:
          id: last_change_time_except_employer_inbox
          name: По дате создания и активности соискателя
    LocalesLocales:
      value:
        - current: true
          id: RU
          name: Русский
        - current: false
          id: EN
          name: English
    NegotiationsEmployerNegotiationItem:
      value:
        actions:
          - arguments:
              - id: message
                required: false
                required_arguments: []
              - id: send_sms
                required: false
                required_arguments:
                  - id: message
            enabled: true
            id: offer
            method: PUT
            name: Предложение о работе
            resulting_employer_state:
              id: offer
              name: Предложение о работе
            templates:
              - id: offer
                name: Приглашение на Предложение о работе
                quick: false
                url: 'https://api.hh.ru/message_templates/offer?topic_id=123456789'
            url: 'https://api.hh.ru/negotiations/offer/123456789'
        chat_id: 3490
        chat_states:
          response_reminder_state:
            allowed: false
        counters:
          messages: 1
          unread_messages: 1
        created_at: '2024-02-20T10:24:48+0300'
        employer_state:
          id: response
          name: Отклик
        has_updates: true
        id: '123456789'
        messages_url: 'https://api.hh.ru/negotiations/123456789/messages'
        messaging_status: ok
        resume:
          actions:
            download:
              pdf:
                url: 'https://api.hh.ru/resumes/0123456789abcdef/download/%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%20%D0%98%D0%B2%D0%B0%D0%BD.pdf?type=pdf&topic_id=123456789&vacancy_id=123456789'
              rtf:
                url: 'https://api.hh.ru/resumes/0123456789abcdef/download/%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%20%D0%98%D0%B2%D0%B0%D0%BD.rtf?type=rtf&topic_id=123456789&vacancy_id=123456789'
          age: null
          alternate_url: 'https://hh.ru/resume/0123456789abcdef?t=123456789&vacancyId=123456789'
          area:
            id: '1'
            name: Москва
            url: 'https://api.hh.ru/areas/1'
          can_view_full_info: true
          certificate: []
          created_at: '2024-02-20T10:24:47+0300'
          download:
            pdf:
              url: 'https://api.hh.ru/resumes/0123456789abcdef/download/%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%20%D0%98%D0%B2%D0%B0%D0%BD.pdf?type=pdf&topic_id=123456789&vacancy_id=123456789'
            rtf:
              url: 'https://api.hh.ru/resumes/0123456789abcdef/download/%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%20%D0%98%D0%B2%D0%B0%D0%BD.rtf?type=rtf&topic_id=123456789&vacancy_id=123456789'
          education:
            level:
              id: master
              name: Магистр
            primary:
              - name: 'Российский государственный социальный университет, Москва'
                name_id: '39420'
                organization: Факультет информационных технологий
                organization_id: null
                result: ''
                result_id: null
                year: 2012
          experience:
            - area:
                id: '1'
                name: Москва
                url: 'https://api.hh.ru/areas/1'
              company: HeadHunter
              company_id: null
              company_url: 'http://url.ru'
              employer: null
              end: '2012-02-06'
              industries: []
              industry:
                id: '1'
                name: Банки/кредиты/инвестиции/лизинг
              position: Директор
              start: '2011-01-02'
          favorited: false
          first_name: Иван
          gender:
            id: male
            name: Мужской
          hidden_fields: []
          id: 0123456789abcdef
          last_name: Иванов
          marked: false
          middle_name: null
          negotiations_history:
            url: 'https://api.hh.ru/resumes/0123456789abcdef/negotiations_history'
          owner:
            comments:
              counters:
                total: 0
              url: 'https://api.hh.ru/applicant_comments/54769355'
            id: '54769355'
          photo: null
          platform:
            id: headhunter
          salary: null
          title: Начинающий специалист
          total_experience:
            months: 14
          updated_at: '2024-02-20T10:24:47+0300'
          url: 'https://api.hh.ru/resumes/0123456789abcdef?topic_id=123456789'
          viewed: false
        source: NEGOTIATION
        state:
          id: response
          name: Отклик
        updated_at: '2024-02-20T10:24:48+0300'
        url: 'https://api.hh.ru/negotiations/123456789'
        vacancy:
          address:
            building: '10'
            city: Москва
            description: null
            id: '1118'
            lat: 35
            lng: 30
            metro:
              lat: 55.789704
              line_id: '2'
              line_name: Замоскворецкая
              lng: 37.558212
              station_id: '2.34'
              station_name: Динамо
            metro_stations:
              - lat: 55.789704
                line_id: '2'
                line_name: Замоскворецкая
                lng: 37.558212
                station_id: '2.34'
                station_name: Динамо
            raw: 'Москва, ул. Динамо, 10'
            street: ул. Динамо
          alternate_url: 'https://hh.ru/vacancy/123456789'
          apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=123456789'
          archived: false
          area:
            id: '98'
            name: Ульяновск
            url: 'https://api.hh.ru/areas/98'
          created_at: '2024-02-20T10:24:43+0300'
          department: null
          employer:
            accredited_it_employer: false
            alternate_url: 'https://hh.ru/employer/8183'
            id: '8183'
            logo_urls: null
            name: HeadHunter
            trusted: true
            url: 'https://api.hh.ru/employers/8183'
            vacancies_url: 'https://api.hh.ru/vacancies?employer_id=8183'
          has_test: false
          id: '123456789'
          insider_interview: null
          name: Менеджер
          premium: false
          professional_roles:
            - id: '32'
              name: Менеджер
          published_at: '2024-02-20T10:24:43+0300'
          response_letter_required: false
          response_url: null
          salary: null
          sort_point_distance: null
          type:
            id: open
            name: Открытая
          url: 'https://api.hh.ru/vacancies/123456789?host=hh.ru'
        viewed_by_opponent: true
    DictionariesFaculties:
      value:
        - id: '23'
          name: Физико-химический факультет
    VacanciesVacancyProlongateAvailable:
      value:
        actions:
          - enabled: true
            id: prolongate
            method: POST
            url: 'https://api.hh.ru/vacancies/123456789/prolongate'
        expires_at: '2015-11-19T17:10:48+0300'
        id: '123456789'
    ArtifactsArtifactUpload:
      value:
        id: '123456'
        medium: null
        small: null
        state:
          id: processing
          name: processing
    ResumesResumeVisibilityListSearchResponse:
      value:
        found: 2
        items:
          - alternate_url: 'https://hh.ru/employer/1455'
            id: '1455'
            logo_urls:
              '90': 'https://hh.ru/employer/logo/1455'
            name: HeadHunter
            selected: true
            url: 'https://api.hh.ru/employers/1455'
          - alternate_url: 'https://hh.ru/employer/87891'
            id: '87891'
            logo_urls:
              '90': 'https://hh.ru/employer/logo/87891'
            name: 'HeadHunter: Казахстан'
            selected: false
            url: 'https://api.hh.ru/employers/87891'
        page: 0
        pages: 1
        per_page: 20
    SavedSearchesSavedSearchResumeItem:
      value:
        created_at: '2015-01-01T13:12:17+0400'
        id: '609535'
        items:
          count: 55
          url: 'https://api.hh.ru/resumes?order_by=publication_time&saved_search_id=123456&text=manager&area=1'
        name: Managers in Moscow
        new_items:
          count: 15
          url: 'https://api.hh.ru/resumes?order_by=publication_time&saved_search_id=123456&text=manager&area=1&last_used=2015-11-12T18%3A06%3A04%2B0300'
        subscription: true
    ArtifactsArtifactsPortfolio:
      value:
        found: 1
        items:
          - description: Описание
            id: '92278992'
            medium: 'http://...'
            small: 'http://...'
            state:
              id: ok
              name: ok
        page: 0
        pages: 1
        per_page: 1
    SuggestsCompanies:
      value:
        items:
          - area:
              id: '113'
              name: Россия
            id: '1455'
            industries:
              - id: '7.541'
                name: Интернет-компания
            logo_urls:
              '90': 'https://hh.ru/employer-logo/289055.png'
            text: HeadHunter
            url: 'http:/hh.ru'
    DictionariesDictionaries:
      value:
        applicant_comment_access_type:
          - id: coworkers
            name: Виден мне и моим коллегам
          - id: owner
            name: Виден только мне
        applicant_comments_order:
          - id: creation_time_desc
            name: по убыванию даты публикации
          - id: creation_time_asc
            name: по дате публикации
        applicant_negotiation_status:
          - id: all
            name: Все
          - id: active
            name: Активные
          - id: invitations
            name: Активные приглашения
          - id: response
            name: Активные отклики
          - id: discard
            name: Отказ
          - id: archived
            name: Архивированные
          - id: non_archived
            name: 'Все, кроме архивированных'
          - id: deleted
            name: Скрытые
        business_trip_readiness:
          - id: ready
            name: готов к командировкам
          - id: sometimes
            name: готов к редким командировкам
          - id: never
            name: не готов к командировкам
        currency:
          - abbr: AZN
            code: AZN
            default: false
            in_use: false
            name: Манаты
            rate: 0.027728
          - abbr: "бел.\_руб."
            code: BYR
            default: false
            in_use: false
            name: Белорусские рубли
            rate: 0.042685
          - abbr: EUR
            code: EUR
            default: false
            in_use: true
            name: Евро
            rate: 0.015982
          - abbr: GEL
            code: GEL
            default: false
            in_use: false
            name: Грузинский лари
            rate: 0.0344
          - abbr: KGS
            code: KGS
            default: false
            in_use: false
            name: Киргизский сом
            rate: 1.356611
          - abbr: KZT
            code: KZT
            default: false
            in_use: false
            name: Тенге
            rate: 7.809145
          - abbr: руб.
            code: RUR
            default: true
            in_use: true
            name: Рубли
            rate: 1
          - abbr: грн.
            code: UAH
            default: false
            in_use: false
            name: Гривны
            rate: 0.596833
          - abbr: USD
            code: USD
            default: false
            in_use: true
            name: Доллары
            rate: 0.016311
          - abbr: сум
            code: UZS
            default: false
            in_use: false
            name: Узбекский сум
            rate: 177.916948
        driver_license_types:
          - id: A
          - id: B
          - id: C
          - id: D
          - id: E
          - id: BE
          - id: CE
          - id: DE
          - id: TM
          - id: TB
        education_level:
          - id: secondary
            name: Среднее
          - id: special_secondary
            name: Среднее специальное
          - id: unfinished_higher
            name: Неоконченное высшее
          - id: higher
            name: Высшее
          - id: bachelor
            name: Бакалавр
          - id: master
            name: Магистр
          - id: candidate
            name: Кандидат наук
          - id: doctor
            name: Доктор наук
        employer_active_vacancies_order:
          - id: name_asc
            name: по заголовку
          - id: name_desc
            name: 'по заголовку, в обратном порядке'
          - id: expiration_date_asc
            name: по дате
          - id: expiration_date_desc
            name: по убыванию даты
          - id: unseen_responses_asc
            name: по возрастанию количества непросмотренных откликов
          - id: unseen_responses_desc
            name: по убыванию количества непросмотренных откликов
        employer_archived_vacancies_order:
          - id: name_asc
            name: по заголовку
          - id: name_desc
            name: 'по заголовку, в обратном порядке'
          - id: archive_time_asc
            name: по дате архивации
          - id: archive_time_desc
            name: по убыванию даты архивации
        employer_hidden_vacancies_order:
          - id: name_asc
            name: по заголовку
          - id: name_desc
            name: 'по заголовку, в обратном порядке'
          - id: archive_time_asc
            name: по дате архивации
          - id: archive_time_desc
            name: по убыванию даты архивации
        employer_relation:
          - id: blacklisted
            name: Скрыт из поиска вакансий
        employer_type:
          - id: company
            name: Прямой работодатель
          - id: agency
            name: Кадровое агентство
          - id: project_director
            name: Руководитель проекта
          - id: private_recruiter
            name: Частный рекрутер
          - id: self_employed
            name: Самозанятый
          - id: private_individual
            name: Частное лицо
        employment:
          - id: full
            name: Полная занятость
          - id: part
            name: Частичная занятость
          - id: project
            name: Проектная работа
          - id: volunteer
            name: Волонтерство
          - id: probation
            name: Стажировка
        experience:
          - id: noExperience
            name: Нет опыта
          - id: between1And3
            name: От 1 года до 3 лет
          - id: between3And6
            name: От 3 до 6 лет
          - id: moreThan6
            name: Более 6 лет
        gender:
          - id: male
            name: Мужской
          - id: female
            name: Женский
        job_search_statuses_applicant:
          - id: active_search
            name: Активно ищу работу
          - id: looking_for_offers
            name: Рассматриваю входящие предложения
          - id: not_looking_for_job
            name: "Не\_ищу работу"
          - id: has_job_offer
            name: 'Предложили работу, пока думаю'
          - id: accepted_job_offer
            name: "Уже выхожу на\_новое место"
        job_search_statuses_employer:
          - id: active_search
            name: Активно ищет работу
          - id: looking_for_offers
            name: Рассматривает предложения
          - id: not_looking_for_job
            name: "Не\_ищет работу"
          - id: has_job_offer
            name: 'Предложили работу, решает'
          - id: accepted_job_offer
            name: "Вышел на\_новое место"
        language_level:
          - id: a1
            name: A1 — Начальный
          - id: a2
            name: A2 — Элементарный
          - id: b1
            name: B1 — Средний
          - id: b2
            name: B2 — Средне-продвинутый
          - id: c1
            name: C1 — Продвинутый
          - id: c2
            name: C2 — В совершенстве
          - id: l1
            name: Родной
        messaging_status:
          - id: archived
            name: Вакансия отправлена в архив
          - id: ok
            name: Переписка доступна
          - id: disabled_by_employer
            name: Работодатель отключил переписку
          - id: in_a_row_limit
            name: 'Вы отправили 5 сообщений подряд. Дождитесь ответа, чтобы написать еще'
          - id: overall_limit
            name: Превышено число сообщений в переписке
          - id: no_invitation
            name: Переписка доступна только после приглашения
          - id: resume_deleted
            name: Резюме удалено
          - id: prohibited
            name: Переписка недоступна
        negotiations_order:
          - id: updated_at
            name: по дате обновления
          - id: created_at
            name: по дате добавления
        negotiations_participant_type:
          - id: applicant
            name: Соискатель
          - id: employer
            name: Работодатель
        negotiations_state:
          - id: response
            name: Отклик
          - id: invitation
            name: Приглашение
          - id: discard
            name: Отказ
          - id: hidden
            name: Скрытый
        phone_call_status:
          - id: pick_successful
            name: Установка соединения
          - id: calling
            name: Звонок
          - id: did_not_connect
            name: Абонент временно недоступен
          - id: call_in_progress
            name: Телефонный разговор
          - id: call_error
            name: Техническая ошибка
          - id: call_ended
            name: Телефонный разговор завершен
        preferred_contact_type:
          - id: home
            name: Домашний телефон
          - id: work
            name: Рабочий телефон
          - id: cell
            name: Мобильный телефон
          - id: email
            name: Эл. почта
        relocation_type:
          - id: no_relocation
            name: не готов к переезду
          - id: relocation_possible
            name: готов к переезду
          - id: relocation_desirable
            name: хочу переехать
        resume_access_type:
          - id: no_one
            name: не видно никому
          - id: whitelist
            name: видно выбранным компаниям
          - id: blacklist
            name: скрыто от выбранных компаний
          - id: clients
            name: 'видно всем компаниям, зарегистрированным на HeadHunter'
          - id: everyone
            name: видно всему интернету
          - id: direct
            name: доступно только по прямой ссылке
        resume_contacts_site_type:
          - id: personal
            name: Другой сайт
          - id: moi_krug
            name: Мой круг
          - id: livejournal
            name: LiveJournal
          - id: linkedin
            name: LinkedIn
          - id: freelance
            name: Free-lance
          - id: skype
            name: Skype
          - id: icq
            name: ICQ
        resume_hidden_fields:
          - id: names_and_photo
            name: ФИО и фотографию
          - id: phones
            name: Все указанные в резюме телефоны
          - id: email
            name: Электронную почту
          - id: other_contacts
            name: 'Прочие контакты (Skype, ICQ, соцсети)'
          - id: experience
            name: Все места работы
        resume_moderation_note:
          - id: bad
            name: Резюме составлено небрежно.
          - id: block_full_name
            name: В резюме отсутствует полное имя кандидата.
          - id: bad_description
            name: 'Укажите желаемую позицию, чтобы повысить свои шансы найти работу.'
          - id: block_no_education_place_or_date
            name: Отсутствуют данные об учебном заведении и дате его окончания.
          - id: bad_education
            name: Плохо описано образование.
          - id: bad_education_student
            name: 'Укажите полное название учебного заведения, факультет и планируемый год окончания.'
          - id: block_no_function
            name: Опишите подробнее свои обязанности и функции.
          - id: block_work_place
            name: Не указан опыт работы за последнее время
          - id: no_company_name
            name: Укажите названия мест работы.
          - id: no_company_description
            name: 'Укажите сферу деятельности компаний, в которых Вы работали.'
          - id: no_position
            name: Плохо описаны занимаемые должности.
          - id: no_date
            name: Отсутствуют даты начала и окончания работы.
          - id: bad_function
            name: Плохо описаны функции и обязанности.
          - id: not_enough_information
            name: 'Укажите больше дополнительной информации: владение иностранными языками, знание компьютерных программ и др.'
          - id: lot_information
            name: Слишком много дополнительной информации.
          - id: no_recommendation
            name: Вы не предоставили ни одну рекомендацию.
          - id: careless_additional_information
            name: 'Обратите внимание на раздел «Ключевые навыки». Укажите в нём сведения, которые выгодно отличат Вас в качестве претендента на желаемую позицию. Проверьте орфографию и опечатки.'
          - id: careless_photo
            name: 'Рекомендуем Вам изменить фотографию для резюме. Лучше размещать фотографии, где Вы изображены в деловом или повседневном костюме.'
          - id: careless_key_skill_information
            name: 'Отредактируйте раздел «Ключевые навыки» Вашего резюме, поскольку указанная информация не вполне соответствует формату и/или содержит опечатки.'
          - id: incorrect_phone_number
            name: 'В резюме указан несуществующий номер телефона. Если номер корректен, свяжитесь со службой поддержки'
          - id: block_obscenity
            name: Мат в резюме
          - id: block_obscenity_name
            name: Мат в ФИО
          - id: block_obscenity_title
            name: Мат в названии должности
          - id: block_obscenity_experience
            name: Мат в разделе "Опыт работы"
          - id: block_obscenity_skills
            name: Мат в поле "О себе"
          - id: block_obscenity_key_skills
            name: Мат в ключевых навыках
          - id: block_obscenity_education
            name: Мат в разделе "Образование"
          - id: block_obscenity_recommendation
            name: Мат в разделе "Рекомендации"
          - id: block_experience_in_one_place
            name: Укажите опыт отдельно для каждой компании
          - id: experience_caps
            name: 'При описании опыта работы проследите, что заглавные буквы использованы только в начале предложений или для имен собственных'
          - id: experience_multilang
            name: Опыт работы должен быть описан на одном языке
          - id: experience_spelling
            name: Исправьте орфографические ошибки в описании опыта работы
          - id: block_experience_in_additional_information
            name: Опишите опыт работы в соответствующих полях
          - id: additional_information_caps
            name: 'При заполнении поля "О себе" проследите, что ЗАГЛАВНЫЕ БУКВЫ использованы только в начале предложений или для имен собственных'
          - id: additional_information_multilang
            name: Поле "О себе" должно быть написано на одном языке
          - id: additional_information_spelling
            name: Исправьте орфографические ошибки в поле "О себе"
        resume_search_experience_period:
          - id: all_time
            name: за всё время опыта
          - id: last_year
            name: за последний год
          - id: last_three_years
            name: за последние 3 года
          - id: last_six_years
            name: за последние 6 лет
        resume_search_fields:
          - id: everywhere
            name: везде
          - id: title
            name: в названии резюме
          - id: education
            name: в образовании
          - id: skills
            name: в ключевых навыках
          - id: experience
            name: в опыте работы
          - id: experience_company
            name: в компаниях и отраслях
          - id: experience_position
            name: в должностях
          - id: experience_description
            name: в обязанностях
        resume_search_label:
          - id: only_with_photo
            name: Только с фотографией
          - id: only_with_salary
            name: Не показывать резюме без зарплаты
          - id: only_with_age
            name: Не показывать резюме без указания возраста
          - id: only_with_gender
            name: Не показывать резюме без указания пола
          - id: only_with_vehicle
            name: Есть личный автомобиль
          - id: exclude_viewed_by_user_id
            name: 'Скрыть резюме, просмотренные мной'
          - id: exclude_viewed_by_employer_id
            name: 'Скрыть резюме, просмотренные всей компанией'
          - id: only_in_responses
            name: "Показать только из\_откликов и\_приглашений"
        resume_search_logic:
          - id: all
            name: Все слова встречаются
          - id: any
            name: Любое из слов встречается
          - id: phrase
            name: Точная фраза встречается
          - id: except
            name: Не встречаются
        resume_search_order:
          - id: publication_time
            name: по дате изменения
          - id: salary_desc
            name: по убыванию зарплат
          - id: salary_asc
            name: по возрастанию зарплаты
          - id: relevance
            name: по соответствию
        resume_search_relocation:
          - id: living_or_relocation
            name: Живут в указанном регионе или готовы переехать в него
          - id: living
            name: Живут в указанном регионе
          - id: living_but_relocation
            name: Живут в указанном регионе и готовы к переезду куда-либо
          - id: relocation
            name: 'Не живут в указанном регионе, но готовы переехать в него'
        resume_status:
          - id: not_published
            name: не опубликовано
          - id: published
            name: опубликовано
          - id: blocked
            name: заблокировано
          - id: on_moderation
            name: на модерации
        schedule:
          - id: fullDay
            name: Полный день
            uid: full_day
          - id: shift
            name: Сменный график
            uid: shift
          - id: flexible
            name: Гибкий график
            uid: flexible
          - id: remote
            name: Удаленная работа
            uid: remote
          - id: flyInFlyOut
            name: Вахтовый метод
            uid: fly_in_fly_out
        travel_time:
          - id: any
            name: Не имеет значения
          - id: less_than_hour
            name: Не более часа
          - id: from_hour_to_one_and_half
            name: Не более полутора часов
        vacancy_billing_type:
          - id: free
            name: Бесплатная
          - id: standard
            name: Стандарт
          - id: standard_plus
            name: Стандарт плюс
          - id: premium
            name: Премиум
        vacancy_cluster:
          - id: area
            name: Регион
          - id: metro
            name: Метро
          - id: salary
            name: Уровень дохода
          - id: professional_area
            name: Профобласть
          - id: specialization
            name: Специализация
          - id: industry
            name: Отрасль компании
          - id: sub_industry
            name: Сфера компании
          - id: experience
            name: Опыт работы
          - id: employment
            name: Тип занятости
          - id: schedule
            name: График работы
          - id: label
            name: Исключение
          - id: professional_role
            name: Профессиональная роль
          - id: district
            name: Район
        vacancy_label:
          - id: with_address
            name: Только с адресом
          - id: accept_handicapped
            name: Только доступные для людей с инвалидностью
          - id: not_from_agency
            name: Без вакансий агентств
          - id: accept_kids
            name: Только доступные для соискателей от 14 лет
          - id: accredited_it
            name: Только аккредитованные ИТ-компании
          - id: low_performance
            name: 'Только вакансии, у которых меньше 10 откликов'
        vacancy_not_prolonged_reason:
          - id: vacancy_archived
            name: Вы не можете продлевать архивную/заблокированную вакансию.
          - id: standard_plus_cannot_be_closed
            name: Вакансия "Стандарт Плюс" не может быть закрытой.
          - id: standard_plus_publication_is_updated_automatically
            name: 'Вакансия "Стандарт Плюс" не может быть обновлена, это происходит автоматически раз в три дня.'
          - id: too_early_to_prolongate_free_publication
            name: 'Бесплатная вакансия не может быть обновлена, т.к. предыдущее обновление было менее трех дней назад.'
          - id: too_early_to_prolongate_standard_publication
            name: 'Вакансия "Стандарт" не может быть обновлена, т.к. предыдущее обновление было менее трех дней назад.'
          - id: free_prolongation_not_available
            name: Бесплатная вакансия не может быть обновлена.
          - id: not_enough_quotas
            name: Вакансия не может быть обновлена. Квота на публикацию исчерпана.
          - id: not_enough_purchased_services
            name: Вакансия не может быть обновлена. Недостаточно купленных услуг.
          - id: vacancy_publication_disabled_in_area
            name: Размещение в данном регионе невозможно. Для размещения вакансий в странах Прибалтики обратитесь к персональному менеджеру
        vacancy_relation:
          - id: favorited
            name: В избранном
          - id: got_response
            name: Вы отправили резюме
          - id: got_invitation
            name: Вас пригласили
          - id: got_rejection
            name: Вам отказали
          - id: blacklisted
            name: Скрыта из поиска
        vacancy_search_fields:
          - id: name
            name: в названии вакансии
          - id: company_name
            name: в названии компании
          - id: description
            name: в описании вакансии
        vacancy_search_order:
          - id: publication_time
            name: по дате
          - id: salary_desc
            name: по убыванию дохода
          - id: salary_asc
            name: по возрастанию дохода
          - id: relevance
            name: по соответствию
          - id: distance
            name: по удалённости
        vacancy_type:
          - id: open
            name: Открытая
          - id: closed
            name: Закрытая
          - id: anonymous
            name: Анонимная
          - id: direct
            name: Рекламная
        working_days:
          - id: only_saturday_and_sunday
            name: "Работа только по\_сб\_и\_вс"
        working_time_intervals:
          - id: from_four_to_six_hours_in_a_day
            name: "Можно работать сменами по\_4–6 часов в\_день"
        working_time_modes:
          - id: start_after_sixteen
            name: 'Можно начинать работать после 16:00'
    EditEmployerManagers:
      value:
        additional_phone:
          city: '916'
          comment: личный
          country: '7'
          number: '4555555'
        permissions:
          - id: can_create_vacancy
            name: Создание и продление вакансий
          - id: can_view_resume_contacts
            name: Просмотр контактов соискателей
        phone:
          city: '495'
          comment: с 9 до 17
          country: '7'
          number: '1568055'
        position: Менеджер по подбору персонала
    ResumesCreateResume:
      value:
        area:
          id: '1'
        citizenship:
          - id: '113'
        contact:
          - preferred: true
            type:
              id: email
              name: Эл. почта
            value: my-email@example.com
          - comment: Комментарий
            need_verification: false
            preferred: false
            type:
              id: cell
              name: Мобильный телефон
            value:
              city: '955'
              country: '7'
              formatted: 7-955-000-0000
              number: '0000000'
            verified: false
        education:
          additional: null
          attestation: null
          elementary: null
          level:
            id: master
            name: Магистр
          primary:
            - name: testUniversity
              name_id: null
              organization: testFaculty
              organization_id: null
              result: testSpeciality
              result_id: null
              year: 1988
        experience:
          - area: null
            company: Компания
            company_id: null
            company_url: 'http://url.ru'
            description: Руководил отделом
            employer: null
            end: '2012-02-06'
            industries: []
            industry: null
            position: Директор
            start: '2011-01-02'
        first_name: Иван
        gender:
          id: male
          name: null
        language:
          - id: eng
            level:
              id: a1
              name: A1
            name: Английский
        last_name: Иванов
        photo: null
        portfolio: null
        skills: Свободное описание навыков
        title: RESUME
    ResumesResumeNegotiationsHistory:
      value:
        vacancies:
          - archived: false
            can_edit: true
            id: '321'
            items:
              - created_at: '2017-01-30T15:06:47+0300'
                employer_state:
                  id: offer
                  name: Предложение о работе
                with_message: true
            messages_url: 'https://api.hh.ru/negotiations/123/messages'
            name: Тестовая вакансия
            negotiations_url: 'https://api.hh.ru/negotiations/123'
            url: 'https://api.hh.ru/vacancies/321'
    NegotiationsListResponse:
      value:
        found: 1
        items:
          - created_at: '2013-10-05T19:51:38+0400'
            decline_allowed: true
            has_updates: true
            hidden: false
            id: '123'
            messaging_status: ok
            phone_calls:
              items:
                - creation_time: '2022-03-04T16:39:58.857853Z'
                  duration_seconds: null
                  id: 123
                  last_change_time: null
                  status: call_in_progress
                - creation_time: '2022-03-01T16:39:58.857853Z'
                  duration_seconds: 120
                  id: 111
                  last_change_time: '2022-03-01T16:41:58.857853Z'
                  status: call_ended
              picked_up_phone_by_opponent: true
            source: NEGOTIATION
            state:
              id: invitation
              name: Приглашение
            updated_at: '2013-10-07T18:30:57+0400'
            url: 'https://api.hh.ru/negotiations/123'
            viewed_by_opponent: true
        page: 0
        pages: 1
        per_page: 20
    ResumesSuitableResumes:
      value:
        found: 1
        items:
          - access:
              type:
                id: direct
                name: доступно только по прямой ссылке
            actions:
              download:
                pdf:
                  url: 'https://...?type=pdf'
                rtf:
                  url: 'https://...?type=rtf'
            age: null
            alternate_url: 'https://...'
            area:
              id: '1'
              name: Москва
              url: 'https://...'
            certificate: []
            created_at: '2023-07-18T14:12:38+0300'
            download:
              pdf:
                url: 'https://.../download/...?type=pdf'
              rtf:
                url: 'https://.../download/...?type=rtf'
            education:
              level:
                id: master
                name: Магистр
              primary:
                - name: testUniversity
                  name_id: null
                  organization: testFaculty
                  organization_id: null
                  result: testSpeciality
                  result_id: null
                  year: 1988
            experience:
              - area:
                  id: '1'
                  name: Москва
                  url: 'https://...'
                company: Компания
                company_id: null
                company_url: 'http://url.ru'
                employer: null
                end: '2012-02-06'
                industries: []
                industry:
                  id: '1'
                  name: Банки/кредиты/инвестиции/лизинг
                position: Директор
                start: '2011-01-02'
            finished: true
            first_name: Иван
            gender:
              id: male
              name: Мужской
            has_errors: false
            hidden_fields: []
            id: someid
            last_name: Иванов
            marked: false
            middle_name: null
            photo: null
            platform:
              id: headhunter
            requires_completion: false
            salary: null
            status:
              id: published
              name: опубликовано
            title: API Test
            total_experience:
              months: 14
            updated_at: '2023-07-18T14:12:38+0300'
            url: 'https://...'
        overall:
          already_applied: 0
          not_published: 0
          unavailable: 0
        page: 0
        pages: 1
        per_page: 1
    EmployerManagers:
      value:
        found: 1
        items:
          - additional_phone:
              city: '916'
              comment: личный
              country: '7'
              number: '4555555'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            email: employer@example.com
            first_name: Иван
            full_name: Иванов Иван Иванович
            id: '1507922'
            is_main_contact_person: false
            last_name: Иванов
            middle_name: Иванович
            phone:
              city: '495'
              comment: с 9 до 17
              country: '7'
              number: '1568055'
            position: Менеджер по подбору персонала
            vacancies_count: 0
        page: 0
        pages: 1
        per_page: 20
    ResumeResumeViewApplicant:
      value:
        _progress:
          mandatory: []
          percentage: 55
          recommended:
            - birth_date
            - portfolio
            - photo
            - driver_license_types
            - district
            - hidden_fields
            - work_ticket
            - education
            - has_vehicle
            - salary
            - skill_set
            - recommendation
            - middle_name
            - metro
            - site
        access:
          type:
            id: clients
            name: 'видно всем компаниям, зарегистрированным на HeadHunter'
        actions:
          download:
            pdf:
              url: 'https://api.hh.ru/resumes/ca9fb415848/download/pdf-file.pdf?type=pdf'
            rtf:
              url: 'https://api.hh.ru/resumes/ca9fb415848/download/rtf-file.rtf?type=rtf'
        age: null
        alternate_url: 'https://hh.ru/resume/ca9fb415848'
        area:
          id: '1'
          name: Москва
          url: 'https://api.hh.ru/areas/1'
        birth_date: null
        blocked: false
        business_trip_readiness:
          id: never
          name: не готов к командировкам
        can_publish_or_update: false
        certificate: []
        citizenship:
          - id: '113'
            name: Россия
            url: 'https://api.hh.ru/areas/113'
        contact:
          - comment: Звонить после 12
            need_verification: true
            preferred: false
            type:
              id: cell
              name: Мобильный телефон
            value:
              city: '495'
              country: '7'
              formatted: +7 (495) 808-12-51
              number: '8081251'
            verified: false
          - preferred: true
            type:
              id: email
              name: Эл. почта
            value: my-email@example.com
        created_at: '2023-05-25T14:19:02+0300'
        creds:
          answers:
            '27':
              answer_group: positive
              answer_id: '27'
              ask_questions_after: []
              description: null
              positive_title: 'Есть опыт работы поваром, пекарем или кондитером'
              skip_at_result: false
              title: Да
            '28':
              answer_group: negative
              answer_id: '28'
              ask_questions_after: []
              description: null
              positive_title: 'Нет опыта работы поваром, пекарем или кондитером'
              skip_at_result: true
              title: Нет опыта
            '29':
              answer_group: positive
              answer_id: '29'
              ask_questions_after: []
              description: null
              positive_title: Есть кулинарное образование
              skip_at_result: false
              title: 'Да, есть'
            '30':
              answer_group: negative
              answer_id: '30'
              ask_questions_after: []
              description: null
              positive_title: Нет кулинарного образования
              skip_at_result: true
              title: Нет образования
          question_to_answer_map:
            '14':
              - '27'
          questions:
            '14':
              description: null
              is_active: true
              possible_answers:
                - '27'
                - '28'
              question_id: '14'
              question_title: 'Работали раньше поваром, пекарем или кондитером?'
              question_type: single_choice
              required: true
              skip_title_at_view: true
              view_title: null
            '15':
              description: null
              is_active: true
              possible_answers:
                - '29'
                - '30'
              question_id: '15'
              question_title: У вас есть кулинарное образование?
              question_type: single_choice
              required: true
              skip_title_at_view: true
              view_title: null
        download:
          pdf:
            url: 'https://api.hh.ru/resumes/ca9fb415848/download/pdf-file.pdf?type=pdf'
          rtf:
            url: 'https://api.hh.ru/resumes/ca9fb415848/download/rtf-file.rtf?type=rtf'
        driver_license_types: []
        education:
          additional: []
          attestation: []
          elementary: []
          level:
            id: master
            name: Магистр
          primary:
            - name: testUniversity
              name_id: null
              organization: testFaculty
              organization_id: null
              result: testSpeciality
              result_id: null
              year: 1988
        employment:
          id: full
          name: Полная занятость
        employments:
          - id: full
            name: Полная занятость
        experience:
          - area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            company: Компания
            company_id: null
            company_url: 'http://url.ru'
            description: Руководил отделом
            employer: null
            end: '2012-02-06'
            industries: []
            industry:
              id: '1'
              name: Банки/кредиты/инвестиции/лизинг
            position: Директор
            start: '2011-01-02'
        finished: true
        first_name: Иван
        gender:
          id: male
          name: Мужской
        has_vehicle: null
        hidden_fields: []
        id: ca9fb415848
        language:
          - id: chv
            level:
              id: a1
              name: A1 — Начальный
            name: Чувашский
        last_name: Иванов
        metro: null
        middle_name: null
        moderation_note: []
        new_views: 0
        next_publish_at: '2023-05-25T18:19:03+0300'
        paid_services:
          - active: false
            id: resume_autoupdating
            name: Автоподнятие резюме
          - active: false
            id: resume_marked
            name: Яркое резюме
        photo: null
        platform:
          id: headhunter
        portfolio: []
        professional_roles:
          - id: '124'
            name: Тестировщик
        progress:
          mandatory: []
          percentage: 55
          recommended:
            - id: birth_date
              name: Дата рождения
            - id: portfolio
              name: Портфолио
            - id: photo
              name: Фото
            - id: driver_license_types
              name: Категория водительских прав
            - id: district
              name: Район проживания
            - id: hidden_fields
              name: Список скрытых полей
            - id: work_ticket
              name: Разрешение на работу
            - id: education
              name: Образование
            - id: has_vehicle
              name: Наличие автомобиля
            - id: salary
              name: Зарплата
            - id: skill_set
              name: Ключевые навыки
            - id: recommendation
              name: Рекомендации
            - id: middle_name
              name: Отчество
            - id: metro
              name: Ближайшая станция метро
            - id: site
              name: Дополнительные способы связи
        publish_url: 'https://api.hh.ru/resumes/ca9fb415848/publish'
        recommendation: []
        relocation:
          area: []
          district: []
          type:
            id: no_relocation
            name: не готов к переезду
        resume_locale:
          id: RU
          name: Русский
        salary:
          amount: 10000
          currency: USD
        schedule:
          id: fullDay
          name: Полный день
        schedules:
          - id: fullDay
            name: Полный день
        site: []
        skill_set: []
        skills: Руководство большой командой
        status:
          id: published
          name: опубликовано
        tags:
          - id: EXPERT_IS_WORKING
        title: API Test Resume
        total_experience:
          months: 14
        total_views: 0
        travel_time:
          id: any
          name: Не имеет значения
        updated_at: '2023-05-25T14:19:03+0300'
        views_url: 'https://api.hh.ru/resumes/ca9fb415848/views'
        work_ticket: []
    AreasCountries:
      value:
        - id: '113'
          name: Россия
          url: 'https://api.hh.ru/areas/113'
        - id: '6'
          name: Австралия
          url: 'https://api.hh.ru/areas/6'
    ResumesEditResume:
      value:
        language:
          - id: rus
            level:
              id: l1
              name: родной
            name: Русский
          - id: eng
            level:
              id: b2
              name: advanced
            name: English
    VacancyDraftVacancyDraftCreate:
      value:
        accept_handicapped: true
        accept_incomplete_resumes: false
        accept_kids: false
        accept_temporary: false
        address:
          id: '123'
          show_metro_only: true
        allow_messages: true
        areas:
          - id: '1'
          - id: '7'
        billing_type:
          id: standard
        branded_template:
          id: marketing
        code: код-1234
        contacts:
          email: i.ivanov@example.com
          name: Иванов Иван
          phones:
            - comment: с 10 до 20
              formatted: '79198883344'
        department:
          id: '1'
          name: Спецотдел
        description: Приветствуется опыт работы менеджером по продажам
        driver_license_types:
          - id: A
          - id: B
        employment:
          id: full
        experience:
          id: moreThan6
        key_skills:
          - name: Холодные продажи
          - name: Проведение промо акций
        languages:
          - id: spa
            level:
              id: b2
          - id: ita
            level:
              id: a1
        name: Менеджер по продажам
        professional_roles:
          - id: '59'
        response_letter_required: true
        response_notifications: true
        salary:
          currency: USD
          from: 100
          gross: true
          to: 500
        schedule:
          id: flyInFlyOut
        test:
          id: '42'
          required: true
        type:
          id: open
        with_zp: true
        working_days:
          - id: only_saturday_and_sunday
        working_time_intervals:
          - id: from_four_to_six_hours_in_a_day
        working_time_modes:
          - id: start_after_sixteen
    ResumesByStatus:
      value:
        already_applied: []
        counters:
          already_applied: 0
          not_published: 0
          suitable: 1
          unavailable: 0
        not_published: []
        suitable:
          - access:
              type:
                id: no_one
                name: не видно никому
            actions:
              download:
                pdf:
                  url: 'https://...?type=pdf'
                rtf:
                  url: 'https://...?type=rtf'
            age: null
            alternate_url: 'https://...'
            area:
              id: '1'
              name: Москва
              url: 'https://...'
            certificate: []
            created_at: '2023-09-26T14:08:07+0300'
            download:
              pdf:
                url: 'https://.../download/...?type=pdf'
              rtf:
                url: 'https://.../download/...?type=rtf'
            education:
              level:
                id: master
                name: Магистр
              primary:
                - name: testUniversity
                  name_id: null
                  organization: testFaculty
                  organization_id: null
                  result: testSpeciality
                  result_id: null
                  year: 1988
            experience:
              - area:
                  id: '1'
                  name: Москва
                  url: 'https://...'
                company: Компания
                company_id: null
                company_url: 'http://url.ru'
                employer: null
                end: '2012-02-06'
                industries: []
                industry:
                  id: '1'
                  name: Банки/кредиты/инвестиции/лизинг
                position: Директор
                start: '2011-01-02'
            finished: true
            first_name: Иван
            gender:
              id: male
              name: Мужской
            has_errors: false
            hidden_fields: []
            id: someid
            last_name: Иванов
            marked: false
            middle_name: null
            photo: null
            platform:
              id: headhunter
            requires_completion: false
            salary: null
            status:
              id: published
              name: опубликовано
            title: API Test Resume
            total_experience:
              months: 14
            updated_at: '2023-09-26T14:08:09+0300'
            url: 'https://...'
        unavailable: []
    AreasAreaItem:
      value:
        areas:
          - areas: []
            id: '6251'
            name: Абай
            parent_id: '40'
        id: '40'
        name: Казахстан
        parent_id: null
    DistrictsDistricts:
      value:
        - area_id: '1'
          id: '1'
          name: Хорошёво-Мнёвники
        - area_id: '88'
          id: '2'
          name: Авиастроительный
        - area_id: '96'
          id: '3'
          name: Ленинский
    NegotiationsNegotiationsStatisticsEmployer:
      value:
        employer_statistics:
          average_reply_time: 1
          politeness:
            article_url: 'https://hh.ru/article/23734'
            description: Индекс вежливости видят соискатели после отклика на вакансию. Компании с низким Индексом теряют доверие соискателей и рискуют пропустить подходящих кандидатов
            hint: 'Ваш Индекс вежливости выше среднего — это хороший показатель, и все же он может быть лучше!'
            index: 62
            index_change: 0
          received: 20
          replied_percent: 0
          viewed_percent: 23
    VacanciesVacancyProlongateUnavailable:
      value:
        actions:
          - disable_reason:
              id: standard_plus_publication_is_updated_automatically
              name: 'Вакансия "Стандарт Плюс" не может быть обновлена, это происходит автоматически раз в три дня.'
            enabled: false
            id: prolongate
        expires_at: '2015-11-19T17:10:48+0300'
        id: '123456789'
    NegotiationsMessageGet:
      value:
        found: 1
        items:
          - address: null
            assessments:
              - actions:
                  - alternate_url: 'https://hh.ru/applicant/assessment/123'
                    enabled: true
                    id: proceed
                    name: Перейти к тестированию
                id: '123'
                name: Динамический тест числовых способностей
            author:
              participant_type: employer
            created_at: '2013-10-07T18:30:57+0400'
            editable: false
            id: '123'
            state:
              id: invitation
              name: Приглашение
            text: 'Вас приглашает очень крупный иностранный банк на зарплату, о которой мечтают арабские шейхи'
            viewed_by_me: true
            viewed_by_opponent: true
          - address: null
            author:
              participant_type: applicant
            created_at: '2013-10-08T10:12:23+0400'
            editable: false
            id: '124'
            state:
              id: text
              name: Текст
            text: Верблюда и коня мне!
            viewed_by_me: true
            viewed_by_opponent: false
        page: 0
        pages: 1
        per_page: 20
    SuggestsSuggestsAreas:
      value:
        items:
          - id: '1'
            text: Москва
            url: 'https://api.hh.ru/areas/1'
          - id: '2019'
            text: Московская область
            url: 'https://api.hh.ru/areas/2019'
    VacanciesMatchList:
      value:
        found: 1
        items:
          - address:
              building: 15 к 2
              city: Кемерово
              description: null
              id: '321123'
              lat: 55.324417
              lng: 86.116411
              metro: null
              metro_stations: []
              raw: 'Кемерово, Пр.Молодежный, 15 к 2'
              street: Пр.Молодежный
            alternate_url: 'https://hh.ru/vacancy/123456'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=123456'
            archived: false
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            can_invite: true
            created_at: '2012-10-11T13:27:16+0400'
            department: null
            employer:
              alternate_url: 'https://hh.ru/employer/1455'
              id: '1455'
              logo_urls:
                '90': 'https://hh.ru/employer-logo/1455.png'
                '240': 'https://hh.ru/employer-logo/1455.png'
                original: 'https://hh.ru/file/1455.png'
              name: HeadHunter
              trusted: true
              url: 'https://api.hh.ru/employers/1455'
            employer_negotiations_state: null
            has_test: true
            id: '123456'
            manager:
              first_name: Иван
              id: '3'
              last_name: Ивановски
              middle_name: Иваныч
            name: 'Специалист по автоматизации тестирования (Java, Selenium)'
            negotiations_actions:
              - arguments:
                  - id: resume_id
                    required: true
                    required_arguments: []
                  - id: vacancy_id
                    required: true
                    required_arguments: []
                  - id: message
                    required: true
                    required_arguments: []
                  - id: send_sms
                    required: false
                    required_arguments:
                      - id: message
                  - id: address_id
                    required: false
                    required_arguments:
                      - id: message
                enabled: true
                id: invitation
                method: POST
                name: Пригласить
                resulting_employer_state:
                  id: invitation
                  name: Приглашение
                templates:
                  - id: invite
                    name: Приглашение на вакансию
                    quick: false
                    url: 'https://api.hh.ru/message_templates/invite?resume_id=0123456789abcdef&vacancy_id=123456'
                url: 'https://api.hh.ru/negotiations/invited'
            negotiations_state: null
            premium: true
            published_at: '2013-10-11T13:27:16+0400'
            relations: []
            response_letter_required: false
            salary:
              currency: RUR
              from: 100000
              to: null
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/123456'
        page: 0
        pages: 1
        per_page: 20
    SavedSearchesSavedSearchResumes:
      value:
        found: 2
        items:
          - created_at: '2015-01-01T13:12:17+0400'
            id: '609535'
            items:
              count: 55
              url: 'https://api.hh.ru/resumes?order_by=publication_time&saved_search_id=123456&text=manager&area=1'
            name: Managers in Moscow
            new_items:
              count: 15
              url: 'https://api.hh.ru/resumes?order_by=publication_time&saved_search_id=123456&text=manager&area=1&last_used=2015-11-12T18%3A06%3A04%2B0300'
            subscription: true
        page: 0
        pages: 1
        per_page: 0
    DictionariesSalaryStatisticsEmployeeLevel:
      value:
        - description: 'Прямые подчиненные отсутствуют, периодически координирует работу других сотрудников в рамках поставленной задачи'
          id: specialist
          name: специалист
    LocalesResumeLocales:
      value:
        - id: RU
          name: Русский
        - id: EN
          name: English
    VacanciesVacancyUpgradeList:
      value:
        items:
          - actions:
              - type: direct_upgrade
              - cart_id: 5967035
                type: activate
                url: 'https://hh.ru/employer/invoice/finish?cartId=5967035'
              - price:
                  amount: '10152.0'
                  currency_code: RUR
                type: buy
                url: 'https://hh.ru/employer/invoice/purchase?code=VPREM&count=1'
            vacancy_billing_type:
              description: Максимум откликов в течение недели
              id: premium
              name: Публикация «Премиум»
            without_action: null
          - actions: []
            vacancy_billing_type:
              description: Максимум откликов в течение месяца
              id: standard_plus
              name: Публикация «Стандарт плюс»
            without_action:
              - reason: Превышено количество улучшений вакансии
    Id:
      value:
        id: '754'
    NegotiationsNegotiationsStatisticsManager:
      value:
        manager_statistics:
          average_reply_time: 1
          politeness:
            article_url: 'https://hh.ru/article/23734'
            description: Индекс вежливости видят соискатели после отклика на вакансию. Компании с низким Индексом теряют доверие соискателей и рискуют пропустить подходящих кандидатов
            hint: 'У вас низкий Индекс вежливости, но вы можете его повысить!'
            index: 19
            index_change: 0
          received: 20
          replied_percent: 0
          viewed_percent: 23
    Languages:
      value:
        - id: ita
          name: Итальянский
          uid: '17'
        - id: nld
          name: Голландский
          uid: '11'
        - id: ell
          name: Греческий
          uid: '12'
    EmployersEmployersBlacklisted:
      value:
        found: 1
        items:
          - alternate_url: 'https://hh.ru/employer/40'
            id: '40'
            logo_urls:
              '90': 'https://hhcdn.ru/employer-logo/00003.jpeg'
              '240': 'https://hhcdn.ru/employer-logo/00004.jpeg'
              original: 'https://hhcdn.ru/employer-logo-original/1.jpeg'
            name: test name
            open_vacancies: 0
            url: 'https://api.hh.ru/employers/40'
            vacancies_url: 'https://api.hh.ru/vacancies?employer_id=40'
        limit_reached: false
        page: 0
        pages: 1
        per_page: 20
    MailTemplatesMailTemplateInput:
      value:
        text: 'Ваше резюме показалось нам очень интересным. Мы хотели бы пригласить Вас на интервью. Перезвоните, пожалуйста, в рабочее время по телефону [HRPhone] ([HRName]).'
    SuggestsEducationalInstitutions:
      value:
        items:
          - acronym: МГТУ им. Н.Э. Баумана
            area:
              id: '1'
              name: Москва
            id: '38921'
            synonyms: бывш. МВТУ им. Н.Э. Баумана
            text: 'Московский государственный технический университет им. Н.Э. Баумана, Москва'
    EmployerManagerInfo:
      value:
        additional_phone:
          city: '916'
          comment: личный
          country: '7'
          number: '4555555'
        area:
          id: '1'
          name: Москва
          url: 'https://api.hh.ru/areas/1'
        email: employer@example.com
        first_name: Иван
        full_name: Иванов Иван Иванович
        id: '1507922'
        is_main_contact_person: false
        last_name: Иванов
        manager_type:
          id: manager
          name: Менеджер
        middle_name: Иванович
        permissions:
          - id: can_create_vacancy
            name: Создание и продление вакансий
          - id: can_view_resume_contacts
            name: Просмотр контактов соискателей
        phone:
          city: '495'
          comment: с 9 до 17
          country: '7'
          number: '1568055'
        position: Менеджер по подбору персонала
        vacancies_count: 0
    EmployersEmployerDepartments:
      value:
        items:
          - id: 18320489-18320489-dept1
            name: DEPT#1
          - id: 18320489-18320489-dept2
            name: DEPT#2
    ArtifactsArtifactsPhoto:
      value:
        found: 1
        items:
          - id: '92278992'
            medium: 'http://...'
            small: 'http://...'
            state:
              id: ok
              name: ok
        page: 0
        pages: 1
        per_page: 1
    EmployersEmployersExample:
      value:
        found: 1
        items:
          - alternate_url: 'https://hh.ru/employer/1455'
            id: '1455'
            logo_urls:
              '90': 'https://hh.ru/employer-logo/289027.png'
              '240': 'https://hh.ru/employer-logo/289169.png'
              original: 'https://hh.ru/file/2352807.png'
            name: HeadHunter
            open_vacancies: 19
            url: 'https://api.hh.ru/employers/1455'
            vacancies_url: 'https://api.hh.ru/vacancies?employer_id=1455'
        page: 0
        pages: 1
        per_page: 20
    VacanciesDeletedVacancyList:
      value:
        found: 1
        items:
          - address: null
            alternate_url: 'https://hh.ru/vacancy/8331228'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=8331228'
            archived: true
            archived_at: '2023-04-25T18:13:13+0300'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            counters:
              invitations_and_responses: 0
              responses: 0
            created_at: '2023-04-25T18:13:11+0300'
            department:
              id: HH-1455-TECH
              name: 'HeadHunter::Технический департамент'
            employer:
              alternate_url: 'https://hh.ru/employer/1455'
              id: '1455'
              logo_urls:
                '90': 'https://hh.ru/employer-logo/289027.png'
                '240': 'https://hh.ru/employer-logo/289169.png'
                original: 'https://hh.ru/file/2352807.png'
              name: HeadHunter
              trusted: true
              url: 'https://api.hh.ru/employers/1455'
            has_test: false
            id: '8331228'
            name: Секретарь
            premium: false
            published_at: '2013-07-08T16:17:21+0400'
            relations: []
            response_letter_required: true
            salary:
              currency: RUR
              from: 30000
              gross: true
              to: null
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/8331228'
        page: 0
        pages: 1
        per_page: 20
    ResumesGetResumeVisibilityList:
      value:
        found: 1
        items:
          - alternate_url: 'https://hh.ru/employer/1455'
            id: '1455'
            logo_urls:
              '90': 'https://hh.ru/employer/logo/1455'
            name: HeadHunter
            url: 'https://api.hh.ru/employers/1455'
        limit: 2000
        page: 0
        pages: 1
        per_page: 20
    SuggestsVacancySearchKeyword:
      value:
        items:
          - text: Java
          - text: JavaScript
          - text: Java программист
    ApplicantCommentsApplicantCommentsListExample:
      value:
        found: 2
        items:
          - access_type:
              id: coworkers
              name: Виден мне и моим коллегам
            author:
              full_name: Иванов Иван Иванович
            created_at: '2015-08-27T10:19:55+0300'
            id: '123456'
            is_mine: false
            text: |-
              обратить внимание на данного кандидата
              срочно!
          - access_type:
              id: owner
              name: Виден только мне
            author:
              full_name: Иванова Мария Ивановна
            created_at: '2015-08-27T10:30:14+0300'
            id: '123654'
            is_mine: true
            text: не считаю нужным
        page: 0
        pages: 1
        per_page: 20
    MailTemplatesMailTemplates:
      value:
        - employer_state: PHONE_INTERVIEW
          id: invite_mail
          name: Приглашение на Телефонное интервью
          template_modified: false
          text: |-
            Здравствуйте, [Name]!

            Компания [Company] ищет кандидата на вакансию "[Vacancy]".
            Ваше резюме показалось нам очень интересным.
            Подробное описание вакансии Вы можете найти на сайте [SiteName]
            Зайдите под своим логином и паролем, и на странице "Отклики на вакансии" Вы найдете ссылку на описание вакансии.
            Если наше предложение Вам интересно, перезвоните, пожалуйста, в рабочее время по телефону [HRPhone] ([HRName]).

            С уважением,
            [HRName]
          type: EMAIL
          variables:
            - id: Name
              name: Имя соискателя
            - id: Vacancy
              name: Вакансия
            - id: HRName
              name: Моё имя
            - id: HRPhone
              name: Мой телефон
            - id: HREmail
              name: Моя почта
            - id: SiteName
              name: Сайт hh
            - id: Company
              name: Компания
        - employer_state: PHONE_INTERVIEW
          id: response_invite_mail
          name: Приглашение откликнувшегося соискателя на Телефонное интервью
          template_modified: false
          text: |-
            Здравствуйте, [Name]!

            Благодарим Вас за отклик на вакансию "[Vacancy]". Ваше резюме показалось нам очень интересным. Мы хотели бы пригласить Вас на интервью. Перезвоните, пожалуйста, в рабочее время по телефону [HRPhone] ([HRName]).

            С уважением,
            [HRName]
          type: EMAIL
          variables:
            - id: Name
              name: Имя соискателя
            - id: Vacancy
              name: Вакансия
            - id: HRName
              name: Моё имя
            - id: HRPhone
              name: Мой телефон
            - id: HREmail
              name: Моя почта
            - id: SiteName
              name: Сайт hh
            - id: Company
              name: Компания
        - employer_state: PHONE_INTERVIEW
          id: another_vacancy_response_invite_mail
          name: Приглашение на Телефонное интервью на другую вакансию
          template_modified: false
          text: |-
            Здравствуйте, [Name]!

            Ваше резюме показалось нам очень интересным. Мы хотели бы пригласить Вас на интервью. Перезвоните, пожалуйста, в рабочее время по телефону [HRPhone] ([HRName]).

            С уважением,
            [HRName]
          type: EMAIL
          variables:
            - id: Name
              name: Имя соискателя
            - id: Vacancy
              name: Вакансия
            - id: HRName
              name: Моё имя
            - id: HRPhone
              name: Мой телефон
            - id: HREmail
              name: Моя почта
            - id: SiteName
              name: Сайт hh
            - id: Company
              name: Компания
        - employer_state: PHONE_INTERVIEW
          id: invite_sms
          name: Приглашение на Телефонное интервью по СМС
          template_modified: false
          text: 'Вас приглашает на вакансию [Company] [HRPhone] [HRName]'
          type: SMS
          variables:
            - id: HRName
              name: Моё имя
            - id: HRPhone
              name: Мой телефон
            - id: HREmail
              name: Моя почта
            - id: Company
              name: Компания
    VacancyDraftVacancyDraftItems:
      value:
        found: 2
        items:
          - areas:
              - id: '4786'
                name: Артышта
              - id: '4787'
                name: Бачатский
              - id: '1231'
                name: Белово
            auto_publication: null
            billing_type:
              id: standard
              name: Стандарт
            completed_fields_percentage: 100
            draft_id: '1110032'
            insufficient_publications:
              - billing_type:
                  id: standard
                  name: Стандарт
                count: 2
                publication_type: standard
                vacancy_type: open
            insufficient_quotas:
              - billing_type:
                  id: standard
                  name: Стандарт
                count: 1
                publication_type: standard
                vacancy_type: open
            last_change_time: '2021-05-18T11:20:48+03:00'
            name: Заведующий отделом розничных продаж
            publication_ready: true
            publication_type: standard
            required_publications:
              - billing_type:
                  id: standard
                  name: Стандарт
                count: 3
                publication_type: standard
                vacancy_type: open
            scheduled_at: '2022-01-31T12:00:00+0300'
            url: 'https://api.hh.ru/vacancies/drafts/1110032'
            vacancy_type: open
          - areas:
              - id: '2842'
                name: Балыкчы
            auto_publication:
              bill_uid: 4011054/3
              cart_id: '5967030'
            billing_type:
              id: standard_plus
              name: Стандарт плюс
            completed_fields_percentage: 100
            draft_id: '1110031'
            insufficient_publications: null
            insufficient_quotas: null
            last_change_time: null
            name: Куратор
            publication_ready: true
            publication_type: standard_plus
            required_publications: null
            scheduled_at: null
            url: 'https://api.hh.ru/vacancies/drafts/1110031'
            vacancy_type: open
        page: 0
        pages: 1
        per_page: 20
    DictionariesSalaryStatisticsSalaryAreas:
      value:
        - areas:
            - areas:
                - areas: []
                  id: '3'
                  name: Алейск
              id: '2'
              name: Алтайский край
          id: '1'
          name: Россия
    ApplicantCommentsAddApplicantCommentExample:
      value:
        access_type:
          id: owner
          name: Виден только мне
        author:
          full_name: Иванова Мария Ивановна
        created_at: '2015-08-27T10:30:14+0300'
        id: '123654'
        is_mine: true
        text: не считаю нужным
    VacanciesVacancies:
      value:
        arguments:
          - argument: area
            cluster_group:
              id: area
              name: Регион
            disable_url: 'https://...'
            value: '1'
            value_description: Москва
          - argument: area
            cluster_group:
              id: area
              name: Регион
            disable_url: 'https://...'
            value: '2'
            value_description: Санкт-Петербург
          - argument: text
            cluster_group: null
            disable_url: 'https://...'
            value: менеджер по продажам
            value_description: null
          - argument: search_field
            cluster_group: null
            disable_url: 'https://...'
            value: name
            value_description: в названии вакансии
          - argument: experience
            cluster_group:
              id: experience
              name: Опыт работы
            disable_url: 'https://...'
            value: between3And6
            value_description: От 3 до 6 лет
          - argument: employment
            cluster_group:
              id: employment
              name: Тип занятости
            disable_url: 'https://...'
            value: full
            value_description: Полная занятость
          - argument: schedule
            cluster_group:
              id: schedule
              name: График работы
            disable_url: 'https://...'
            value: fullDay
            value_description: Полный день
          - argument: metro
            cluster_group:
              id: metro
              name: Метро
            disable_url: 'https://...'
            hex_color: 13703a
            metro_type: station
            value: '2.133'
            value_description: Сокол
          - argument: industry
            cluster_group:
              id: industry
              name: Отрасль компании
            disable_url: 'https://...'
            value: '51'
            value_description: ЖКХ
          - argument: industry
            cluster_group:
              id: sub_industry
              name: Сфера компании
            disable_url: 'https://...'
            value: '51.675'
            value_description: Энергосбережение
          - argument: label
            cluster_group:
              id: label
              name: Исключение
            disable_url: 'https://...'
            value: not_from_agency
            value_description: Без вакансий агентств
          - argument: currency
            cluster_group: null
            disable_url: 'https://...'
            value: USD
            value_description: null
          - argument: only_with_salary
            cluster_group:
              id: salary
              name: Зарплата
            disable_url: 'https://...'
            value: 'true'
            value_description: Указана зарплата
          - argument: salary
            cluster_group:
              id: salary
              name: Зарплата
            disable_url: 'https://...'
            value: '1500'
            value_description: от 1500 USD
          - argument: bottom_lat
            cluster_group: null
            disable_url: 'https://...'
            value: '55.58'
            value_description: null
          - argument: left_lng
            cluster_group: null
            disable_url: 'https://...'
            value: '37.52'
            value_description: null
          - argument: top_lat
            cluster_group: null
            disable_url: 'https://...'
            value: '55.74'
            value_description: null
          - argument: right_lng
            cluster_group: null
            disable_url: 'https://...'
            value: '37.86'
            value_description: null
          - argument: date_from
            cluster_group: null
            disable_url: 'https://...'
            value: '2017-02-01'
            value_description: null
          - argument: date_to
            cluster_group: null
            disable_url: 'https://...'
            value: '2017-02-10'
            value_description: null
          - argument: order_by
            cluster_group: null
            disable_url: 'https://...'
            value: salary_desc
            value_description: По убыванию зарплат
          - argument: sort_point_lat
            cluster_group: null
            disable_url: 'https://...'
            value: '55.74'
            value_description: null
          - argument: sort_point_lng
            cluster_group: null
            disable_url: 'https://...'
            value: '37.86'
            value_description: null
          - argument: period
            cluster_group: null
            disable_url: 'https://...'
            value: '7'
            value_description: За неделю
          - argument: employer_id
            cluster_group: null
            disable_url: 'https://...'
            value: '1455'
            value_description: HeadHunter
          - argument: search_period
            cluster_group: null
            disable_url: 'https://...'
            value: '7'
            value_description: За неделю
          - argument: no_magic
            cluster_group: null
            disable_url: 'https://...'
            value: 'true'
            value_description: null
          - argument: host
            cluster_group: null
            disable_url: 'https://...'
            value: hh.kz
            value_description: null
          - argument: per_page
            cluster_group: null
            disable_url: 'https://...'
            value: '10'
            value_description: null
          - argument: page
            cluster_group: null
            disable_url: 'https://...'
            value: '0'
            value_description: null
          - argument: professional_role
            cluster_group:
              id: professional_role
              name: Профессиональная роль
            disable_url: 'https://...'
            value: '90'
            value_description: Охранник
        clusters: null
        fixes: null
        found: 13
        items:
          - accept_incomplete_resumes: false
            address:
              building: 9с10
              city: Москва
              description: На проходной потребуется паспорт
              lat: 55.807794
              lng: 37.638699
              metro_stations:
                - lat: 55.807794
                  line_id: '6'
                  line_name: Калужско-Рижская
                  lng: 37.638699
                  station_id: '6.8'
                  station_name: Алексеевская
              street: улица Годовикова
            alternate_url: 'https://hh.ru/vacancy/8331228'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=8331228'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            brand_snippet:
              background:
                color: null
                gradient:
                  angle: 45
                  color_list:
                    - color: '#FF0000'
                      position: 10
                    - color: '#FA0000'
                      position: 9
              logo: 'https://hhcdn.ru/00001.png'
              logo_xs: 'https://hhcdn.ru/00002.png'
              picture: 'https://hhcdn.ru/00003.png'
              picture_xs: 'https://hhcdn.ru/00004.png'
            branding:
              tariff: BASIC
              type: CONSTRUCTOR
            contacts:
              email: user@example.com
              name: Имя
              phones:
                - city: '985'
                  comment: null
                  country: '7'
                  number: 000-00-00
            counters:
              responses: 0
            department:
              id: HH-1455-TECH
              name: 'HeadHunter::Технический департамент'
            employer:
              accredited_it_employer: false
              alternate_url: 'https://hh.ru/employer/1455'
              id: '1455'
              logo_urls:
                '90': 'https://hh.ru/employer-logo/289027.png'
                '240': 'https://hh.ru/employer-logo/289169.png'
                original: 'https://hh.ru/file/2352807.png'
              name: HeadHunter
              trusted: true
              url: 'https://api.hh.ru/employers/1455'
            has_test: true
            id: '8331228'
            insider_interview:
              id: '12345'
              url: 'https://hh.ru/interview/12345?employerId=777'
            name: Секретарь
            personal_data_resale: false
            professional_roles:
              - id: '90'
                name: Охранник
            published_at: '2013-07-08T16:17:21+0400'
            relations: []
            response_letter_required: true
            response_url: null
            salary:
              currency: RUR
              from: 30000
              gross: true
              to: null
            schedule:
              id: fullDay
              name: Полный день
            show_logo_in_search: true
            snippet:
              requirement: 'Высшее образование. Опыт работы в качестве <highlighttext>секретаря</highlighttext>, офис-менеджера. Знание делопроизводства, документооборота. Коммуникативные навыки.'
              responsibility: 'Документооборот (регистрация, отправка, контроль исполнения писем, ведение протоколов, отчетность). Распределение корреспонденции. Прием и распределение телефонных звонков.'
            sort_point_distance: 226.001293
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/8331228'
        page: 0
        pages: 13
        per_page: 1
        suggests: null
    ArtifactsArtifactConditions:
      value:
        counters:
          max: 20
          uploaded: 2
        fields:
          description:
            max_length: 255
            min_length: 0
            required: false
          file:
            max_size: 6291456
            mime_type:
              - image/jpeg
              - image/png
              - image/psd
            required: true
          type:
            required: true
    VacanciesVacancyStats:
      value:
        items:
          - date: '2017-01-10'
            responses: 1
            views: 36
          - date: '2017-01-11'
            responses: 4
            views: 35
          - date: '2017-01-12'
            responses: 1
            views: 32
          - date: '2017-01-13'
            responses: null
            views: null
          - date: '2017-01-14'
            responses: null
            views: null
    ResumesCreationAvailability:
      value:
        created: 2
        is_creation_available: true
        max: 20
        remaining: 18
    EmployersEmployerInfoExample:
      value:
        accredited_it_employer: true
        alternate_url: 'https://hh.ru/employer/1455'
        applicant_services:
          target_employer:
            count: 2
        area:
          id: '113'
          name: Россия
          url: 'https://api.hh.ru/areas/113'
        branded_description: <style>...</style><div>...</div><script></script>
        branding:
          makeup:
            url: /employer/makeup/webview/12
          template_code: 'makeup:123'
          template_version_id: '10'
          type: makeup
        description: Хороший работодатель
        id: '1455'
        industries:
          - id: '7.540'
            name: Разработка программного обеспечения
          - id: '9.399'
            name: Мобильная связь
        insider_interviews:
          - id: '12345'
            title: Лучшие из лучших
            url: 'https://hh.ru/interview/12345?employerId=1455'
          - id: '54321'
            title: История успеха
            url: 'https://hh.ru/interview/54321?employerId=1455'
        logo_urls:
          '90': 'https://hh.ru/employer-logo/289027.png'
          '240': 'https://hh.ru/employer-logo/289169.png'
          original: 'https://hh.ru/file/2352807.png'
        name: HeadHunter
        open_vacancies: 19
        relations: []
        site_url: 'https://hh.ru'
        trusted: true
        type: company
        vacancies_url: 'https://api.hh.ru/vacancies?employer_id=1455'
    NegotiationsNegotiationItem:
      value:
        created_at: '2013-10-05T19:51:38+0400'
        decline_allowed: true
        has_updates: true
        hidden: false
        id: '123'
        messaging_status: ok
        phone_calls:
          items:
            - creation_time: '2022-03-04T16:39:58.857853Z'
              duration_seconds: null
              id: 123
              last_change_time: null
              status: call_in_progress
            - creation_time: '2022-03-01T16:39:58.857853Z'
              duration_seconds: 120
              id: 111
              last_change_time: '2022-03-01T16:41:58.857853Z'
              status: call_ended
          picked_up_phone_by_opponent: true
        source: NEGOTIATION
        state:
          id: invitation
          name: Приглашение
        updated_at: '2013-10-07T18:30:57+0400'
        url: 'https://api.hh.ru/negotiations/123'
        viewed_by_opponent: true
    DictionariesSalaryStatisticsProfessionalAreas:
      value:
        - id: '1030000'
          name: Административная поддержка
          specializations:
            - description: 'Организация социальной работы с сотрудниками, распределение фонда материальной и социальной помощи'
              id: '1030015'
              name: Архив
    VacanciesAvailableVacancyType:
      value:
        items:
          - available_publications_count: 21
            description: Автоматически поднимается в поисковой выдаче вакансий каждые 3 дня; размещается на 30 дней. Вакансия видна только приглашенным кандидатам. Такую вакансию нельзя будет найти через поиск и увидеть неприглашенным кандидатам
            name: 'Стандарт: без обновления'
            publications:
              - areas_url: 'https://api.hh.ru/areas?price_region_id=1000224&vacancy_publication_flag=true'
                count: 10
                name: Москва и Московская область
              - areas_url: 'https://api.hh.ru/areas?vacancy_publication_flag=true'
                count: 11
                name: В любом регионе
            vacancy_billing_type:
              id: standart
            vacancy_types:
              - id: closed
              - id: open
          - available_publications_count: 0
            description: 'Первые 7 дней публикация выделена цветом, брендирована логотипом вашей компании и находится вверху поисковой выдачи; вакансия отправляется в рассылке подходящим соискателям; размещается на 30 дней'
            name: 'Премиум: неделя в топе'
            publications: []
            vacancy_billing_type:
              id: free
            vacancy_types:
              - id: open
    NegotiationsNegotiationMessageTemplates:
      value:
        mail:
          employer_state: PHONE_INTERVIEW
          template_modified: false
          text: 'Здравствуйте, Иван Иванович! Благодарим Вас за отклик на вакансию... '
    DictionariesIndustries:
      value:
        - id: '49'
          industries:
            - id: '49.408'
              name: Ритуальные услуги
          name: Услуги для населения
    ResumesMineResumes:
      value:
        found: 1
        items:
          - access:
              type:
                id: clients
                name: 'видно всем компаниям, зарегистрированным на HeadHunter'
            actions:
              download:
                pdf:
                  url: 'https://api.hh.ru/resumes/01234567890abcdef/download/ИвановИванИванович.pdf?type=pdf'
                rtf:
                  url: 'https://api.hh.ru/resumes/01234567890abcdef/download/ИвановИванИванович.rtf?type=rtf'
            age: 43
            alternate_url: 'https://hh.ru/resume/01234567890abcdef'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            auto_hide_time:
              id: month_10
              name: 10 месяцев
            blocked: false
            can_publish_or_update: false
            certificate: []
            contact:
              - comment: Mobile
                need_verification: true
                preferred: false
                type:
                  id: cell
                  name: Мобильный телефон
                value:
                  city: '926'
                  country: '7'
                  formatted: +7 (926) 222-22-22
                  number: '2222222'
                verified: false
              - preferred: true
                type:
                  id: email
                  name: Эл. почта
                value: my-email@example.com
            created: '2015-05-10T00:00:00+0300'
            created_at: '2015-05-10T00:00:00+0300'
            download:
              pdf:
                url: 'https://api.hh.ru/resumes/01234567890abcdef/download/ИвановИванИванович.pdf?type=pdf'
              rtf:
                url: 'https://api.hh.ru/resumes/01234567890abcdef/download/ИвановИванИванович.rtf?type=rtf'
            education:
              level:
                id: secondary
                name: Среднее
              primary: []
            experience:
              - area:
                  id: '1'
                  name: Москва
                  url: 'https://api.hh.ru/areas/1'
                company: Компания
                company_id: null
                company_url: 'http://url.ru'
                employer: null
                end: '2012-02-06'
                industries: []
                industry:
                  id: '1'
                  name: Банки/кредиты/инвестиции/лизинг
                position: Директор
                start: '2011-01-02'
            finished: true
            first_name: Иван
            gender:
              id: male
              name: Мужской
            hidden_fields:
              - id: names_and_photo
                name: ФИО и фотографию
              - id: phones
                name: Все указанные в резюме телефоны
              - id: email
                name: Электронную почту
              - id: other_contacts
                name: 'Прочие контакты (Skype, ICQ, соцсети)'
              - id: experience
                name: Все места работы
            id: 01234567890abcdef
            last_name: Иванов
            marked: false
            middle_name: null
            new_views: 0
            next_publish_at: '2015-05-10T04:00:00+0300'
            paid_services:
              - active: false
                id: resume_marked
                name: Яркое резюме
            photo:
              '40': 'https://hhcdn.ru...'
              '100': 'https://hhcdn.ru...'
              '500': 'https://hhcdn.ru...'
              id: '1'
              medium: 'https://hhcdn.ru...'
              small: 'https://hhcdn.ru...'
            platform:
              id: headhunter
            salary:
              amount: 100000
              currency: RUR
            similar_vacancies:
              counters:
                total: 0
              url: 'https://api.hh.ru/resumes/01234567890abcdef/similar_vacancies'
            status:
              id: published
              name: опубликовано
            tags:
              - id: EXPERT_IS_WORKING
            title: Начинающий специалист
            total_experience:
              months: 14
            total_views: 0
            updated: '2015-05-10T00:00:00+0300'
            updated_at: '2015-05-10T00:00:00+0300'
            url: 'https://api.hh.ru/resumes/01234567890abcdef'
            views_url: 'https://api.hh.ru/resumes/01234567890abcdef/views'
            visible: true
        page: 0
        pages: 1
        per_page: 1
    SavedSearchesSavedSearchesVacancies:
      value:
        found: 1
        items:
          - created_at: '2014-04-11T13:12:17+0400'
            id: '123'
            items:
              count: 304234
              url: 'https://api.hh.ru/vacancies?area=1&saved_search_id=123'
            name: Test autosearch
            new_items:
              count: 12
              url: 'https://api.hh.ru/vacancies?area=1&saved_search_id=123&date_from=2014-01-11T13%3A12%3A17%2B0400'
            subscription: true
        page: 0
        pages: 1
        per_page: 1
    VacanciesArchivedVacancyList:
      value:
        found: 1
        items:
          - address: null
            alternate_url: 'https://hh.ru/vacancy/8331228'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=8331228'
            archived: true
            archived_at: '2013-08-08T16:17:21+0400'
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            counters:
              invitations_and_responses: 5
              responses: 3
            created_at: '2012-07-08T16:17:21+0400'
            department:
              id: HH-1455-TECH
              name: 'HeadHunter::Технический департамент'
            employer:
              accredited_it_employer: false
              alternate_url: 'https://hh.ru/employer/1455'
              id: '1455'
              logo_urls:
                '90': 'https://hh.ru/employer-logo/289027.png'
                '240': 'https://hh.ru/employer-logo/289169.png'
                original: 'https://hh.ru/file/2352807.png'
              name: HeadHunter
              trusted: true
              url: 'https://api.hh.ru/employers/1455'
            has_test: false
            id: '8331228'
            name: Секретарь
            premium: false
            published_at: '2013-07-08T16:17:21+0400'
            relations: []
            response_letter_required: true
            salary:
              currency: RUR
              from: 30000
              gross: true
              to: null
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/8331228'
        page: 0
        pages: 1
        per_page: 20
    ServicesMethodAccess:
      value:
        items:
          - access:
              has_access: true
            description: 'Наличие доступа к просмотру резюме, у которого есть отклик или приглашение'
            id: '3'
          - access:
              has_access: false
            description: Наличие доступа к просмотру резюме
            id: '4'
    DictionariesSkills:
      value:
        items:
          - id: '2716'
            text: Системы тепло - и холодоснабжения
          - id: '3019'
            text: Холодный цех
    ArtifactsPortfolioDescription:
      value:
        description: Описание портфолио
    VacanciesActiveList:
      value:
        found: 1
        items:
          - address:
              building: 15 к 2
              city: Кемерово
              description: null
              id: '321123'
              lat: 55.324417
              lng: 86.116411
              metro: null
              metro_stations: []
              raw: 'Кемерово, Пр.Молодежный, 15 к 2'
              street: Пр.Молодежный
            alternate_url: 'https://hh.ru/vacancy/8331228'
            apply_alternate_url: 'https://hh.ru/applicant/vacancy_response?vacancyId=8331228'
            archived: false
            area:
              id: '1'
              name: Москва
              url: 'https://api.hh.ru/areas/1'
            billing_type:
              id: standard
              name: Стандарт
            can_upgrade_billing_type: true
            counters:
              calls: 99
              invitations: 10
              invitations_and_responses: 14
              new_missed_calls: 11
              responses: 5
              resumes_in_progress: 5
              unread_responses: 3
              views: 100500
            created_at: '2012-10-11T13:27:16+0400'
            department:
              id: HH-1455-TECH
              name: 'HeadHunter::Технический департамент'
            employer:
              accredited_it_employer: false
              alternate_url: 'https://hh.ru/employer/1455'
              id: '1455'
              logo_urls:
                '90': 'https://hh.ru/employer-logo/289027.png'
                '240': 'https://hh.ru/employer-logo/289169.png'
                original: 'https://hh.ru/file/2352807.png'
              name: HeadHunter
              trusted: true
              url: 'https://api.hh.ru/employers/1455'
            expires_at: '2013-07-08T16:17:21+0400'
            has_test: true
            has_updates: false
            id: '8331228'
            manager:
              first_name: Петр
              id: '5032'
              last_name: Иванов
              middle_name: null
            name: Секретарь
            negotiations_state: null
            premium: false
            published_at: '2013-07-08T16:17:21+0400'
            relations: []
            response_letter_required: true
            salary:
              currency: RUR
              from: 30000
              gross: true
              to: null
            type:
              id: open
              name: Открытая
            url: 'https://api.hh.ru/vacancies/8331228'
        page: 0
        pages: 1
        per_page: 20
    NegotiationsEmployerListResponse:
      value:
        collections:
          - counters:
              total: 5
              with_updates: 4
            description: Описание коллекции
            id: somecollection
            name: Название коллекции
            order_types:
              - id: last_change_time_except_employer_inbox
                name: По дате создания и активности соискателя
                url: 'https://api.hh.ru/negotiations/somecollection?vacancy_id=123456&order_by=last_change_time_except_employer_inbox'
              - id: relevance
                name: лучшие
                url: 'https://api.hh.ru/negotiations/somecollection?vacancy_id=123456&order_by=relevance'
            url: 'https://api.hh.ru/negotiations/somecollection?vacancy_id=123456'
          - counters:
              total: 1
              with_updates: 0
            description: Описание другой коллекции
            id: anothercollection
            name: Название другой коллекции
            order_types:
              - id: last_change_time_except_employer_inbox
                name: По дате создания и активности соискателя
                url: 'https://api.hh.ru/negotiations/anothercollection?vacancy_id=123456&order_by=last_change_time_except_employer_inbox'
            url: 'https://api.hh.ru/negotiations/anothercollection?vacancy_id=123456'
        employer_states:
          - id: response
            name: Отклик
          - id: invitation
            name: Приглашение
          - id: discard
            name: Отказ
          - id: discard_after_interview
            name: Отказ после интервью
        generated_collections:
          - counters:
              total: 5
              with_updates: 4
            description: Описание сгенерированной коллекции
            id: some_generated_collection
            name: Название сгенерированной коллекции
            order_types:
              - id: last_change_time_except_employer_inbox
                name: По дате создания и активности соискателя
                url: 'https://api.hh.ru/negotiations/some_generated_collection?vacancy_id=123456&order_by=last_change_time_except_employer_inbox'
              - id: relevance
                name: лучшие
                url: 'https://api.hh.ru/negotiations/some_generated_collection?vacancy_id=123456&order_by=relevance'
            url: 'https://api.hh.ru/negotiations/some_generated_collection?vacancy_id=123456'
    EmployersEmployerVacancyAreas:
      value:
        found: 1
        items:
          - id: '1'
            name: Москва
            url: 'https://api.hh.ru...'
        page: 0
        pages: 1
        per_page: 1
    AreasAreas:
      value:
        - areas:
            - areas: []
              id: '6251'
              name: Абай
              parent_id: '40'
          id: '40'
          name: Казахстан
          parent_id: null
    EmployerDictionariesTests:
      value:
        items:
          - id: '75169'
            name: Базовый тест на знание C++
          - id: '75168'
            name: Логический тест
    MetroCityMetro:
      value:
        id: '1'
        lines:
          - hex_color: '339999'
            id: '11'
            name: Каховская
            stations:
              - id: '11.46'
                lat: 55.654327
                line:
                  hex_color: 88CDCF
                  id: '11'
                  name: Каховская
                lng: 37.647705
                name: Каширская
                order: 1
        name: Москва
    NegotiationsMessageSent:
      value:
        address: null
        author:
          participant_type: applicant
        created_at: '2013-10-08T10:12:23+0400'
        editable: false
        id: '124'
        state:
          id: text
          name: Текст
        text: Текст сообщения
        viewed_by_me: true
        viewed_by_opponent: false
    EmployerManagerLimits:
      value:
        left:
          resume_view: 50
          resume_view_from_api: 48
        limits:
          resume_view: 100
          resume_view_from_api: 50
        spend:
          resume_view: 1
          resume_view_from_api: 2
  parameters:
    Host:
      description: |
        Доменное имя сайта (см. [Выбор сайта](#section/Obshaya-informaciya/Vybor-sajta))
      example: hh.ru
      in: query
      name: host
      required: false
      schema:
        default: hh.ru
        enum:
          - hh.ru
          - rabota.by
          - hh1.az
          - hh.uz
          - hh.kz
          - headhunter.ge
          - headhunter.kg
        type: string
    HHUserAgent:
      description: |
        Название приложения и контактная почта разработчика (см. [Информация о клиенте](#section/Obshaya-informaciya/Trebovaniya-k-zaprosam))
      example: MyApp/1.0 (my-app-feedback@example.com)
      in: header
      name: HH-User-Agent
      required: true
      schema:
        type: string
    Locale:
      description: |
        Идентификатор локали (см. [Локализация](#tag/Obshie-spravochniki/operation/get-locales))
      example: EN
      in: query
      name: locale
      required: false
      schema:
        default: RU
        type: string
  responses:
    ErrorBadArgument:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
      description: Ошибка в параметре запроса
    SuccessNoContent:
      description: Успешный ответ
    ErrorBothChangedConflict:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsCommonConflictBothChangedErrors'
      description: Ошибка запроса при одновременном изменении параметров
    ErrorNotFound:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
      description: Не найдено или не доступно текущему пользователю
    SuccessCreated:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Id'
      description: Успешно создано
    ErrorBadAuthorization:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      description: Ошибка авторизации пользователя
    ErrorSavedSearchNotFound:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsSavedSearchNotFoundErrors'
      description: Автопоиск или менеджер не найден
  schemas:
    ErrorsNegotiationHideResponseTooEarlyErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsNegotiationHideResponseErrors'
      title: Ошибки
    ErrorsNegotiationHideResponseErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsNegotiationHideResponseError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Oшибки при скрытии отклика
    ErrorsNegotiationHideResponseError:
      additionalProperties: false
      properties:
        type:
          description: Тип ошибки
          enum:
            - negotiations
          example: negotiations
          type: string
        value:
          description: |
            Причина ошибки:
            * `wrong_state` — действие по отклику/приглашению в данном статусе невозможно
            * `no_invitation` — переписка недоступна, так как в отклике ещё не было приглашения
            * `disabled_by_employer` — возможность переписки по отклику отключена работодателем
            * `chat_is_not_ready` — чат отклика/приглашения еще не готов
          enum:
            - wrong_state
            - no_invitation
            - disabled_by_employer
            - chat_is_not_ready
          example: wrong_state
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    ErrorsCommonErrorRequestId:
      description: В теле выдается request_id для упрощения решения проблем при обращении в поддержку hh.ru (api@hh.ru)
      properties:
        request_id:
          description: Идентификатор запроса
          example: q1ww2e2r4ty
          type: string
      required:
        - request_id
      title: Поле ошибки с request_id
      type: object
    SuggestsVacancyPositions:
      additionalProperties: false
      description: Подсказки по должностям вакансий
      properties:
        items:
          description: Информация о найденных должностях вакансий
          items:
            $ref: '#/components/schemas/SuggestsVacancyPositionItem'
          title: Массив найденных должностей вакансий
          type: array
      required:
        - items
      title: Подсказки по должностям вакансий
      type: object
    SuggestsVacancyPositionItem:
      properties:
        id:
          description: Идентификатор должности
          example: '2063'
          type: string
        professional_roles:
          description: 'Информация о профессиональных ролях, соответствующих должности'
          items:
            $ref: '#/components/schemas/SuggestsProfessionalRoleItemWithName'
          minItems: 1
          title: 'Массив профессиональных ролей, соответствующих должности'
          type: array
        text:
          description: Название должности
          example: Личный водитель
          type: string
      required:
        - id
        - text
        - professional_roles
      title: Информация о найденных должностях
      type: object
    SuggestsProfessionalRoleItemWithName:
      properties:
        accept_incomplete_resumes:
          description: 'Профессиональная роль, для которой можно принимать отклики неполным резюме'
          example: true
          type: boolean
        id:
          description: Идентификатор профессиональной роли
          example: '21'
          type: string
        name:
          description: Название профессиональной роли
          example: Водитель
          type: string
      required:
        - id
        - name
        - accept_incomplete_resumes
      title: Информация о найденных проф. ролях с именем
      type: object
    ErrorsVacancyAddEditBadAuthForbiddenErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        - $ref: '#/components/schemas/ErrorsVacancyAddEditForbiddenErrors'
      title: Ошибки
    ErrorsVacancyAddEditForbiddenErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyAddEditForbiddenError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки при публикации и редактировании вакансии
    ErrorsVacancyAddEditForbiddenError:
      additionalProperties: false
      properties:
        found:
          description: |
            Общее количество дубликатов вакансии. Возвращается только для `"value": "duplicate"`
          example: 2
          nullable: true
          type: number
        items:
          description: |
            Ограниченное количество записей с информацией о дубликатах. Не гарантирует выдачу всех дубликатов. Возвращается только для `"value": "duplicate"`
          items:
            $ref: '#/components/schemas/_IncludesNumericId'
          nullable: true
          type: array
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - vacancies
          example: vacancies
          type: string
        value:
          description: |
            Ошибки при публикации и редактировании вакансии:
              * `not_enough_purchased_services` — купленных услуг недостаточно для публикации или обновления данного типа вакансии
              * `quota_exceeded` — квота менеджера на публикацию данного типа вакансии закончилась
              * `duplicate` — аналогичная вакансия уже опубликована. В ответе передается информация по дубликатам вакансии. Данную ошибку можно форсировано отключить параметром `?ignore_duplicates=true`
              * `creation_forbidden` — публикация вакансий недоступна текущему менеджеру
              * `unavailable_for_archived` — редактирование недоступно для архивной вакансии
              * `conflict_changes` — [конфликтные изменения](https://github.com/hhru/api/blob/master/docs/employer_vacancies.md#%D1%81%D0%BC%D0%B5%D0%BD%D0%B0-%D0%B1%D0%B8%D0%BB%D0%BB%D0%B8%D0%BD%D0%B3-%D1%82%D0%B8%D0%BF%D0%B0-%D0%BC%D0%B5%D0%BD%D0%B5%D0%B4%D0%B6%D0%B5%D1%80%D0%B0-%D0%B2%D0%B0%D0%BA%D0%B0%D0%BD%D1%81%D0%B8%D0%B8) данных вакансии
          enum:
            - not_enough_purchased_services
            - quota_exceeded
            - duplicate
            - creation_forbidden
            - unavailable_for_archived
            - conflict_changes
          example: not_enough_purchased_services
          type: string
      required:
        - type
        - value
      title: Ошибка запрещено при публикации и редактировании вакансии
      type: object
    _IncludesNumericId:
      properties:
        id:
          description: Идентификатор
          type: number
      required:
        - id
      title: Числовой идентификатор
      type: object
    ErrorsCommonBadAuthorizationErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationCommonAndEmployerError'
              minItems: 1
              type: array
            oauth_error:
              description: |
                Ошибки авторизации:
                  * `token-revoked` — Токен отозван пользователем, приложению необходимо [запросить новую авторизацию](#tag/Avtorizaciya-rabotodatelya/operation/authorize)
                  * `token-expired` — Время жизни `access_token` завершилось, необходимо [получить `refresh_token`](#tag/Avtorizaciya-rabotodatelya/operation/authorize)
              enum:
                - token-revoked
                - token-expired
              example: token-revoked
              type: string
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Общие ошибки авторизации
    ErrorsCommonBadAuthorizationCommonAndEmployerError:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationError'
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationEmployerError'
        - $ref: '#/components/schemas/ErrorsCommonCaptchaError'
      title: Обычная ошибка и ошибка авторизации работодателя
    ErrorsCommonBadAuthorizationEmployerError:
      additionalProperties: false
      properties:
        allowed_accounts:
          description: |
            Список доступных для токена аккаунтов менеджера в случае, если используемый рабочий аккаунт заблокирован.
            Актуально только в случае авторизации работодателя
          items:
            $ref: '#/components/schemas/ManagerAccount'
          minItems: 1
          type: array
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - forbidden
            - oauth
            - manager_extra_accounts
            - manager_accounts
          example: oauth
          type: string
        value:
          description: |
            Общие ошибки:
              * `bad_authorization` — Токен авторизации не существует или не валидный
              * `token_expired` — Время жизни access_token завершилось, необходимо [выполнить обновление access_token](#refresh_token)
              * `token_revoked` — Токен отозван пользователем, приложению необходимо [запросить новую авторизацию](#section/Tipy-avtorizacij)
              * `application_not_found` — Ваше приложение было удалено
              * `used_manager_account_forbidden` — [Рабочий аккаунт заблокирован](https://github.com/hhru/api/blob/master/docs/errors.md#manager-accounts-blocked)
              * `manager_extra_account_not_found` — В заголовке передан некорректный id аккаунта
              * `user_auth_expected` — Передана авторизация приложения, метод требует [авторизации пользователя](#get-auth)
              * `application_auth_expected` — Передана авторизация пользователя, метод требует [авторизации приложения](#get-client-auth)
          enum:
            - bad_authorization
            - token_expired
            - token_revoked
            - application_not_found
            - manager_extra_account_not_found
            - used_manager_account_forbidden
            - user_auth_expected
            - application_auth_expected
          example: bad_authorization
          type: string
      required:
        - type
      title: Ошибка авторизации работодателя
      type: object
    ManagerAccount:
      additionalProperties: false
      description: Информация о рабочем аккаунте менеджера
      properties:
        employer:
          $ref: '#/components/schemas/ManagerAccountCompany'
        id:
          description: Идентификатор рабочего аккаунта менеджера
          example: '12345678'
          type: string
      required:
        - id
        - employer
      title: Рабочий аккаунт менеджера
      type: object
    ManagerAccountCompany:
      additionalProperties: false
      description: 'Информация о компании, к которой прикреплен рабочий аккаунт менеджера'
      properties:
        id:
          description: Идентификатор компании
          example: '1455'
          type: string
        name:
          description: Название компании
          example: HeadHunter
          type: string
      required:
        - id
        - name
      title: Компания
      type: object
    ErrorsCommonBadAuthorizationError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - forbidden
            - oauth
          example: oauth
          type: string
        value:
          description: |
            Общие ошибки:
              * `bad_authorization` — Токен авторизации не существует или не валидный
              * `token_expired` — Время жизни access_token завершилось, необходимо [выполнить обновление access_token](#section/Avtorizaciya/Obnovlenie-pary-access-i-refresh-tokenov)
              * `token_revoked` — Токен отозван пользователем, приложению необходимо [запросить новую авторизацию](#section/Tipy-avtorizacij)
              * `application_not_found` — Ваше приложение было удалено
              * `user_auth_expected` — Передана авторизация приложения, метод требует [авторизации пользователя](#get-auth)
              * `application_auth_expected` — Передана авторизация пользователя, метод требует [авторизации приложения](#get-client-auth)
              * `used_manager_account_forbidden` — [Рабочий аккаунт заблокирован](https://github.com/hhru/api/blob/master/docs/errors.md#manager-accounts-blocked)
              * `manager_extra_account_not_found` — В заголовке передан некорректный id аккаунта
              * `user_auth_expected` — Передана авторизация приложения, метод требует [авторизации пользователя](#section/Avtorizaciya/Avtorizaciya-polzovatelya)
              * `application_auth_expected` — Передана авторизация пользователя, метод требует [авторизации приложения](##section/Avtorizaciya/Avtorizaciya-prilozheniya)
          enum:
            - bad_authorization
            - token_expired
            - token_revoked
            - application_not_found
            - user_auth_expected
            - application_auth_expected
          example: bad_authorization
          type: string
      required:
        - type
      title: Общая ошибка авторизации
      type: object
    ErrorsCommonCaptchaError:
      additionalProperties: false
      properties:
        captcha_url:
          description: |
            Адрес веб-страницы, на которой можно пройти капчу. 
            После прохождения капчи аналогичный запрос в API должен выполниться успешно. 
            Приложение должно добавить в captcha_url обязательный параметр backurl,на который произойдет редирект 
             после прохождения капчи. 
            Backurl должен обязательно содержать схему, например, https:// или схему приложения
          example: 'https://hh.ru/account/captcha?state=...'
          type: string
        fallback_url:
          description: 'Адрес веб-страницы, на котором можно капчу. Аналогично параметру captcha_url'
          example: 'https://hh.ru/auth/employer?captcha=true&backurl=...'
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - captcha_required
            - employer_registration_change_email
            - employer_resume_view
          example: captcha_required
          type: string
        value:
          description: |
            Необходимо пройти капчу - `captcha_required`
          enum:
            - captcha_required
          example: captcha_required
          type: string
      required:
        - type
        - value
      title: Необходимо пройти CAPTCHA
      type: object
    VacanciesVacancyConditions:
      additionalProperties: true
      description: 'Условия заполнения полей при [публикации вакансии](#tag/Upravlenie-vakansiyami/operation/publish-vacancy)'
      properties:
        accept_handicapped:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        accept_incomplete_resumes:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        accept_kids:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        accept_temporary:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        address:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsAddressCondition'
          type: object
        allow_messages:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        area:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        billing_type:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        branded_template:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        code:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        contacts:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsContactsCondition'
          type: object
        custom_employer_name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        department:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        description:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        driver_license_types:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
        employment:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        experience:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        key_skills:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
        languages:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
        manager:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        professional_roles:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
        response_letter_required:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        response_notifications:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        response_url:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsResponseUrlCondition'
          type: object
        salary:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsSalaryCondition'
          type: object
        schedule:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        test:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsTestCondition'
          type: object
        type:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        working_days:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
        working_time_intervals:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
        working_time_modes:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
          type: object
      title: Условия заполнения полей
      type: object
    VacanciesVacancyConditionFieldsTestCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/VacanciesVacancyConditionFieldsTestFields'
          type: object
      title: Условия заполнения теста
      type: object
    VacanciesVacancyConditionFieldsTestFields:
      nullable: true
      properties:
        required:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequired'
          type: object
      title: Условия для полей
      type: object
    VacanciesVacancyConditionFieldsRequired:
      properties:
        required:
          description: Является ли поле необходимым?
          nullable: true
          type: boolean
      title: Необходимость поля
      type: object
    _IncludesNullableObject:
      description: 'Объект, значение которого null'
      enum:
        - null
      nullable: true
      title: Null-объект
      type: string
    VacanciesVacancyConditionFieldsRequiredWithTitle:
      properties:
        required:
          description: Является ли поле необходимым?
          nullable: true
          type: boolean
      title: Условия для поля
      type: object
    VacanciesVacancyConditionFieldsAddressCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/VacanciesVacancyConditionFieldsAddressFields'
          type: object
      title: Условия заполнения адреса
      type: object
    VacanciesVacancyConditionFieldsAddressFields:
      nullable: true
      properties:
        show_metro_only:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequired'
          type: object
      title: Условия для полей
      type: object
    VacanciesVacancyConditionFieldsSalaryCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/VacanciesVacancyConditionFieldsSalaryFields'
          type: object
      title: Условия заполнения зарплаты
      type: object
    VacanciesVacancyConditionFieldsSalaryFields:
      nullable: true
      properties:
        currency:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        from:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        gross:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
        to:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
          type: object
      title: Условия для полей
      type: object
    VacanciesVacancyConditionFieldsResponseUrlCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRegexp'
      title: Условия заполнения урла
      type: object
    VacanciesVacancyConditionFieldsRegexp:
      properties:
        regexp:
          description: 'Регулярное выражение, которому должно отвечать значение поля'
          nullable: true
          type: string
      title: 'Регулярное выражение, которому должно отвечать значение поля'
      type: object
    VacanciesVacancyConditionFieldsRequiredLengthWithTitle:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsMaxMinLength'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequired'
      title: Условия для поля
      type: object
    VacanciesVacancyConditionFieldsMaxMinLength:
      properties:
        max_length:
          description: Максимальная длина для текстовых полей
          nullable: true
          type: number
        min_length:
          description: Минимальная длина для текстовых полей
          nullable: true
          type: number
      title: Длина текстовых полей
      type: object
    VacanciesVacancyConditionFieldsRequiredCountWithTitle:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsMaxMinCount'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequired'
      title: Условия для поля
      type: object
    VacanciesVacancyConditionFieldsMaxMinCount:
      properties:
        max_count:
          description: 'Максимальное количество объектов для полей, в которых передается список. Если `null` — количество неограниченно'
          nullable: true
          type: number
        min_count:
          description: 'Минимальное количество объектов для полей, в которых передается список'
          nullable: true
          type: number
      title: Условия по количеству для полей
      type: object
    VacanciesVacancyConditionFieldsContactsCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/VacanciesVacancyConditionFieldsContactFields'
          type: object
      title: Условия заполнения контактов
      type: object
    VacanciesVacancyConditionFieldsContactFields:
      nullable: true
      properties:
        email:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        phones:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsPhoneCondition'
          type: object
      title: Условия для полей
      type: object
    VacanciesVacancyConditionFieldsPhoneCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/VacanciesVacancyConditionFieldsPhoneFields'
          type: object
      title: Условия заполнения телефона
      type: object
    VacanciesVacancyConditionFieldsPhoneFields:
      nullable: true
      properties:
        city:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsCityCondition'
          type: object
        comment:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
          type: object
        country:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsCountryCondition'
          type: object
        formatted:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsFormattedCondition'
          type: object
        number:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsNumberCondition'
          type: object
      title: Условия для полей
      type: object
    VacanciesVacancyConditionFieldsFormattedCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRegexp'
      title: Условия заполнения форматированного телефона
      type: object
    VacanciesVacancyConditionFieldsNumberCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRegexp'
      title: Условия заполнения номера
      type: object
    VacanciesVacancyConditionFieldsCityCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRegexp'
      title: Условия заполнения города
      type: object
    VacanciesVacancyConditionFieldsCountryCondition:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/VacanciesVacancyConditionFieldsRegexp'
      title: Условия заполнения страны
      type: object
    DictionariesCountriesResponse:
      items:
        $ref: '#/components/schemas/_IncludesArea'
      title: Список стран
      type: array
    _IncludesArea:
      properties:
        id:
          description: 'Идентификатор региона из [справочника](#tag/Obshie-spravochniki/operation/get-areas)'
          type: string
        name:
          description: Название региона
          type: string
        url:
          description: Ссылка на информацию о регионе
          type: string
      required:
        - id
        - name
        - url
      title: Регион
      type: object
    ErrorsEmployerManagerBadArgumentErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadArgumentError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки в параметрах запроса
    ErrorsEmployerManagerBadArgumentError:
      additionalProperties: false
      properties:
        reason:
          description: Описание ошибки
          example: too_long_value
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_argument
            - bad_request
            - managers
          example: bad_argument
          type: string
        value:
          description: Название поля с ошибкой
          example: resume_id
          type: string
      required:
        - type
      title: Ошибка в параметре запроса
      type: object
    VacancyCreate:
      allOf:
        - $ref: '#/components/schemas/VacancyCommonFields'
        - $ref: '#/components/schemas/VacancyCreateFields'
      description: 'Поля, передаваемые в запросе на создание вакансии'
      title: 'Поля, передаваемые в запросе на создание вакансии'
      type: object
    VacancyCommonFields:
      description: 'Поля, передаваемые в запросах на создание и редактирование вакансии'
      properties:
        accept_handicapped:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyAcceptHandicapped'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: boolean
        accept_incomplete_resumes:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyAcceptIncompleteResumes'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: boolean
        accept_kids:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyAcceptKids'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: boolean
        accept_temporary:
          $ref: '#/components/schemas/VacancyAcceptTemporary'
        address:
          $ref: '#/components/schemas/VacancyAddress'
        allow_messages:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyAllowMessages'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: boolean
        branded_template:
          $ref: '#/components/schemas/VacancyBrandedTemplate'
        code:
          $ref: '#/components/schemas/VacancyCode'
        contacts:
          $ref: '#/components/schemas/VacancyContacts'
        custom_employer_name:
          $ref: '#/components/schemas/VacancyCustomEmployerName'
        department:
          $ref: '#/components/schemas/VacancyDepartment'
        driver_license_types:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyDriverLicenseTypes'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: array
        employment:
          $ref: '#/components/schemas/VacancyEmployment'
        experience:
          $ref: '#/components/schemas/VacancyExperience'
        key_skills:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyKeySkills'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: array
        languages:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyLanguages'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: array
        professional_roles:
          $ref: '#/components/schemas/VacancyProfessionalRoles'
        response_letter_required:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyResponseLetterRequired'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: boolean
        response_notifications:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyResponseNotifications'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: boolean
        response_url:
          $ref: '#/components/schemas/VacancyResponseUrl'
        salary:
          $ref: '#/components/schemas/VacancySalary'
        schedule:
          $ref: '#/components/schemas/VacancySchedule'
        test:
          $ref: '#/components/schemas/VacancyDraftTest'
        working_days:
          $ref: '#/components/schemas/VacancyWorkingDays'
        working_time_intervals:
          $ref: '#/components/schemas/VacancyWorkingTimeIntervals'
        working_time_modes:
          $ref: '#/components/schemas/VacancyWorkingTimeModes'
      title: 'Поля, передаваемые в запросах на создание и редактирование вакансии'
      type: object
    VacancyDriverLicenseTypes:
      description: Список требуемых категорий водительских прав
      items:
        $ref: '#/components/schemas/VacancyDriverLicenceTypeItem'
      title: Категория водительских прав
      type: array
    VacancyDriverLicenceTypeItem:
      properties:
        id:
          description: 'Категория водительских прав. элемент справочника [driver_license_types](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      title: Категория водительских прав
      type: object
    VacancyAddress:
      description: Адрес
      nullable: true
      properties:
        id:
          description: 'Адрес из [списка доступных адресов работодателя](#tag/Adresa-rabotodatelya/operation/get-employer-addresses)'
          nullable: true
          type: string
        show_metro_only:
          description: Показывать только метро для указанного адреса
          nullable: true
          type: boolean
      title: Адрес
      type: object
    VacancyAcceptHandicapped:
      description: 'Указание, что вакансия доступна для соискателей с инвалидностью'
      title: Соискатель с инвалидностью
      type: boolean
    VacancyCode:
      description: Внутренний код вакансии
      nullable: true
      title: Код вакансии
      type: string
    VacancyWorkingDays:
      description: Список рабочих дней
      items:
        $ref: '#/components/schemas/VacancyWorkingDayItem'
      nullable: true
      title: Список рабочих дней
      type: array
    VacancyWorkingDayItem:
      properties:
        id:
          description: 'Рабочие дни из [справочника working_days](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      title: Рабочий день
      type: object
    VacancyAllowMessages:
      description: 'Возможность [переписки с кандидатами](https://inboxemp.hh.ru/) по данной вакансии'
      title: Разрешение сообщений
      type: boolean
    VacancySalary:
      description: Зарплата
      nullable: true
      properties:
        currency:
          description: 'Код валюты из [справочника currency](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          type: string
        from:
          description: Нижняя граница зарплаты
          nullable: true
          type: integer
        gross:
          description: Признак что границы зарплаты указаны до вычета налогов
          nullable: true
          type: boolean
        to:
          description: Верхняя граница зарплаты
          nullable: true
          type: integer
      title: Зарплата
      type: object
    VacancyDraftTest:
      description: 'Объект - [тест](#tag/Informaciya-o-rabotodatele/operation/get-tests-dictionary) для вакансии'
      nullable: true
      properties:
        id:
          description: 'Тест, который будет добавлен в вакансию'
          nullable: true
          pattern: ^\d+$
          type: string
        required:
          description: Флаг обязательности прохождения теста при отклике на вакансию
          nullable: true
          type: boolean
      title: Тест
      type: object
    VacancyWorkingTimeIntervals:
      description: Список с временными интервалами работы
      items:
        $ref: '#/components/schemas/VacancyWorkingTimeIntervalItem'
      nullable: true
      title: Интервалы работы
      type: array
    VacancyWorkingTimeIntervalItem:
      properties:
        id:
          description: 'Временной интервал работы из [справочника working_time_intervals](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      title: Временной интервал работы
      type: object
    VacancyWorkingTimeModes:
      description: Список режимов времени работы
      items:
        $ref: '#/components/schemas/VacancyWorkingTimeModeItem'
      nullable: true
      title: Режимы работы
      type: array
    VacancyWorkingTimeModeItem:
      properties:
        id:
          description: 'Режимы времени работы из [справочника working_time_modes](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      title: Режимы времени работы
      type: object
    VacancyEmployment:
      nullable: true
      properties:
        id:
          description: 'Тип занятости из [справочника employment](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          type: string
      title: Тип занятости
      type: object
    VacancyProfessionalRoles:
      description: Список профессиональных ролей
      items:
        $ref: '#/components/schemas/VacancyProfessionalRoleItem'
      title: Список профессиональных ролей
      type: array
    VacancyProfessionalRoleItem:
      properties:
        id:
          description: 'Идентификатор профессиональной роли. Элемент справочника [professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)'
          type: string
      title: Объект профессиональной роли
      type: object
    VacancyContacts:
      description: 'Контактная информация. В случае, если параметр используется, необходимо наличие атрибута phones или email'
      nullable: true
      properties:
        email:
          description: Электронная почта. Значение поля должно соответствовать формату email
          nullable: true
          type: string
        name:
          description: Имя контакта
          nullable: false
          type: string
        phones:
          description: Список телефонов для связи
          items:
            $ref: '#/components/schemas/VacancyPhoneItem'
          nullable: true
          type: array
      required:
        - name
      title: Контактная информация
      type: object
    VacancyPhoneItem:
      properties:
        city:
          description: Код города
          type: string
        comment:
          description: Комментарий (удобное время для звонка по этому номеру)
          nullable: true
          type: string
        country:
          description: Код страны
          type: string
        formatted:
          description: Телефонный номер
          type: string
        number:
          description: Телефон
          type: string
      title: Объект телефона для связи
      type: object
    VacancyAcceptTemporary:
      description: 'Указание, что вакансия доступна с временным трудоустройством'
      nullable: true
      title: Временное трудоустройство
      type: boolean
    VacancyCustomEmployerName:
      description: 'Название компании для анонимных вакансий (`type.id=anonymous`), например "крупный российский банк". Поле становится обязательным при публикации вакансии **анонимного** типа'
      nullable: true
      title: Название
      type: string
    VacancyDepartment:
      nullable: true
      properties:
        id:
          description: 'Департамент [из справочника](https://api.hh.ru/openapi/redoc#tag/Informaciya-o-rabotodatele/operation/get-employer-departments), от имени которого размещается вакансия (если данная возможность доступна для компании)'
          type: string
      title: Департамент
      type: object
    VacancyAcceptKids:
      description: 'Указание, что вакансия доступна для соискателей старше 14 лет [подробнее](https://github.com/hhru/api/blob/master/docs/employer_vacancies_accept_kids.md#accept-kids)'
      title: Соискатель старше 14 лет
      type: boolean
    VacancyResponseUrl:
      description: URL отклика для прямых вакансий (`type.id=direct`)
      nullable: true
      title: URL
      type: string
    VacancySchedule:
      nullable: true
      properties:
        id:
          description: 'График работы из [справочника schedule](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          type: string
      title: График работы
      type: object
    VacancyResponseNotifications:
      description: Уведомлять ли менеджера о новых откликах
      title: Новые отклики
      type: boolean
    VacancyBrandedTemplate:
      additionalProperties: false
      description: |
        Брендированный шаблон вакансий работодателя из [списка доступных](#tag/Informaciya-o-rabotodatele/operation/get-vacancy-branded-templates-list), либо `null`, если не используется у компании
      nullable: true
      properties:
        id:
          description: Идентификатор брендированного шаблона вакансий
          example: default
          minLength: 1
          nullable: true
          type: string
        name:
          description: Название брендированного шаблона вакансий
          example: Стандартный шаблон
          nullable: true
          type: string
      title: Брендированный шаблон
      type: object
    VacancyResponseLetterRequired:
      description: Обязательно ли заполнять сообщение при отклике на вакансию
      title: Сопроводительное письмо
      type: boolean
    VacancyAcceptIncompleteResumes:
      description: Разрешен ли отклик на вакансию неполным резюме
      title: Неполное резюме
      type: boolean
    VacancyKeySkills:
      description: 'Список ключевых навыков, не более 30'
      items:
        $ref: '#/components/schemas/VacancyKeySkillItem'
      title: Ключевые навыки
      type: array
    VacancyKeySkillItem:
      properties:
        name:
          description: Название ключевого навыка (максимальная длина - 100 символов)
          type: string
      title: Объект ключевых навыков
      type: object
    VacancyLanguages:
      description: Список языков вакансии
      items:
        $ref: '#/components/schemas/VacancyLanguage'
      title: Языки вакансии
      type: array
    VacancyLanguage:
      nullable: true
      properties:
        id:
          description: 'Идентификатор языка. Значения из справочника [/languages](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
        level:
          properties:
            id:
              description: 'Идентификатор уровня владения языком. Значения из справочника [/dictionaries поле `language_level`](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              type: string
          required:
            - id
          type: object
      required:
        - id
        - level
      title: Объект языка
      type: object
    VacancyExperience:
      nullable: true
      properties:
        id:
          description: 'Требуемый опыт работы из [справочника experience](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      title: Опыт работы
      type: object
    VacancyCreateFields:
      description: 'Поля, передаваемые в запросе на создание вакансии'
      properties:
        area:
          $ref: '#/components/schemas/VacancyArea'
        billing_type:
          $ref: '#/components/schemas/VacancyBillingType'
        description:
          $ref: '#/components/schemas/VacancyDescription'
        driver_license_types:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyDriverLicenseTypes'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: array
        manager:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyManager'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          $ref: '#/components/schemas/VacancyName'
        previous_id:
          description: |
            Если этот параметр передан, то у новой вакансии дополнительно будет создана связь с предыдущей вакансией (поле previous_id). Этот параметр не влияет на другие и не связан с ними, их всё равно необходимо передавать. 
            Должен быть равен только ID архивной вакансии. ID архивной вакансии можно получить, запросив [список архивных вакансий](#tag/Upravlenie-vakansiyami/operation/get-archived-vacancies) <a name='previous_id'></a>
          nullable: true
          title: Идентификатор предыдущей вакансии
          type: string
        type:
          $ref: '#/components/schemas/VacancyType'
      required:
        - name
        - description
        - area
        - type
        - billing_type
        - professional_roles
      title: 'Поля, передаваемые в запросе на создание вакансии'
      type: object
    VacancyName:
      description: Название
      title: Название
      type: string
    VacancyManager:
      properties:
        id:
          description: 'Контактное лицо (менеджер) по размещаемой вакансии, по умолчанию текущий пользователь. Значение из [списка менеджеров компании](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers)'
          nullable: true
          type: string
      title: Менеджер
      type: object
    VacancyBillingType:
      properties:
        id:
          description: 'Биллинговый тип [из справочника vacancy_billing_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      required:
        - id
      title: Биллинговый тип
      type: object
    VacancyDescription:
      description: 'Описание в html, не менее 200 символов'
      title: Описание
      type: string
    VacancyArea:
      properties:
        id:
          description: 'Город публикации из [справочника](#tag/Obshie-spravochniki/operation/get-areas)'
          example: '1625'
          pattern: ^\d+$
          type: string
      required:
        - id
      title: Область
      type: object
    VacancyType:
      description: Тип вакансии
      properties:
        id:
          description: 'Тип из [справочника vacancy_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      required:
        - id
      title: Тип вакансии
      type: object
    EmployersEmployerInfo:
      properties:
        accredited_it_employer:
          description: 'Флаг, показывающий, прошел ли работодатель [IT аккредитацию](https://feedback.hh.ru/knowledge-base/article/что-означает-значок-«аккредитована-как-ит-компания»)'
          type: boolean
        alternate_url:
          description: Ссылка на описание работодателя на сайте
          type: string
        applicant_services:
          $ref: '#/components/schemas/_IncludesEmployerApplicantServices'
        area:
          allOf:
            - $ref: '#/components/schemas/_IncludesArea'
            - type: object
          description: Информация о регионе работодателя
        branded_description:
          deprecated: true
          description: |
            Строка с кодом HTML (возможно наличие `<script/>` и `<style/>`), которая является альтернативой стандартному описанию работодателя. HTML адаптирован для мобильных устройств и корректно отображается без поддержки Javascript. 

            При этом:

            - Контент тянется по ширине на 100% ширины контейнера и умещается без прокрутки в 300px.
            - Контент рассчитан на то, что он будет вставлен в обвязку, в которую входит название, логотип, сайт и ссылка на вакансии работодателя.
            - Изображения, которые могут встретиться в таком описании, адаптированы под retina-дисплеи.
            - Размер шрифта не меньше 12px, размер межстрочного интервала не меньше 16px.

            Значение может быть `null`, если у работодателя отсутствует индивидуальное описание
          nullable: true
          type: string
        branding:
          description: 'Значение может быть `null`, если у работодателя отсутствует брендирование страницы'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/EmployersBrandingEmployerBranding'
          type: object
        description:
          description: Описание работодателя в виде строки с кодом HTML (без `<script/>` и `<style/>`)
          nullable: true
          type: string
        id:
          description: Идентификатор работодателя
          type: string
        industries:
          description: 'Список отраслей работодателя. Элементы [справочника индустрий](https://api.hh.ru/openapi/redoc#tag/Obshie-spravochniki/operation/get-industries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        insider_interviews:
          description: Список интервью
          items:
            $ref: '#/components/schemas/EmployersInsiderInterviews'
          minItems: 0
          type: array
        logo_urls:
          description: 'Ссылки на изображения логотипов работодателя разных размеров. `original` — это необработанный логотип, который может быть большого размера. Если изначально загруженный компанией логотип меньше, чем 240px и/или 90px по меньшей стороне, то в соответствующих ключах будут ссылки на изображения оригинального размера. Объект может быть `null`, если компания не загрузила логотип. Клиент должен предусмотреть возможность отсутствия логотипа по указанной ссылке (ответ с кодом `404 Not Found`). Если информация о работодателе используется для описания вакансии, у которой есть брендированный логотип, все ссылки ведут на него. Логотипы 90 и 240 присутствуют не во всех компаниях'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesLogoUrls'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          description: Название работодателя
          type: string
        open_vacancies:
          description: Количество открытых вакансий у работодателя
          nullable: true
          type: number
        relations:
          description: 'Если работодатель добавлен в черный список, то вернется `[''blacklisted'']`, иначе `[]`'
          items:
            enum:
              - blacklisted
              - null
            nullable: true
            type: string
          type: array
        site_url:
          description: Адрес сайта работодателя
          type: string
        trusted:
          description: 'Флаг, показывающий, прошел ли работодатель [проверку на сайте](https://feedback.hh.ru/article/details/id/5951)'
          type: boolean
        type:
          description: 'Тип работодателя (прямой работодатель, кадровое агентство и т.п.). Возможные значения описаны в [справочнике](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `employer_type`. Возвращает `null`, если тип работодателя скрыт'
          nullable: true
          type: string
        vacancies_url:
          description: URL для получения поисковой выдачи с вакансиями данного работодателя
          type: string
      required:
        - name
        - id
        - site_url
        - vacancies_url
        - trusted
        - alternate_url
        - insider_interviews
        - area
        - relations
        - industries
      title: Работодатель
      type: object
    EmployersBrandingEmployerBranding:
      allOf:
        - properties:
            type:
              description: |
                Тип брендирования
                  * constructor - Брендирование типом конструктор       
                  * makeup      - Брендирование типом makeup (хамелеон)
              enum:
                - makeup
                - constructor
              type: string
          type: object
        - oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/EmployersBrandingConstructor'
            - $ref: '#/components/schemas/EmployersBrandingMakeup'
      description: Дополнительные параметры брендирования
      title: Параметры брендирования
      type: object
    EmployersBrandingMakeup:
      properties:
        makeup:
          properties:
            url:
              description: Ссылка на webview версию бренд страницы
              type: string
          required:
            - url
          type: object
        template_code:
          description: 'Уникальный код активного бренд шаблона страницы в формате "makeup:\d+"'
          example: 'makeup:123'
          type: string
        template_version_id:
          description: Идентификатор активной версии бренд шаблона страницы
          type: string
      required:
        - type
        - template_code
        - template_version_id
        - makeup
      title: Полностью кастомный вид бренд страниц
      type: object
    EmployersBrandingConstructor:
      properties:
        constructor:
          properties:
            header_picture:
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/EmployersBrandingConstructorHeaderPicture'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
            url:
              description: Ссылка на webview версию бренд страницы
              type: string
            widgets:
              description: Список виджетов на странице
              items:
                oneOf:
                  - $ref: '#/components/schemas/EmployersBrandingConstructorGalleryWidget'
              type: array
          required:
            - url
            - header_picture
            - widgets
          type: object
      required:
        - type
        - constructor
      title: Бренд страница сделанная с помощью конструктора бренд страниц
      type: object
    EmployersBrandingConstructorGalleryWidget:
      description: Виджет галереи
      properties:
        items:
          description: Список изображений в галерее
          items:
            properties:
              picture_id:
                description: Идентификатор изображения
                type: number
              resized_path:
                description: Путь к изображению на cdn хранилище
                type: string
            required:
              - picture_id
              - resized_path
            type: object
          type: array
        type:
          description: Для галереи это значение равно 'gallery'
          enum:
            - gallery
          type: string
      required:
        - type
        - items
      title: Виджет галереи
      type: object
    EmployersBrandingConstructorHeaderPicture:
      description: Изображение из шапки бренд страницы
      properties:
        resized_path:
          description: Путь к изображению на cdn хранилище
          type: string
      required:
        - resized_path
      title: Изображение из шапки бренд страницы
      type: object
    _IncludesIdName:
      allOf:
        - $ref: '#/components/schemas/_IncludesId'
        - properties:
            name:
              description: Название
              type: string
          required:
            - name
          type: object
      title: Объект с идентификатором и названием
      type: object
    _IncludesId:
      properties:
        id:
          description: Идентификатор
          type: string
      required:
        - id
      title: Объект с идентификатором
      type: object
    _IncludesEmployerApplicantServices:
      description: 'Информация о подключенных услугах соискателя, относящихся к данному работодателю'
      properties:
        target_employer:
          description: Услуга \"Хочу тут работать\"
          properties:
            count:
              description: 'Количество резюме текущего соискателя, к которым подключена услуга \"Хочу тут работать\"'
              type: number
          type: object
      title: Услуги соискателя
      type: object
    EmployersInsiderInterviews:
      properties:
        id:
          description: Идентификатор интервью
          type: string
        title:
          description: Заголовок интервью
          type: string
        url:
          description: 'Адрес страницы, содержащей интервью'
          type: string
      required:
        - url
        - id
        - title
      title: Интервью
      type: object
    _IncludesLogoUrls:
      properties:
        '90':
          description: URL логотипа с размером менее 90px по меньшей стороне
          type: string
        '240':
          description: URL логотипа с размером менее 240px по меньшей стороне
          type: string
        original:
          description: URL необработанного логотипа
          type: string
      required:
        - original
      title: Ссылка на логотип
      type: object
    SuggestsErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            bad_argument:
              deprecated: true
              enum:
                - locale
                - text
                - area_id
              type: string
            bad_arguments:
              deprecated: true
              items:
                properties:
                  description:
                    type: string
                  name:
                    description: |
                      Поле, в котором допущена ошибка. 
                      Возможные значения:
                      * `locale` — указан неподдерживаемый язык
                      * `text` — искомый текст должен быть длиной от 2 до 30000 символов
                      * `area_id` - указан не валидный идентификатор
                    enum:
                      - locale
                      - text
                      - area_id
                    type: string
                type: object
              type: array
            description:
              deprecated: true
              type: string
            errors:
              items:
                properties:
                  type:
                    enum:
                      - bad_argument
                    type: string
                  value:
                    description: |
                      Поле, в котором допущена ошибка. 
                      Возможные значения:
                      * `locale` — указан неподдерживаемый язык
                      * `text` — искомый текст должен быть длиной от 2 до 30000 символов
                      * `area_id` - указан не валидный идентификатор
                    enum:
                      - locale
                      - text
                      - area_id
                    type: string
                type: object
              type: array
          required:
            - errors
          type: object
      title: Ошибка
    ResumesResumeViewHistoryResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/ResumesResumeViewHistory'
          type: object
      title: История просмотра резюме
      type: object
    _IncludesPagination:
      properties:
        found:
          description: Найдено результатов
          example: 6
          type: number
        page:
          description: Номер страницы
          example: 1
          type: number
        pages:
          description: Всего страниц
          example: 2
          type: number
        per_page:
          description: Результатов на странице
          example: 5
          type: number
      required:
        - found
        - page
        - pages
        - per_page
      title: Пагинация
      type: object
    ResumesResumeViewHistory:
      properties:
        items:
          description: Список просмотров резюме
          items:
            $ref: '#/components/schemas/ResumesResumeViewHistoryItem'
          type: array
        resume:
          allOf:
            - $ref: '#/components/schemas/ResumeResumeNano'
            - $ref: '#/components/schemas/_IncludesUrl'
          description: Короткое представление резюме
          type: object
      required:
        - items
        - resume
      title: История просмотров резюме
      type: object
    ResumesResumeViewHistoryItem:
      properties:
        created_at:
          description: Дата создания записи (дата просмотра резюме работодателем)
          type: string
        employer:
          anyOf:
            - $ref: '#/components/schemas/EmployersEmployerItemShort'
            - $ref: '#/components/schemas/_IncludesName'
          description: |
            Информация о компании.

            Если резюме просмотрено анонимным работодателем, либо из откликов к анонимной вакансии, объект будет содержать только поле `name`
          type: object
        viewed:
          description: Отметка о просмотре записи
          type: boolean
      required:
        - created_at
        - viewed
        - employer
      title: Информация о просмотре резюме
      type: object
    _IncludesName:
      properties:
        name:
          description: Название
          type: string
      required:
        - name
      title: Название
      type: object
    EmployersEmployerItemShort:
      properties:
        alternate_url:
          description: Ссылка на описание работодателя на сайте
          type: string
        id:
          description: Идентификатор работодателя
          type: string
        logo_urls:
          description: 'Ссылки на изображения логотипов работодателя разных размеров. `original` — это необработанный логотип, который может быть большого размера. Если изначально загруженный компанией логотип меньше, чем 240px и/или 90px по меньшей стороне, то в соответствующих ключах будут ссылки на изображения оригинального размера. Объект может быть `null`, если компания не загрузила логотип. Клиент должен предусмотреть возможность отсутствия логотипа по указанной ссылке (ответ с кодом `404 Not Found`). Логотипы 90 и 240 присутствуют не во всех компаниях'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesLogoUrls'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          description: Название работодателя
          type: string
        url:
          description: URL для получения полного описания работодателя
          type: string
        vacancies_url:
          description: URL для получения поисковой выдачи с вакансиями данного работодателя
          type: string
      required:
        - id
        - name
        - url
        - alternate_url
        - vacancies_url
      title: Работодатель
    ResumeResumeNano:
      properties:
        alternate_url:
          description: URL резюме на сайте
          type: string
        id:
          description: Идентификатор резюме
          type: string
        title:
          description: Желаемая должность
          nullable: true
          type: string
      required:
        - id
        - title
        - alternate_url
      title: Сокращенное представление резюме
      type: object
    _IncludesUrl:
      properties:
        url:
          description: Ссылка на получение элементов
          type: string
      required:
        - url
      title: URL
      type: object
    EmployerManagersEmployerManagerId:
      properties:
        id:
          description: Идентификатор менеджера
          type: string
      required:
        - id
      title: Идентификатор менеджера
    SuggestsFieldsOfStudy:
      additionalProperties: false
      description: Подсказки по специализациям
      properties:
        items:
          description: Информация о найденных специализациях
          items:
            $ref: '#/components/schemas/SuggestsFieldsOfStudyItem'
          title: Массив специализаций
          type: array
      required:
        - items
      title: Подсказки по специализациям
      type: object
    SuggestsFieldsOfStudyItem:
      properties:
        id:
          description: Идентификатор специализации
          type: string
        text:
          description: Название специализации
          type: string
      required:
        - id
        - text
      title: Информация о найденных специализациях
      type: object
    ErrorsCommonBadAuthorizationCommonAndPaymentMethodError:
      oneOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationPaymentMethodErrors'
      title: Ошибка авторизации или ошибка доступа к платному методу
    ErrorsCommonBadAuthorizationPaymentMethodErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationPaymentMethodError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки при использовании платного метода
    ErrorsCommonBadAuthorizationPaymentMethodError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - api_access_payment
          example: api_access_payment
          type: string
        value:
          description: |
            Описание ошибки.

            Причина ошибки в том, что вы запрашиваете один из [платных методов](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access) без купленного доступа
          enum:
            - action_must_be_payed
          example: action_must_be_payed
          type: string
      required:
        - type
        - value
      title: Ошибка при использовании платного метода
      type: object
    ResumesPostResumeVisibilityListBody:
      properties:
        items:
          description: Список передаваемых идентификаторов работодателей
          items:
            $ref: '#/components/schemas/_IncludesId'
          type: array
      title: Тело запроса для добавления работодателя в список видимости
    ResumesResumeConditions:
      additionalProperties: true
      description: |
        Условия заполнения полей резюме.

        Поле, представленное объектом с полями (`fields`), само по себе может не являться необходимым, но если заполнено хотя бы одно поле объекта, необходимо заполнить и другие его поля. Пример — желаемая зарплата (`salary`) может быть не указана, но если указана сумма, то необходимо указать и валюту
      properties:
        access:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsAccessCondition'
          type: object
        area:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        auto_hide_time:
          description: Поле доступно для просмотра и редактирования только для пользователей rabota.by
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        birth_date:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredDateWithTitle'
          type: object
        business_trip_readiness:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        citizenship:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        contact:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsContactCondition'
          type: object
        district:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        driver_license_types:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        education:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsEducationCondition'
          type: object
        employment:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        employments:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        experience:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsExperienceCondition'
          type: object
        first_name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthTitleRegexp'
          type: object
        gender:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        has_vehicle:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        hidden_fields:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        language:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsLanguageCondition'
          type: object
        last_name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthTitleRegexp'
          type: object
        metro:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        middle_name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthTitleRegexp'
          type: object
        photo:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        portfolio:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        professional_roles:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        recommendation:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRecommendationCondition'
          type: object
        relocation:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRelocationCondition'
          type: object
        resume_locale:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        salary:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsSalaryCondition'
          type: object
        schedule:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        schedules:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        site:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsSiteCondition'
          type: object
        skill_set:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountAndLengthTitle'
          type: object
        skills:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        specialization:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        title:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthTitleNotInt'
          type: object
        travel_time:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        work_ticket:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
      title: Условия заполнения полей резюме
      type: object
    ResumesResumeConditionFieldsContactCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsContactFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRequiredCountWithTitle:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsMaxMinCount'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequired'
      title: Условия для поля
      type: object
    ResumesResumeConditionFieldsRequired:
      properties:
        required:
          description: Является ли поле необходимым? Для строковых значений поле не должно быть `null` или `""`
          nullable: true
          type: boolean
      title: Необходимость поля резюме
      type: object
    ResumesResumeConditionFieldsMaxMinCount:
      properties:
        max_count:
          description: 'Максимальное количество объектов для полей, в которых передается список. Если `null` — количество неограниченно'
          nullable: true
          type: number
        min_count:
          description: 'Минимальное количество объектов для полей,, где необходимо передавать список. Если `null` — нижняя граница не определена'
          nullable: true
          type: number
      title: Условия по количеству полей
      type: object
    ResumesResumeConditionFieldsContactFields:
      nullable: true
      properties:
        comment:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        preferred:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        type:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        value:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRequiredWithTitle:
      allOf:
        - title: Условия для поля
          type: object
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequired'
      title: Условия для поля
    ResumesResumeConditionFieldsRequiredLengthWithTitle:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsMaxMinLength'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequired'
      title: Условия для поля
      type: object
    ResumesResumeConditionFieldsMaxMinLength:
      properties:
        max_length:
          description: "Максимальная длина для текстовых полей. Рассчитывается для текста без символов переноса строки (`\r\n`). `null` — если количество не ограничено"
          nullable: true
          type: number
        min_length:
          description: "Минимальная длина для текстовых полей. Рассчитывается для текста без символов переноса строки (`\r\n`). `null` — если количество не ограничено"
          nullable: true
          type: number
      title: Условия по длине текстовых полей
      type: object
    ResumesResumeConditionFieldsRequiredDateWithTitle:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsMaxMinDate'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequired'
      title: Условия для поля
      type: object
    ResumesResumeConditionFieldsMaxMinDate:
      properties:
        max_date:
          description: 'Верхняя граница диапазона значений дат, включительно. Если `null` — верхняя граница даты не определена'
          nullable: true
          type: string
        min_date:
          description: 'Нижняя граница диапазона значений дат, включительно. Если `null` — нижняя граница даты не определена'
          nullable: true
          type: string
      title: Условия по диапазону дат
      type: object
    ResumesResumeConditionFieldsSalaryCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsSalaryFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsSalaryFields:
      nullable: true
      properties:
        amount:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredValueWithTitle'
          type: object
        currency:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRequiredValueWithTitle:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsMaxMinValue'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequired'
      title: Условия для поля
      type: object
    ResumesResumeConditionFieldsMaxMinValue:
      properties:
        max_value:
          description: 'Верхняя граница диапазона числовых значений, включительно. `null` — если верхняя граница не определена'
          nullable: true
          type: number
        min_value:
          description: 'Нижняя граница диапазона числовых значений, включительно. `null` — если нижняя граница не определена'
          nullable: true
          type: number
      title: Условия по границам числовых значений
      type: object
    ResumesResumeConditionFieldsRequiredCountAndLengthTitle:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsEducationCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsEducationFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsEducationFields:
      nullable: true
      properties:
        additional:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsEducationPrimaryCondition'
          type: object
        attestation:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsEducationPrimaryCondition'
          type: object
        elementary:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsEducationElementaryCondition'
          type: object
        level:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        primary:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsEducationPrimaryCondition'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsEducationPrimaryCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsPrimaryEducationFields'
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsPrimaryEducationFields:
      nullable: true
      properties:
        name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        organization:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        result:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        year:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredValueWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsEducationElementaryCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsElementaryEducationFields'
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsElementaryEducationFields:
      nullable: true
      properties:
        name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        year:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredValueWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRecommendationCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsRecommendationFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRecommendationFields:
      nullable: true
      properties:
        name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        organization:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        position:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRequiredLengthTitleNotInt:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsNotIn'
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsNotIn:
      properties:
        not_in:
          description: Список недопустимых значений
          items:
            type: string
          nullable: true
          type: array
      title: Недопустимые значения
      type: object
    ResumesResumeConditionFieldsRelocationCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsRelocationFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRelocationFields:
      nullable: true
      properties:
        area:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        district:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        type:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsSiteCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsSiteFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsSiteFields:
      nullable: true
      properties:
        type:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        url:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsAccessCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsAccessFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsAccessFields:
      nullable: true
      properties:
        type:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsLanguageCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsLanguageFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsLanguageFields:
      nullable: true
      properties:
        id:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        level:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsExperienceCondition:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
        - properties:
            fields:
              $ref: '#/components/schemas/ResumesResumeConditionFieldsExperienceFields'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsExperienceFields:
      nullable: true
      properties:
        area:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        company:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        company_url:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        description:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        end:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredDateWithTitle'
          type: object
        industries:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredCountWithTitle'
          type: object
        industry:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredWithTitle'
          type: object
        position:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
          type: object
        start:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredDateWithTitle'
          type: object
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRequiredLengthTitleRegexp:
      allOf:
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRequiredLengthWithTitle'
        - $ref: '#/components/schemas/ResumesResumeConditionFieldsRegexp'
      title: Условия для полей
      type: object
    ResumesResumeConditionFieldsRegexp:
      properties:
        regexp:
          description: 'Регулярное выражение, которому должно отвечать значение поля'
          nullable: true
          type: string
      title: Регулярные выражения для поля
      type: object
    VacancyDuplicates:
      additionalProperties: false
      properties:
        found:
          description: Общее количество дубликатов вакансии
          type: number
        has_duplicates:
          description: Существуют ли дубликаты вакансии
          type: boolean
        items:
          description: Список идентификаторов дубликатов вакансии
          items:
            type: number
          type: array
      required:
        - has_duplicates
        - found
        - items
      title: Проверка наличия дубликатов вакансии
      type: object
    ResumeShouldSendSmsContainer:
      properties:
        phone:
          $ref: '#/components/schemas/ResumeShouldSendSmsPhone'
          description: Информация о телефоне
      required:
        - phone
      title: Информация о телефоне
      type: object
    ResumeShouldSendSmsPhone:
      description: Информация о телефоне соискателя
      properties:
        city:
          description: Префикс города номера телефона
          example: '929'
          type: string
        country:
          description: Префикс страны номера телефона
          example: '7'
          type: string
        formatted:
          description: Номер телефона отформатированный
          example: +7 (929) 667-21-67
          type: string
        need_verification:
          description: Нужно ли верифицировать номер телефона
          example: false
          type: boolean
        number:
          description: Номер телефона без префиксов
          example: '6672167'
          type: string
        restricted_country:
          description: Находится ли номер телефона в черном списке по отправке смс
          example: false
          type: boolean
        verified:
          description: Верифицирован ли номер телефона пользователем
          example: true
          type: boolean
      required:
        - country
        - city
        - number
        - formatted
        - verified
        - need_verification
        - restricted_country
      title: Информация о телефоне соискателя
      type: object
    NegotiationsNegotiationTestResultsResponse:
      properties:
        test_result:
          description: Пройденные тесты кандидата
          properties:
            duration:
              description: 'Время, затраченное на выполнение теста, в секундах'
              type: number
            mark:
              description: |
                Дифференцированная оценка за тест:
                * `UNFAIR` — от 0 до 14 баллов;
                * `FAIR` — от 15 до 44 баллов;
                * `GOOD` — от 45 до 79 баллов;
                * `EXCELLENT` — от 80 до 100 баллов
              enum:
                - UNFAIR
                - FAIR
                - GOOD
                - EXCELLENT
              type: string
            name:
              description: Наименование теста
              type: string
            score:
              description: Результат прохождения теста в баллах (от 0 до 100)
              type: number
            tasks:
              items:
                $ref: '#/components/schemas/SkillVerificationsTestResultTasks'
              type: array
          required:
            - name
            - score
            - mark
            - duration
            - tasks
          type: object
      required:
        - test_result
      title: Информация о пройденных тестах
      type: object
    SkillVerificationsTestResultTasks:
      properties:
        closed_answers:
          description: Варианты ответов на закрытые вопросы
          items:
            properties:
              correct:
                description: Является ли вариант ответа правильным
                type: boolean
              selected:
                description: Выбран ли вариант ответа
                type: boolean
              value:
                description: Вариант ответа на вопрос
                type: string
            type: object
          type: array
        opened_answer:
          description: Вариант ответа на открытый вопрос
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/SkillVerificationsOpenedAnswer'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        question:
          description: Текст вопроса
          type: string
      required:
        - question
        - closed_answers
      title: Вопросы теста
      type: object
    SkillVerificationsOpenedAnswer:
      properties:
        mark:
          description: |
            Дифференцированная оценка за ответ от работодателя:
            * `UNFAIR` — 0 баллов;
            * `FAIR` — 30 баллов;
            * `GOOD` — 60 баллов;
            * `EXCELLENT` — 100 баллов
          enum:
            - UNFAIR
            - FAIR
            - GOOD
            - EXCELLENT
          type: string
        value:
          description: Ответ на вопрос
          type: string
      required:
        - value
        - mark
      title: Ответ на открытый вопрос
      type: object
    MeProfile:
      description: Информация о текущем авторизованном пользователе
      discriminator:
        mapping:
          applicant: '#/components/schemas/MeApplicantProfile'
          application: '#/components/schemas/MeAnyProfile'
          employer: '#/components/schemas/MeManagerProfile'
          employer_integration: '#/components/schemas/MeEmployerProfile'
        propertyName: auth_type
      oneOf:
        - $ref: '#/components/schemas/MeAnyProfile'
        - $ref: '#/components/schemas/MeApplicantProfile'
        - $ref: '#/components/schemas/MeManagerProfile'
        - $ref: '#/components/schemas/MeEmployerProfile'
      title: Информация о текущем авторизованном пользователе
    MeApplicantProfile:
      allOf:
        - $ref: '#/components/schemas/MeAnyUserProfile'
        - additionalProperties: true
          properties:
            counters:
              $ref: '#/components/schemas/MeApplicantProfileCounters'
            employer:
              deprecated: true
              nullable: true
              type: object
            is_in_search:
              description: Имеет ли текущий пользователь статус "ищу работу"
              example: false
              type: boolean
            manager:
              deprecated: true
              nullable: true
              type: object
            negotiations_url:
              description: |
                URL, на который нужно сделать GET-запрос, чтобы получить список откликов/приглашений текущего пользователя
              format: uri
              type: string
            personal_manager:
              deprecated: true
              nullable: true
              type: object
            profile_videos:
              $ref: '#/components/schemas/ProfileVideosList'
            resumes_url:
              description: |
                URL, на который нужно сделать GET-запрос, чтобы получить список резюме текущего пользователя
              example: 'https://api.hh.ru/resumes/mine'
              format: uri
              type: string
            user_statuses:
              $ref: '#/components/schemas/UserStatusesApplicant'
          required:
            - counters
            - resumes_url
            - negotiations_url
            - is_in_search
          type: object
      description: 'Профиль текущего пользователя, авторизованного как соискатель'
      title: Профиль соискателя
    ProfileVideosList:
      description: Список видео профиля для текущего или запрашиваемого соискателя
      example:
        $ref: '#/components/examples/ProfileVideosProfileVideosList/value'
      properties:
        items:
          items:
            properties:
              download_url:
                properties:
                  expires_at:
                    description: 'Дата и время, до которых действительна ссылка'
                    type: string
                  url:
                    description: Ссылка на скачивание видео
                    type: string
                required:
                  - url
                  - expires_at
                type: object
              id:
                description: Идентификатор видео
                type: string
            required:
              - id
              - download_url
            type: object
          type: array
      required:
        - items
      title: Список видео профиля
      type: object
    UserStatusesApplicant:
      properties:
        job_search_status:
          $ref: '#/components/schemas/UserStatusesJobSearchStatus'
      title: Статус поиска работы соискателя
      type: object
    UserStatusesJobSearchStatus:
      properties:
        id:
          description: Идентификатор статуса
          example: active_search
          type: string
        last_change_time:
          description: 'Время, когда статус в последний раз менялся'
          example: 2024-02-08T10:48:44.267Z
          type: string
        name:
          description: Название статуса
          example: В активном поиске работы
          type: string
      required:
        - id
        - name
        - last_change_time
      title: Статус поиска работы соискателем
      type: object
    MeAnyUserProfile:
      allOf:
        - $ref: '#/components/schemas/MeAnyProfile'
        - additionalProperties: true
          properties:
            email:
              description: Email текущего пользователя
              example: ivanov@example.com
              format: email
              nullable: true
              type: string
            first_name:
              description: Имя текущего пользователя
              example: Александр
              type: string
            id:
              description: Идентификатор текущего пользователя
              example: '12345678'
              type: string
            is_anonymous:
              deprecated: true
              type: boolean
            last_name:
              description: Фамилия текущего пользователя
              example: Иванов
              type: string
            mid_name:
              deprecated: true
              example: Николаевич
              nullable: true
              type: string
            middle_name:
              description: Отчество текущего пользователя
              example: Петрович
              nullable: true
              type: string
            phone:
              description: Телефон текущего пользователя
              example: '79164555555'
              format: phone
              nullable: true
              type: string
          required:
            - id
            - first_name
            - last_name
          type: object
      description: 'Базовый профиль текущего пользователя, авторизованного как соискатель или работодатель'
      title: Базовый профиль
    MeAnyProfile:
      allOf:
        - $ref: '#/components/schemas/MeCommonProfile'
        - properties: {}
          type: object
      description: |
        Содержит флаги, актуальные для любого типа авторизации: соискатель, работодатель, приложение
      title: Флаги профиля
      type: object
    MeCommonProfile:
      description: |
        Содержит флаги, актуальные для любого типа авторизации: соискатель, работодатель, приложение
      discriminator:
        mapping:
          applicant: '#/components/schemas/MeApplicantProfile'
          application: '#/components/schemas/MeAnyProfile'
          employer: '#/components/schemas/MeManagerProfile'
          employer_integration: '#/components/schemas/MeEmployerProfile'
        propertyName: auth_type
      properties:
        auth_type:
          description: Тип авторизации
          example: applicant
          nullable: true
          type: string
        is_admin:
          description: Является ли текущий пользователь администратором сайта
          example: false
          type: boolean
        is_applicant:
          description: Является ли текущий пользователь соискателем
          example: false
          type: boolean
        is_application:
          description: Является ли авторизованный клиент приложением
          example: false
          type: boolean
        is_employer:
          description: Является ли текущий пользователь менеджером
          example: false
          type: boolean
        is_employer_integration:
          description: Является ли текущий пользователь работодателем
          example: false
          type: boolean
      required:
        - is_application
        - is_applicant
        - is_employer
        - is_admin
        - is_employer_integration
        - auth_type
      title: Флаги профиля
      type: object
    MeEmployerProfile:
      allOf:
        - $ref: '#/components/schemas/MeCommonProfile'
        - additionalProperties: true
          properties:
            employer:
              $ref: '#/components/schemas/MeEmployerProfileCompany'
            personal_manager:
              $ref: '#/components/schemas/MeEmployerProfilePersonalManager'
          type: object
      description: 'Профиль текущего пользователя, авторизованного как работодатель'
      title: Профиль работодателя
    MeEmployerProfilePersonalManager:
      description: Информация о персональном менеджере для работодателя
      properties:
        email:
          description: Email персонального менеджера
          example: smirnov@example.com
          format: email
          type: string
        first_name:
          description: Имя персонального менеджера
          example: Николай
          type: string
        id:
          description: Идентификатор персонального менеджера
          example: '1234567'
          type: string
        is_available:
          description: Доступен ли менеджер в данный момент
          example: false
          type: boolean
        last_name:
          description: Фамилия персонального менеджера
          example: Смирнов
          type: string
        photo_urls:
          additionalProperties: false
          description: Объект с фотографиями менеджера
          nullable: true
          properties:
            big:
              description: URL большой фотографии менеджера
              example: 'https://hhcdn.ru/file/big.jpg'
              format: uri
              nullable: true
              type: string
            small:
              description: URL маленькой фотографии менеджера
              example: 'https://hhcdn.ru/file/small.jpg'
              format: uri
              nullable: true
              type: string
          type: object
        unavailable:
          additionalProperties: false
          description: 'Информация об отсутствии менеджера, либо `null`, если менеджер доступен'
          nullable: true
          properties:
            until:
              description: 'Время, до которого менеджер недоступен для контакта'
              example: '2016-07-01T08:00:00+0400'
              format: dateTime
              type: string
          type: object
      required:
        - id
        - first_name
        - last_name
        - email
        - is_available
      title: Персональный менеджер для работодателя
      type: object
    MeEmployerProfileCompany:
      description: Информация о компании работодателя
      properties:
        id:
          description: Идентификатор компании
          example: '1455'
          type: string
        name:
          description: Название компании
          example: HeadHunter
          type: string
      required:
        - id
        - name
      title: Компания работодателя
      type: object
    MeManagerProfile:
      allOf:
        - $ref: '#/components/schemas/MeAnyUserProfile'
        - additionalProperties: true
          properties:
            employer:
              $ref: '#/components/schemas/MeEmployerProfileCompanyDeprecated'
            is_in_search:
              deprecated: true
              nullable: true
              type: object
            manager:
              $ref: '#/components/schemas/MeEmployerProfileManager'
            negotiations_url:
              deprecated: true
              nullable: true
              type: object
            personal_manager:
              $ref: '#/components/schemas/MeEmployerProfilePersonalManager'
            resumes_url:
              deprecated: true
              nullable: true
              type: object
          type: object
      description: 'Профиль текущего пользователя, авторизованного как менеджер'
      title: Профиль работодателя
    MeEmployerProfileCompanyDeprecated:
      allOf:
        - $ref: '#/components/schemas/MeEmployerProfileCompany'
        - additionalProperties: true
          properties:
            manager_id:
              deprecated: true
              description: Идентификатор менеджера
              example: '4062820'
              type: string
          required:
            - manager_id
          type: object
      description: Информация о компании работодателя
      title: Компания работодателя
      type: object
    MeEmployerProfileManager:
      description: 'Информация о пользователе, как о менеджере компании'
      properties:
        has_admin_rights:
          description: Обладает ли текущий менеджер правами администратора
          example: true
          type: boolean
        has_multiple_manager_accounts:
          description: 'Существует ли у пользователя несколько [рабочих аккаунтов](#tag/Menedzhery-rabotodatelya/operation/get-manager-accounts)'
          example: true
          type: boolean
        id:
          description: Идентификатор менеджера
          example: '87654321'
          type: string
        is_main_contact_person:
          description: Является ли текущий менеджер главным контактным лицом компании
          example: true
          type: boolean
        manager_settings_url:
          description: 'URL, на который нужно сделать GET запрос, чтобы получить [предпочтения менеджера](#tag/Menedzhery-rabotodatelya/operation/get-manager-settings)'
          example: 'https://api.hh.ru/employers/1455/managers/87654321/settings'
          format: uri
          type: string
      required:
        - id
        - has_admin_rights
        - has_multiple_manager_accounts
        - is_main_contact_person
        - manager_settings_url
      title: Информация о менеджере компании
      type: object
    MeApplicantProfileCounters:
      description: Информация о счетчиках соискателя
      properties:
        new_resume_views:
          description: Общее количество новых просмотров всех резюме текущего пользователя
          example: 2
          minimum: 0
          type: integer
        resumes_count:
          description: Общее количество созданных резюме текущего пользователя
          example: 5
          minimum: 0
          type: integer
        unread_negotiations:
          description: 'Количество новых непрочитанных откликов (у которых `has_updates: true`)'
          example: 1
          minimum: 0
          type: integer
      required:
        - unread_negotiations
        - new_resume_views
        - resumes_count
      title: Счетчики соискателя
      type: object
    VacanciesAvailableVacancyTypeResponse:
      properties:
        items:
          description: Массив вариантов публикации вакансии
          items:
            $ref: '#/components/schemas/VacanciesAvailableVacancyTypeItem'
          type: array
      required:
        - items
      title: Информация о вариантах публикации вакансии
      type: object
    VacanciesAvailableVacancyTypeItem:
      properties:
        available_publications_count:
          description: 'Общее количество публикаций, доступных данному менеджеру'
          type: number
        description:
          description: Описание типа публикации
          type: string
        name:
          description: Название типа публикации
          type: string
        publications:
          $ref: '#/components/schemas/VacancyPublications'
        vacancy_billing_type:
          allOf:
            - description: 'Биллинговый тип вакансии. Возможные значения приведены в поле `vacancy_billing_type` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              type: object
            - $ref: '#/components/schemas/VacancyBillingType'
        vacancy_types:
          $ref: '#/components/schemas/VacancyTypes'
      required:
        - name
        - description
        - available_publications_count
        - vacancy_billing_type
        - vacancy_types
        - publications
      title: Вариант публикации вакансии
      type: object
    VacancyPublications:
      description: 'Список регионов, где может быть опубликована вакансия и количество публикаций, доступных работодателю'
      items:
        $ref: '#/components/schemas/VacancyPublication'
      title: Инфо о регионах и количестве публикаций
      type: array
    VacancyPublication:
      properties:
        areas_url:
          description: 'URL на список регионов, в которых можно опубликовать вакансию данного типа. Список возвращается в древовидной структуре и публикация вакансий возможна только в конечных (листовых) узлах дерева. Они помечены флагом `can_publish=true`'
          type: string
        count:
          description: 'Количество публикаций в регионе, доступных работодателю'
          type: number
        name:
          description: Название региона
          type: string
      required:
        - name
        - count
        - areas_url
      title: Информация о публикации
      type: object
    VacancyTypes:
      description: Список типов вакансии
      items:
        $ref: '#/components/schemas/VacancyType'
      title: Список типов вакансии
      type: array
    ErrorsCommonBadJsonDataErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonBadJsonDataError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Невалидный json
    ErrorsCommonBadJsonDataError:
      properties:
        description:
          description: Описание ошибки
          example: Значение неправильное
          nullable: true
          type: string
        pointer:
          description: |
            Путь до параметра, в котором возникла ошибка.

            Для указания параметра используется формат JsonPointer [RFC 6901](https://tools.ietf.org/html/rfc6901)
          example: /contacts/phones/1/number
          type: string
        reason:
          description: |
            Причина ошибки. Возможные значения:
              * `required` - отсутствует обязательное поле
              * `invalid` - значение введено не корректно
              * `size_less_than_min` - пустой массив
              * `unexpected` - поле не ожидается
              * `greater_than_max` - значение больше максимума
          enum:
            - required
            - invalid
            - size_less_than_min
            - greater_than_max
            - unexpected
          example: required
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          example: bad_json_data
          type: string
        value:
          description: Название поля с ошибкой
          example: employer_id
          type: string
      required:
        - type
      title: Общая ошибка
      type: object
    VacancyDraftVacancyDraftFull:
      allOf:
        - $ref: '#/components/schemas/VacancyDraftVacancyDraftCommon'
        - properties:
            address:
              $ref: '#/components/schemas/VacancyDraftAddressOutput'
            areas:
              description: 'Коды и названия регионов (фед. округа, субъекты федерации, города)'
              items:
                $ref: '#/components/schemas/VacancyAreaOutput'
              minItems: 1
              type: array
            assigned_manager:
              $ref: '#/components/schemas/VacancyDraftAssignedManager'
            branded_template:
              $ref: '#/components/schemas/VacancyBrandedTemplate'
            contacts:
              $ref: '#/components/schemas/VacancyDraftContactsWithFullPhone'
            custom_employer_name:
              $ref: '#/components/schemas/VacancyCustomEmployerName'
            employer:
              $ref: '#/components/schemas/VacancyDraftEmployer'
            meta_info:
              $ref: '#/components/schemas/VacancyDraftVacancyDraftBase'
            with_zp:
              $ref: '#/components/schemas/VacancyDraftWithZp'
          required:
            - meta_info
            - areas
            - address
            - contacts
            - employer
            - with_zp
          type: object
      title: Объект черновика вакансии
    VacancyDraftVacancyDraftBase:
      properties:
        auto_publication:
          description: 'Состояние автопубликации. Объект при активной автопубликации, иначе null'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyDraftAutoPublicationState'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        completed_fields_percentage:
          description: Процент заполнения черновика
          type: number
        draft_id:
          description: Идентификатор черновика
          minLength: 1
          type: string
        insufficient_publications:
          description: 'Массив объектов с информацией о том, каких публикаций не хватает на счету для публикации вакансии из данного черновика'
          items:
            $ref: '#/components/schemas/VacancyDraftPublications'
          nullable: true
          type: array
        insufficient_quotas:
          description: 'Массив объектов с информацией о том, какие квоты превышены'
          items:
            $ref: '#/components/schemas/VacancyDraftPublications'
          nullable: true
          type: array
        last_change_time:
          description: 'Время изменения черновика (в формате [ISO 8601](https://ru.wikipedia.org/wiki/ISO_8601) с точностью до секунды `YYYY-MM-DDThh:mm:ss±hhmm`)'
          nullable: true
          type: string
        publication_ready:
          description: Готовность черновика к публикации
          type: boolean
        required_publications:
          description: Массив объектов с информацией о необходимых публикациях на счету
          items:
            $ref: '#/components/schemas/VacancyDraftPublications'
          nullable: true
          type: array
        scheduled_at:
          description: 'Время запланированной публикации вакансии (в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          nullable: true
          pattern: '^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?((\+|-)[0-1][0-9]{3})?$'
          type: string
      required:
        - completed_fields_percentage
        - draft_id
        - publication_ready
        - scheduled_at
      title: Черновик
      type: object
    VacancyDraftPublications:
      properties:
        billing_type:
          $ref: '#/components/schemas/VacancyBillingTypeOutput'
          description: 'Биллинговый тип [из справочника vacancy_billing_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: object
        count:
          description: Количество публикаций
          type: number
        publication_type:
          deprecated: true
          description: 'Тип публикации (справочник [vacancy_billing_type](#tag/Obshie-spravochniki/operation/get-dictionaries))'
          type: string
        vacancy_type:
          description: 'Тип вакансии (справочник [vacancy_type](#tag/Obshie-spravochniki/operation/get-dictionaries))'
          type: string
      required:
        - publication_type
        - billing_type
        - vacancy_type
        - count
      title: Публикация
    VacancyBillingTypeOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyBillingType'
        - properties:
            name:
              description: Название биллингового типа вакансии
              type: string
          type: object
      description: 'Биллинговый тип [из справочника vacancy_billing_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
      nullable: true
      title: Биллинговый тип вакансии
      type: object
    VacancyDraftAutoPublicationState:
      properties:
        bill_uid:
          description: Номер счета
          type: string
        cart_id:
          description: Идентификатор заказа
          type: string
      required:
        - bill_uid
        - cart_id
      title: Состояние публикации
      type: object
    VacancyDraftEmployer:
      properties:
        alternate_url:
          description: Url для просмотра работодателя на сайте
          type: string
        id:
          description: Идентификатор работодателя
          type: string
        logo_urls:
          description: Ссылки на логотипы работодателя разных размеров
          properties:
            '90':
              type: string
            '240':
              type: string
            original:
              type: string
          required:
            - '90'
            - '240'
          type: object
        name:
          description: Название работодателя
          type: string
        url:
          description: Url для просмотра работодателя
          type: string
      required:
        - id
        - name
        - logo_urls
        - alternate_url
        - url
      title: Работодатель
      type: object
    VacancyDraftContactsWithFullPhone:
      description: Контактная информация
      properties:
        email:
          description: Email
          nullable: true
          type: string
        name:
          description: Имя менеджера
          nullable: true
          type: string
        phones:
          description: Список телефонов для связи
          items:
            $ref: '#/components/schemas/VacancyDraftPhoneItemWithFullPhone'
          nullable: true
          type: array
      required:
        - phones
        - name
        - email
      title: Контакты
      type: object
    VacancyDraftPhoneItemWithFullPhone:
      properties:
        comment:
          description: Комментарий (удобное время для звонка по этому номеру)
          nullable: true
          type: string
        formatted:
          description: Телефонный номер
          pattern: '^\+?\d{1,3} [(]\d{1,5}[)] [\d -]{4,10}$'
          type: string
      title: Объект телефона для связи
      type: object
    VacancyAreaOutput:
      properties:
        id:
          description: 'Идентификатор региона из [справочника](#tag/Obshie-spravochniki/operation/get-areas)'
          type: string
        name:
          description: Название региона
          type: string
      required:
        - id
        - name
      title: Регион
      type: object
    VacancyDraftAddressOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyAddressOutput'
        - $ref: '#/components/schemas/VacancyAddress'
      title: Адрес
    VacancyAddressOutput:
      allOf:
        - $ref: '#/components/schemas/GeocoderAddress'
        - $ref: '#/components/schemas/VacancyDescriptionAddress'
        - properties:
            metro_stations:
              items:
                $ref: '#/components/schemas/_IncludesMetroStation'
              minItems: 0
              type: array
          type: object
      description: Адрес
      nullable: true
      title: Адрес
      type: object
    VacancyDescriptionAddress:
      nullable: true
      properties:
        description:
          description: Описание
          nullable: true
          type: string
      title: Описание адреса
      type: object
    GeocoderAddress:
      description: Адрес
      nullable: true
      properties:
        building:
          description: Дом
          nullable: true
          type: string
        city:
          description: Город
          nullable: true
          type: string
        lat:
          description: Широта
          nullable: true
          type: number
        lng:
          description: Долгота
          nullable: true
          type: number
        street:
          description: Улица
          nullable: true
          type: string
      title: Адрес для геокодера
      type: object
    _IncludesMetroStation:
      properties:
        lat:
          description: Широта
          nullable: true
          type: number
        line_id:
          description: Идентификатор линии метро
          type: string
        line_name:
          description: Названии линии метро
          type: string
        lng:
          description: Долгота
          nullable: true
          type: number
        station_id:
          description: Идентификатор станции метро
          type: string
        station_name:
          description: Название станции метро
          type: string
      required:
        - station_id
        - station_name
        - line_id
        - line_name
        - lat
        - lng
      title: Станция метро
      type: object
    VacancyDraftWithZp:
      description: Вашу вакансию увидят больше людей. Мы разместим ее дополнительно на сервисе Зарплата.ру
      title: Разместить на Зарплата.ру
      type: boolean
    VacancyDraftVacancyDraftCommon:
      properties:
        accept_handicapped:
          $ref: '#/components/schemas/VacancyAcceptHandicapped'
        accept_incomplete_resumes:
          $ref: '#/components/schemas/VacancyAcceptIncompleteResumes'
        accept_kids:
          $ref: '#/components/schemas/VacancyAcceptKids'
        accept_temporary:
          $ref: '#/components/schemas/VacancyAcceptTemporary'
        allow_messages:
          $ref: '#/components/schemas/VacancyAllowMessages'
        billing_type:
          $ref: '#/components/schemas/VacancyBillingTypeOutput'
        code:
          $ref: '#/components/schemas/VacancyCode'
        department:
          $ref: '#/components/schemas/VacancyDepartmentOutput'
        description:
          $ref: '#/components/schemas/VacancyDescription'
        driver_license_types:
          $ref: '#/components/schemas/VacancyDriverLicenseTypes'
        employment:
          $ref: '#/components/schemas/VacancyEmploymentOutput'
        experience:
          $ref: '#/components/schemas/VacancyExperienceOutput'
        has_test:
          description: Информация о наличии прикрепленного тестового задании к вакансии
          type: boolean
        key_skills:
          $ref: '#/components/schemas/VacancyKeySkills'
        languages:
          $ref: '#/components/schemas/VacancyLanguagesOutput'
        manager:
          $ref: '#/components/schemas/VacancyManager'
        name:
          $ref: '#/components/schemas/VacancyName'
        professional_roles:
          $ref: '#/components/schemas/VacancyProfessionalRolesOutput'
        response_letter_required:
          $ref: '#/components/schemas/VacancyResponseLetterRequired'
        response_notifications:
          $ref: '#/components/schemas/VacancyResponseNotifications'
        response_url:
          $ref: '#/components/schemas/VacancyResponseUrl'
        salary:
          $ref: '#/components/schemas/VacancySalary'
        schedule:
          $ref: '#/components/schemas/VacancyScheduleOutput'
        test:
          $ref: '#/components/schemas/VacancyDraftTest'
        type:
          $ref: '#/components/schemas/VacancyTypeOutput'
        working_days:
          $ref: '#/components/schemas/VacancyWorkingDaysOutput'
        working_time_intervals:
          $ref: '#/components/schemas/VacancyWorkingTimeIntervalsOutput'
        working_time_modes:
          $ref: '#/components/schemas/VacancyWorkingTimeModesOutput'
      required:
        - name
        - description
        - key_skills
        - schedule
        - accept_handicapped
        - accept_kids
        - experience
        - response_letter_required
        - type
        - billing_type
        - allow_messages
        - driver_license_types
        - accept_incomplete_resumes
        - professional_roles
        - manager
        - languages
        - response_notifications
        - has_test
      title: Поля черновика
      type: object
    VacancyWorkingTimeModesOutput:
      description: Список режимов времени работы
      items:
        $ref: '#/components/schemas/VacancyWorkingTimeModeItemOutput'
      nullable: true
      title: Режимы работы
      type: array
    VacancyWorkingTimeModeItemOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyWorkingTimeModeItem'
        - properties:
            name:
              description: Название интервала работы
              type: string
          type: object
      nullable: true
      title: Название интервала работы
      type: object
    VacancyLanguagesOutput:
      description: 'Список языков вакансии. Значения из справочника [/languages](#tag/Obshie-spravochniki/operation/get-dictionaries)'
      items:
        $ref: '#/components/schemas/VacancyLanguageOutput'
      title: Языки вакансии
      type: array
    VacancyLanguageOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyLanguage'
        - properties:
            level:
              properties:
                id:
                  description: Идентификатор уровня владения языком
                  type: string
                name:
                  description: Название уровня владения языком
                  type: string
              required:
                - id
                - name
              type: object
            name:
              description: Название языка
              type: string
          required:
            - name
          type: object
      title: Язык
    VacancyScheduleOutput:
      allOf:
        - $ref: '#/components/schemas/VacancySchedule'
        - properties:
            name:
              description: Название графика работы
              type: string
          type: object
      title: График работы
      type: object
    VacancyProfessionalRolesOutput:
      description: Список профессиональных ролей
      items:
        $ref: '#/components/schemas/VacancyProfessionalRoleItemOutput'
      title: Профессиональные роли
      type: array
    VacancyProfessionalRoleItemOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyProfessionalRoleItem'
        - properties:
            name:
              description: Название профессиональной роли
              type: string
          type: object
      title: Название профессиональной роли
    VacancyExperienceOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyExperience'
        - properties:
            name:
              description: Название опыта работы
              type: string
          type: object
      nullable: true
      title: Опыт работы
      type: object
    VacancyEmploymentOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyEmployment'
        - properties:
            name:
              description: Название типа занятости
              type: string
          type: object
      nullable: true
      title: Тип занятости
      type: object
    VacancyWorkingDaysOutput:
      description: Список рабочих дней
      items:
        $ref: '#/components/schemas/VacancyWorkingDayItemOutput'
      nullable: true
      title: Список рабочих дней
      type: array
    VacancyWorkingDayItemOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyWorkingDayItem'
        - properties:
            name:
              description: Название рабочего дня
              type: string
          type: object
      nullable: true
      title: Список рабочих дней
      type: object
    VacancyDepartmentOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyDepartment'
        - properties:
            name:
              description: Название департамента работодателя
              type: string
          type: object
      nullable: true
      title: Департамент
      type: object
    VacancyTypeOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyType'
        - properties:
            name:
              description: Название типа вакансии
              type: string
          type: object
      title: Тип вакансии
      type: object
    VacancyWorkingTimeIntervalsOutput:
      description: Список с временными интервалами работы
      items:
        $ref: '#/components/schemas/VacancyWorkingTimeIntervalItemOutput'
      nullable: true
      title: Интервалы работы
      type: array
    VacancyWorkingTimeIntervalItemOutput:
      allOf:
        - $ref: '#/components/schemas/VacancyWorkingTimeIntervalItem'
        - properties:
            name:
              description: Название интервала работы
              type: string
          type: object
      nullable: true
      title: Название интервала работы
      type: object
    VacancyDraftAssignedManager:
      nullable: true
      properties:
        full_name:
          description: ФИО
          type: string
        id:
          description: 'Идентификатор рабочего аккаунта менеджера, которому перейдет вакансия после публикации'
          type: string
      title: 'Менеджер, к которому перейдет вакансия после публикации'
      type: object
    AuthClientCredentials:
      additionalProperties: false
      properties:
        client_id:
          description: 'Идентификатор, полученный при [создании приложения](https://dev.hh.ru/admin)'
          example: ETVQdMs2n9VKw7SMXkh9nX5H
          minLength: 1
          type: string
        client_secret:
          description: 'Защищенный ключ, полученный при [создании приложения](https://dev.hh.ru/admin)'
          example: 95dNjB8FmtxQsmygm6dtEy53
          minLength: 1
          type: string
        grant_type:
          description: Cпособ запроса токена
          enum:
            - client_credentials
          example: client_credentials
          type: string
      required:
        - grant_type
        - client_id
        - client_secret
      title: Параметры для получения нового токена приложения
      type: object
    VacanciesVacancy:
      anyOf:
        - $ref: '#/components/schemas/VacanciesVacancyForApplicant'
        - $ref: '#/components/schemas/VacanciesVacancyForManager'
      title: Вакансия
      type: object
    VacanciesVacancyForManager:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyCommonFields'
        - $ref: '#/components/schemas/VacancyBillingTypeObject'
        - $ref: '#/components/schemas/VacanciesVacancyManagerFields'
        - properties:
            previous_id:
              description: 'Идентификатор архивной вакансии, на основе которой была опубликована текущая вакансия. Если вакансия была создана самостоятельно - null'
              nullable: true
              type: string
          type: object
      title: Информация о вакансии при запросе от менеджера
      type: object
    VacanciesVacancyManagerFields:
      properties:
        address:
          $ref: '#/components/schemas/VacanciesAddress'
        archived_at:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyArchivedAt'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        branded_template:
          $ref: '#/components/schemas/VacancyBrandedTemplate'
        can_upgrade_billing_type:
          $ref: '#/components/schemas/VacancyCanUpgradeBillingType'
        counters:
          $ref: '#/components/schemas/VacancyCountersOutput'
        expires_at:
          $ref: '#/components/schemas/VacancyExpiresAt'
        hidden:
          $ref: '#/components/schemas/VacancyHidden'
        manager:
          $ref: '#/components/schemas/VacancyManager'
        response_notifications:
          $ref: '#/components/schemas/VacancyResponseNotifications'
      required:
        - expires_at
        - manager
        - response_notifications
        - hidden
        - branded_template
        - can_upgrade_billing_type
        - address
      title: Поля менеджера вакансии
      type: object
    VacancyArchivedAt:
      description: Дата архивации вакансии
      title: Дата архивации вакансии
      type: string
    VacancyCountersOutput:
      properties:
        calls:
          description: Общее количество звонков
          type: number
        invitations:
          description: Количество приглашений на вакансию
          type: number
        invitations_and_responses:
          description: Количество откликнувшихся и приглашенных соискателей на вакансию
          type: number
        new_missed_calls:
          description: Общее количество новых пропущенных звонков
          type: number
        responses:
          description: Количество откликов на вакансию
          type: number
        resumes_in_progress:
          description: Количество резюме в работе на вакансию
          type: number
        unread_responses:
          description: Количество непросмотренных откликов на вакансию
          type: number
        views:
          description: Количество просмотров вакансии
          type: number
      required:
        - views
        - responses
        - unread_responses
        - resumes_in_progress
        - invitations
        - invitations_and_responses
        - calls
        - new_missed_calls
      title: Ответ - счетчики
      type: object
    VacanciesAddress:
      allOf:
        - $ref: '#/components/schemas/VacancyAddressRawOutput'
        - properties:
            show_metro_only:
              description: Показывать только метро для указанного адреса
              nullable: true
              type: boolean
          type: object
      title: Адрес для вакансии
    VacancyAddressRawOutput:
      description: Адрес
      nullable: true
      properties:
        building:
          description: Дом
          nullable: true
          type: string
        city:
          description: Город
          nullable: true
          type: string
        description:
          description: Описание
          nullable: true
          type: string
        id:
          description: 'Адрес из [списка доступных адресов работодателя](https://api.hh.ru/openapi/redoc#tag/Adresa-rabotodatelya/operation/get-employer-addresses)'
          nullable: true
          type: string
        lat:
          description: Широта
          nullable: true
          type: number
        lng:
          description: Долгота
          nullable: true
          type: number
        metro:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/_IncludesMetroStation'
          type: object
        metro_stations:
          items:
            $ref: '#/components/schemas/_IncludesMetroStation'
          minItems: 0
          type: array
        raw:
          description: Полный адрес
          nullable: true
          type: string
        street:
          description: Улица
          nullable: true
          type: string
      title: Адрес
      type: object
    VacancyHidden:
      description: Удалена ли вакансия (скрыта из архива)
      title: Удалена ли вакансия
      type: boolean
    VacancyExpiresAt:
      description: Дата и время окончания публикации вакансии
      title: Date and time
      type: string
    VacancyCanUpgradeBillingType:
      description: Можно ли улучшить биллинговый тип вакансии
      title: Улучшение биллингового типа
      type: boolean
    VacanciesVacancyCommonFields:
      properties:
        accept_handicapped:
          $ref: '#/components/schemas/VacancyAcceptHandicapped'
        accept_incomplete_resumes:
          $ref: '#/components/schemas/VacancyAcceptIncompleteResumes'
        accept_kids:
          $ref: '#/components/schemas/VacancyAcceptKids'
        accept_temporary:
          $ref: '#/components/schemas/VacancyAcceptTemporary'
        allow_messages:
          $ref: '#/components/schemas/VacancyAllowMessages'
        alternate_url:
          $ref: '#/components/schemas/VacancyAlternateUrl'
        apply_alternate_url:
          $ref: '#/components/schemas/VacancyApplyAlternateUrl'
        approved:
          $ref: '#/components/schemas/VacancyApproved'
        archived:
          $ref: '#/components/schemas/VacancyArchived'
        area:
          $ref: '#/components/schemas/_IncludesArea'
        billing_type:
          $ref: '#/components/schemas/VacancyBillingTypeOutput'
        branded_description:
          deprecated: true
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyBrandedDescription'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: string
        code:
          $ref: '#/components/schemas/VacancyCode'
        contacts:
          $ref: '#/components/schemas/VacancyContactsOutput'
        created_at:
          allOf:
            - $ref: '#/components/schemas/VacancyCreatedAt'
          deprecated: true
        department:
          $ref: '#/components/schemas/VacanciesObjectsDepartment'
        description:
          $ref: '#/components/schemas/VacancyDescription'
        driver_license_types:
          $ref: '#/components/schemas/VacancyDriverLicenseTypes'
        employer:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacanciesVacancyEmployer'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        employment:
          $ref: '#/components/schemas/VacancyEmploymentOutput'
        experience:
          $ref: '#/components/schemas/VacancyExperienceOutput'
        has_test:
          $ref: '#/components/schemas/VacancyHasTest'
        id:
          $ref: '#/components/schemas/VacancyId'
        initial_created_at:
          $ref: '#/components/schemas/VacancyInitialCreatedAt'
        insider_interview:
          $ref: '#/components/schemas/VacanciesObjectsInsiderInterview'
        key_skills:
          $ref: '#/components/schemas/VacancyKeySkills'
        languages:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyLanguagesOutput'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: array
        name:
          $ref: '#/components/schemas/VacancyName'
        negotiations_url:
          description: Ссылка для получения списка откликов/приглашений
          nullable: true
          type: string
        premium:
          $ref: '#/components/schemas/VacancyPremium'
        professional_roles:
          $ref: '#/components/schemas/VacancyProfessionalRolesOutput'
        published_at:
          $ref: '#/components/schemas/VacancyCreatedAt'
        relations:
          $ref: '#/components/schemas/VacancyRelations'
        response_letter_required:
          $ref: '#/components/schemas/VacancyResponseLetterRequired'
        response_url:
          $ref: '#/components/schemas/VacancyResponseUrl'
        salary:
          $ref: '#/components/schemas/VacancySalary'
        schedule:
          $ref: '#/components/schemas/VacancyScheduleOutput'
        suitable_resumes_url:
          description: Подходящие резюме на вакансию
          nullable: true
          type: string
        test:
          $ref: '#/components/schemas/VacancyDraftTest'
        type:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: 'Идентификатор типа вакансии из справочника [`vacancy_type`](https://api.hh.ru/openapi/redoc#tag/Obshie-spravochniki/operation/get-dictionaries)'
        vacancy_constructor_template:
          deprecated: true
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyVacancyConstructorTemplate'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        video_vacancy:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyVideoVacancy'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        working_days:
          $ref: '#/components/schemas/VacancyWorkingDaysOutput'
        working_time_intervals:
          $ref: '#/components/schemas/VacancyWorkingTimeIntervalsOutput'
        working_time_modes:
          $ref: '#/components/schemas/VacancyWorkingTimeModesOutput'
      required:
        - id
        - description
        - key_skills
        - schedule
        - accept_handicapped
        - accept_kids
        - experience
        - alternate_url
        - apply_alternate_url
        - archived
        - name
        - area
        - initial_created_at
        - created_at
        - published_at
        - response_letter_required
        - type
        - has_test
        - billing_type
        - allow_messages
        - premium
        - driver_license_types
        - accept_incomplete_resumes
        - professional_roles
        - approved
      title: Обычные поля вакансии
      type: object
    VacancyVideoVacancy:
      additionalProperties: false
      description: 'Данные по видео вакансии, либо `null`, если она не подключена'
      properties:
        cover_picture:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyVideoVacancyCoverPicture'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        video_url:
          description: Ссылка для скачивания видео
          minLength: 1
          nullable: false
          type: string
      title: Видео вакансия
      type: object
    VacancyVideoVacancyCoverPicture:
      additionalProperties: false
      description: 'Обложка видео вакансии, либо `null`, если обложка отсутствует'
      properties:
        resized_height:
          description: Высота изображения
          type: number
        resized_path:
          description: Ссылка на изображение
          minLength: 1
          nullable: false
          type: string
        resized_width:
          description: Ширина изображения
          type: number
      required:
        - resized_path
        - resized_width
        - resized_height
      title: Обложка видео вакансии
      type: object
    VacancyHasTest:
      description: Информация о наличии прикрепленного тестового задании к вакансии
      title: Есть ли тестовое задание
      type: boolean
    VacancyVacancyConstructorTemplate:
      description: 'Информация по примененному брендированному шаблону конструктора вакансии. Поддерживается только две картинки: верхняя — в шапке вакансии, нижняя — в самом низу'
      properties:
        bottom_picture:
          description: Информация по нижней картинке шаблона
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacancyPicture'
          type: object
        id:
          description: ID шаблона
          type: number
        name:
          description: Название шаблона
          type: string
        top_picture:
          description: Информация по верхней картинке шаблона
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/VacancyPicture'
          type: object
      title: Шаблон конструктора вакансии
      type: object
    VacancyPicture:
      properties:
        blurred_path:
          description: Путь до маленькой (порядка 4% от изначального размера) размытой картинки. При показе ее нужно преобразовать к нужному размеру
          nullable: true
          type: string
        height:
          description: Высота картинки
          type: number
        path:
          description: Адрес картинки
          type: string
        width:
          description: Ширина картинки
          type: number
      title: Картинка
      type: object
    VacancyArchived:
      description: Находится ли данная вакансия в архиве
      title: Находится ли данная вакансия в архиве
      type: boolean
    VacancyInitialCreatedAt:
      description: Дата и время создания вакансии
      title: Дата и время создания вакансии
      type: string
    VacanciesObjectsInsiderInterview:
      description: Объект с информацией об интервью о жизни в компании
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/VacancyInsiderInterview'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Объект
      type: object
    VacancyInsiderInterview:
      properties:
        id:
          description: Идентификатор интервью
          type: string
        url:
          description: 'Адрес страницы, содержащей интервью'
          type: string
      required:
        - id
        - url
      title: Объект с информацией об интервью о жизни в компании
      type: object
    VacancyApplyAlternateUrl:
      description: Ссылка на отклик на вакансию на сайте
      title: Ссылка на отклик на вакансию на сайте
      type: string
    VacancyCreatedAt:
      description: Дата и время публикации вакансии
      title: Дата и время публикации вакансии
      type: string
    VacancyPremium:
      description: Является ли данная вакансия премиум-вакансией
      title: Является ли данная вакансия премиум-вакансией
      type: boolean
    VacancyContactsOutput:
      description: Контактная информация
      nullable: true
      properties:
        call_tracking_enabled:
          description: Флаг подключения виртуального номера
          nullable: true
          type: boolean
        email:
          description: Электронная почта. Значение поля должно соответствовать формату email
          nullable: true
          type: string
        name:
          description: Имя контакта
          nullable: true
          type: string
        phones:
          description: Список телефонов для связи
          items:
            $ref: '#/components/schemas/VacancyPhoneItem'
          nullable: true
          type: array
      title: Контактная информация
      type: object
    VacancyBrandedDescription:
      description: |-
        Строка с кодом HTML (возможно наличие `<script/>` и `<style/>`), которая является альтернативой стандартному описанию вакансии.

        HTML адаптирован для мобильных устройств и корректно отображается без поддержки JavaScript. При этом:

        * Содержимое растягивается на 100% ширины контейнера и умещается в 300px без прокрутки.
        * Содержимое рассчитано на то, что оно будет вставлено в обвязку, в которую входит название, требуемый опыт работы, регион, тип занятости и рабочего дня вакансии, а также ссылка на компанию, опубликовавшую вакансию.
        * Изображения, которые могут встретиться в таком описании, адаптированы под Retina-дисплеи.
        * Размер шрифта не меньше 12px, размер межстрочного интервала не меньше 16px.

        Значение может быть `null`, если у вакансии отсутствует индивидуальное описание
      title: Описание брендирования
      type: string
    VacanciesObjectsDepartment:
      description: Департамент
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/VacancyDepartmentOutput'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Объект
      type: object
    VacancyApproved:
      description: Прошла ли вакансия модерацию
      title: Прошла ли вакансия модерацию
      type: boolean
    VacancyRelations:
      description: 'Возвращает связи соискателя с вакансией. Значения из поля `vacancy_relation` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
      items:
        $ref: '#/components/schemas/VacancyRelationItem'
      title: Связи соискателя с вакансией
      type: array
    VacancyRelationItem:
      enum:
        - favorited
        - got_response
        - got_invitation
        - got_rejection
        - blacklisted
        - null
      nullable: true
      title: Текстовый идентификатор связи
      type: string
    VacanciesVacancyEmployer:
      allOf:
        - $ref: '#/components/schemas/VacanciesEmployerPublic'
        - $ref: '#/components/schemas/VacancyEmployerBlacklisted'
        - $ref: '#/components/schemas/_IncludesEmployerApplicantServicesObject'
        - $ref: '#/components/schemas/VacancyEmployerBages'
      title: Поля работодателя в вакансии
    VacancyEmployerBlacklisted:
      properties:
        blacklisted:
          description: 'Добавлены ли все вакансии работодателя в [список скрытых](#tag/Skrytye-rabotodateli)'
          type: boolean
      title: Информация о компании работодателя
      type: object
    _IncludesEmployerApplicantServicesObject:
      properties:
        applicant_services:
          $ref: '#/components/schemas/_IncludesEmployerApplicantServices'
      title: Услуги для соискателя
      type: object
    VacancyEmployerBages:
      properties: {}
      title: Плашка работодателя
      type: object
    VacanciesEmployerPublic:
      properties:
        accredited_it_employer:
          description: 'Флаг, показывающий, прошла ли компания IT аккредитацию'
          type: boolean
        alternate_url:
          description: Ссылка на представление компании на сайте
          example: 'https://hh.ru/employer/1455'
          nullable: true
          type: string
        id:
          description: Идентификатор компании
          example: '1455'
          nullable: true
          type: string
        logo_urls:
          description: Ссылки на логотипы работодателя разных размеров
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesLogoUrls'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          description: Название компании
          example: HeadHunter
          type: string
        trusted:
          description: 'Флаг, показывающий, прошла ли компания проверку на сайте'
          type: boolean
        url:
          description: 'URL, на который нужно сделать GET-запрос, чтобы получить информацию о компании'
          example: 'https://api.hh.ru/employers/1455'
          nullable: true
          type: string
        vacancies_url:
          description: Ссылка на поисковую выдачу вакансий данной компании
          example: 'https://api.hh.ru/vacancies?employer_id=1455'
          nullable: true
          type: string
      required:
        - name
        - trusted
      title: Информация о компании работодателя
      type: object
    VacancyId:
      description: Идентификатор вакансии
      title: Идентификатор вакансии
      type: string
    VacancyAlternateUrl:
      description: Ссылка на представление вакансии на сайте
      title: Ссылка на представление вакансии на сайте
      type: string
    VacancyBillingTypeObject:
      properties:
        billing_type:
          $ref: '#/components/schemas/VacancyBillingTypeOutput'
      title: Тип биллинга
      type: object
    VacanciesVacancyForApplicant:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyCommonFields'
        - $ref: '#/components/schemas/VacancyHiddenDeprecated'
        - $ref: '#/components/schemas/VacancyBillingTypeObject'
        - $ref: '#/components/schemas/VacancyAddressCommon'
        - properties: {}
          type: object
      title: Информация о вакансии с токеном соискателя или приложения
      type: object
    VacancyAddressCommon:
      description: Адрес
      nullable: true
      properties:
        address:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyAddressOutput'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
      title: Адрес
      type: object
    VacancyHiddenDeprecated:
      properties:
        hidden:
          deprecated: true
          description: Удалена ли вакансия (скрыта из архива). Оставлено для обеспечения обратной совместимости
          type: boolean
      title: Удалена ли вакансия
    NegotiationsCollectionNegotiationsResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesSortingType'
        - $ref: '#/components/schemas/_IncludesPagination'
        - $ref: '#/components/schemas/NegotiationsCollectionNegotiations'
      title: Список откликов/приглашений коллекции
      type: object
    _IncludesSortingType:
      properties:
        ordered_by:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: Применяемый тип сортировки
      required:
        - ordered_by
      title: Сортировка
      type: object
    NegotiationsCollectionNegotiations:
      properties:
        items:
          items:
            allOf:
              - $ref: '#/components/schemas/NegotiationsObjectsTopicItemCommon'
              - $ref: '#/components/schemas/NegotiationsNegotiationCommonFields'
              - properties:
                  resume:
                    anyOf:
                      - $ref: '#/components/schemas/ResumeResumeShortLogoUrl90'
                      - $ref: '#/components/schemas/_IncludesNullableObject'
                    description: Короткое представление резюме
                    nullable: true
                    type: object
                  url:
                    description: Ссылка на полную версию отклика
                    type: string
                required:
                  - employer_state
                  - templates
                  - actions
                  - url
                type: object
          minItems: 0
          type: array
      required:
        - items
      title: Поля ответа списка откликов/приглашений коллекции
      type: object
    NegotiationsObjectsTopicItemCommon:
      properties:
        counters:
          $ref: '#/components/schemas/NegotiationsObjectsCounters'
        created_at:
          description: Дата и время создания отклика/приглашения
          type: string
        has_updates:
          $ref: '#/components/schemas/VacancyHasUpdates'
        id:
          description: Идентификатор отклика/приглашения
          type: string
        messages_url:
          deprecated: true
          description: 'URL, на который необходимо делать GET-запрос для получения [списка сообщений в отклике/приглашении](#tag/Perepiska-(otklikipriglasheniya)-dlya-soiskatelya/operation/get-negotiation-messages). Если `can_edit` равно `false`, значение поля должно игнорироваться'
          type: string
        messaging_status:
          description: |
            Текущий статус переписки.

            Возможные значения приведены в поле `messaging_status` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          type: string
        professional_roles:
          oneOf:
            - $ref: '#/components/schemas/VacancyProfessionalRoles'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        source:
          description: Источник отклика/приглашения
          enum:
            - NEGOTIATION
            - PHONE_CALL
            - CHAT
            - VR
            - AUTO_INVITE
          type: string
        state:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: |
            Текущее состояние отклика/приглашения.

            Возможные значения приведены в поле `negotiations_state` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          type: object
        updated_at:
          description: Дата и время последнего обновления отклика/приглашения
          type: string
        viewed_by_opponent:
          description: Был ли отклик просмотрен работодателем
          type: boolean
      required:
        - id
        - state
        - created_at
        - updated_at
        - has_updates
        - viewed_by_opponent
        - messaging_status
      title: Общая информация об отклике/приглашении
      type: object
    VacancyHasUpdates:
      description: 'Есть ли в откликах/приглашениях по данной вакансии обновления, требующие внимания'
      title: Обновление по данной вакансии
      type: boolean
    NegotiationsObjectsCounters:
      properties:
        messages:
          description: Общее количество сообщений
          type: number
        unread_messages:
          description: Количество непрочитанных работодателем сообщений
          type: number
      title: Счетчики
      type: object
    ResumeResumeShortLogoUrl90:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeProfileLogoUrl90'
        - $ref: '#/components/schemas/ResumeResumeShortAdditionalFields'
        - properties:
            job_search_status:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdNameLastChangeTime'
              description: |
                Для получения данных нужно передать параметр `with_job_search_status=true`. 
                Возможные значения перечислены в поле `job_search_statuses_employer` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          type: object
      title: Сокращенное представление резюме
      type: object
    ResumeResumeProfileLogoUrl90:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeNanoWithUrl'
        - properties:
            age:
              description: Возраст
              nullable: true
              type: number
            area:
              $ref: '#/components/schemas/ResumeObjectsArea'
            can_view_full_info:
              description: Доступен ли просмотр контактной информации в резюме текущему работодателю
              nullable: true
              type: boolean
            certificate:
              description: Список сертификатов соискателя
              items:
                $ref: '#/components/schemas/ResumeObjectsCertificate'
              minItems: 0
              type: array
            created_at:
              description: Дата и время создания резюме
              type: string
            download:
              allOf:
                - $ref: '#/components/schemas/ResumeObjectsDownload'
              description: Ссылки для скачивания резюме в разных форматах
              type: object
            education:
              allOf:
                - $ref: '#/components/schemas/ResumeObjectsEducation'
              description: |
                Образование соискателя. 

                Особенности сохранения образования:

                * Если передать и высшее и среднее образование и уровень образования "средний", то сохранится только среднее образование.
                * Если передать и высшее и среднее образование и уровень образования "высшее", то сохранится только высшее образование
              type: object
            experience:
              description: Опыт работы
              items:
                $ref: '#/components/schemas/ResumeObjectsExperienceLogoUrl90'
              minItems: 0
              type: array
            first_name:
              description: Имя
              nullable: true
              type: string
            gender:
              $ref: '#/components/schemas/ResumeObjectsGender'
            hidden_fields:
              description: 'Справочник [Список скрытых полей](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#hidden-fields). Возможные значения элементов приведены в поле `resume_hidden_fields` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              items:
                $ref: '#/components/schemas/_IncludesIdName'
              minItems: 0
              type: array
            last_name:
              description: Фамилия
              nullable: true
              type: string
            marked:
              default: false
              description: Выделено ли резюме в поиске
              type: boolean
            middle_name:
              description: Отчество
              nullable: true
              type: string
            platform:
              allOf:
                - $ref: '#/components/schemas/_IncludesId'
              description: 'Ресурс, на котором было размещено резюме'
              type: object
            salary:
              $ref: '#/components/schemas/ResumeObjectsSalaryProperties'
            total_experience:
              $ref: '#/components/schemas/ResumeObjectsTotalExperience'
            updated_at:
              description: Дата и время обновления резюме
              type: string
          required:
            - created_at
            - updated_at
            - certificate
            - education
            - experience
            - download
            - hidden_fields
          type: object
      title: Сокращенное представление резюме
      type: object
    ResumeObjectsTotalExperience:
      nullable: true
      properties:
        months:
          description: 'Общий опыт работы в месяцах, с округлением до месяца'
          nullable: true
          type: number
      title: Опыт работы
      type: object
    ResumeObjectsDownload:
      properties:
        pdf:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsDownloadPdfRtf'
          description: PDF-версия резюме
          type: object
        rtf:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsDownloadPdfRtf'
          description: RTF-версия резюме
          type: object
      required:
        - pdf
        - rtf
      title: Загрузка резюме
      type: object
    ResumeObjectsDownloadPdfRtf:
      properties:
        url:
          description: Ссылка для получения PDF/RTF-версии резюме
          type: string
      required:
        - url
      title: PDF/RTF-версия резюме
      type: object
    ResumeObjectsCertificate:
      properties:
        achieved_at:
          description: Дата получения (в формате `ГГГГ-ММ-ДД`)
          type: string
        owner:
          description: На кого выдан сертификат. Возвращается только для сертификатов с `type = microsoft`
          nullable: true
          type: string
        title:
          description: Название сертификата
          type: string
        type:
          description: |
            Тип сертификата. Доступные значения:

            * `custom`;
            * `microsoft`
          type: string
        url:
          description: Ссылка на страницу с описанием сертификата
          nullable: true
          type: string
      title: Сертификат
      type: object
    ResumeObjectsArea:
      description: 'Город проживания. Элемент справочника [areas](#tag/Obshie-spravochniki/operation/get-areas)'
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/_IncludesIdNameUrl'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Город
      type: object
    _IncludesIdNameUrl:
      allOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - properties:
            url:
              description: URL получения информации о поле
              type: string
          required:
            - url
          type: object
      title: 'Объект с идентификатором, названием и ссылкой'
      type: object
    ResumeObjectsExperienceLogoUrl90:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsExperiencePropertiesLogoUrl90'
      required:
        - start
        - position
        - industries
      title: Опыт работы в организации
    ResumeObjectsExperiencePropertiesLogoUrl90:
      properties:
        area:
          description: 'Регион расположения организации. Элемент [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdNameUrl'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        company:
          description: Название организации
          nullable: true
          type: string
        company_id:
          description: Уникальный идентификатор организации
          nullable: true
          type: string
        company_url:
          description: Сайт компании
          nullable: true
          type: string
        description:
          description: 'Обязанности, функции, достижения'
          nullable: true
          type: string
        employer:
          description: Работодатель
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/EmployersEmployerInfoShortLogoUrl90'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        end:
          description: Окончание работы (дата в формате `ГГГГ-ММ-ДД`)
          nullable: true
          type: string
        industries:
          description: 'Список отраслей компании. Возможные значения приведены в [справочнике индустрий](#tag/Obshie-spravochniki/operation/get-industries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        industry:
          description: Отрасль компании
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsIndustry'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        position:
          description: Должность
          type: string
        start:
          description: Начало работы (дата в формате `ГГГГ-ММ-ДД`)
          type: string
      title: Опыт работы в организации
      type: object
    ResumeObjectsIndustry:
      deprecated: true
      properties:
        id:
          description: Идентификатор поля
          type: string
        name:
          description: Название поля
          type: string
      required:
        - id
        - name
      title: Отрасль
      type: object
    EmployersEmployerInfoShortLogoUrl90:
      properties:
        alternate_url:
          description: Ссылка на описание работодателя на сайте
          type: string
        id:
          description: Идентификатор работодателя
          type: string
        logo_urls:
          description: 'Ссылки на изображения логотипов работодателя разных размеров. `original` — это необработанный логотип, который может быть большого размера. Если изначально загруженный компанией логотип меньше, чем 240px и/или 90px по меньшей стороне, то в соответствующих ключах будут ссылки на изображения оригинального размера. Объект может быть `null`, если компания не загрузила логотип. Клиент должен предусмотреть возможность отсутствия логотипа по указанной ссылке (ответ с кодом `404 Not Found`). Логотипы 90 и 240 присутствуют не во всех компаниях'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesLogoUrls90'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          description: Название работодателя
          type: string
        url:
          description: URL для получения полного описания работодателя
          type: string
      required:
        - id
        - name
        - url
        - alternate_url
      title: Работодатель
      type: object
    _IncludesLogoUrls90:
      properties:
        '90':
          description: URL логотипа с размером менее 90px по меньшей стороне
          type: string
      required:
        - '90'
      title: Ссылка на логотип
      type: object
    ResumeObjectsGender:
      description: 'Пол соискателя. Возможные значения перечислены в поле `gender` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Пол соискателя
      type: object
    ResumeObjectsEducation:
      properties:
        additional:
          description: Список куров повышения квалификации
          items:
            $ref: '#/components/schemas/ResumeObjectsEducationAdditional'
          nullable: true
          type: array
        attestation:
          description: Список пройденных тестов или экзаменов
          items:
            $ref: '#/components/schemas/ResumeObjectsEducationAdditional'
          nullable: true
          type: array
        elementary:
          description: Среднее образование. Обычно заполняется только при отсутствии высшего образования
          items:
            $ref: '#/components/schemas/ResumeObjectsEducationElementary'
          nullable: true
          type: array
        level:
          description: 'Уровень образования. Возможные значения приведены в поле `education_level` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        primary:
          description: Список образований выше среднего
          items:
            $ref: '#/components/schemas/ResumeObjectsEducationPrimary'
          nullable: true
          type: array
      required:
        - level
      title: Образование
      type: object
    ResumeObjectsEducationPrimary:
      properties:
        name:
          description: Название учебного заведения
          type: string
        name_id:
          description: Идентификатор учебного заведения
          nullable: true
          type: string
        organization:
          description: Факультет
          nullable: true
          type: string
        organization_id:
          description: Идентификатор факультета
          nullable: true
          type: string
        result:
          description: Специальность / специализация
          nullable: true
          type: string
        result_id:
          description: Идентификатор специальности / специализации
          nullable: true
          type: string
        year:
          description: Год окончания
          type: number
      required:
        - name
        - year
      title: Высшее образование
      type: object
    ResumeObjectsEducationAdditional:
      properties:
        name:
          description: Название курса / теста
          type: string
        organization:
          description: 'Организация, проводившая курс / тест'
          type: string
        result:
          description: Специальность / специализация
          nullable: true
          type: string
        year:
          description: Год окончания / сдачи
          type: number
      required:
        - organization
        - name
        - year
      title: Дополнительное образование
      type: object
    ResumeObjectsEducationElementary:
      properties:
        name:
          description: Название учебного заведения
          type: string
        year:
          description: Год окончания
          type: number
      required:
        - year
        - name
      title: Среднее образование
      type: object
    ResumeResumeNanoWithUrl:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeNano'
        - $ref: '#/components/schemas/_IncludesUrl'
      title: Сокращенное представление резюме
      type: object
    ResumeObjectsSalaryProperties:
      nullable: true
      properties:
        amount:
          description: Сумма
          nullable: true
          type: number
        currency:
          description: 'Идентификатор валюты. Возможные значения перечислены в массиве `currency` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          type: string
      title: Зарплата
      type: object
    ResumeResumeShortAdditionalFields:
      properties:
        actions:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsActions'
          description: Дополнительные действия
          type: object
        favorited:
          description: Добавлено ли резюме в избранные
          type: boolean
        marked:
          description: Выделено ли резюме в поиске
          type: boolean
        negotiations_history:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsNegotiationsHistoryUrl'
          description: Краткая история откликов/приглашений по резюме
          type: object
        owner:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsOwner'
          description: Информация о владельце резюме
          type: object
        photo:
          description: Фотография пользователя
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsPhoto'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        tags:
          description: Теги к резюме
          items:
            $ref: '#/components/schemas/_IncludesId'
          type: array
        viewed:
          description: Было ли резюме уже просмотрено работодателем
          type: boolean
      required:
        - owner
        - negotiations_history
        - favorited
        - viewed
        - actions
      title: Дополнительные поля сокращенного представления резюме
      type: object
    ResumeObjectsPhoto:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsPhotoNoId'
        - $ref: '#/components/schemas/_IncludesId'
      description: 'Значение может быть `null`, если у работодателя отсутствует брендирование страницы'
      nullable: true
      title: Фотография
      type: object
    ResumeObjectsPhotoNoId:
      properties:
        '40':
          deprecated: true
          description: 'URL изображения размером 40x40 пикселей. Изображение по данному URL доступно ограниченное время после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернется ошибка `404 Not Found`'
          nullable: true
          type: string
        '100':
          deprecated: true
          description: 'URL изображения размером 100x100 пикселей. Изображение по данному URL доступно ограниченное время после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернется ошибка `404 Not Found`'
          nullable: true
          type: string
        '500':
          deprecated: true
          description: 'URL изображения размером 500x500 пикселей. Изображение по данному URL доступно ограниченное время после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернется ошибка `404 Not Found`'
          nullable: true
          type: string
        medium:
          description: 'URL среднего по размеру изображения. Изображение по данному URL доступно ограниченное время после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернется ошибка `404 Not Found`'
          type: string
        small:
          description: 'URL уменьшенного изображения. Изображение по данному URL доступно ограниченное время после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернется ошибка `404 Not Found`'
          type: string
      required:
        - small
        - medium
      title: Фотография пользователя
      type: object
    ResumeObjectsNegotiationsHistoryUrl:
      properties:
        url:
          description: 'URL, на который необходимо сделать GET-запрос, чтобы получить [подробную историю откликов/приглашений](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-resume-negotiations-history) по данному резюме'
          type: string
      required:
        - url
      title: История откликов/приглашений
      type: object
    ResumeObjectsOwner:
      properties:
        comments:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsOwnerComments'
          description: 'Раздел [Комментарии к владельцу резюме](#tag/Kommentarii-k-soiskatelyu/operation/get-applicant-comments-list)'
          type: object
        id:
          description: Идентификатор владельца резюме
          type: string
      required:
        - id
        - comments
      title: Владелец резюме
      type: object
    ResumeObjectsOwnerComments:
      properties:
        counters:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsOwnerCommentsCounters'
          description: Информация о количестве комментариев
          type: object
        url:
          description: 'URL, на который нужно сделать GET-запрос, чтобы получить список комментариев'
          type: string
      required:
        - url
        - counters
      title: Комментарии о владельце резюме
      type: object
    ResumeObjectsOwnerCommentsCounters:
      properties:
        total:
          description: Общее количество комментариев
          type: number
      required:
        - total
      title: Количество комментариев
      type: object
    ResumeObjectsActions:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsActionsForOwner'
        - properties:
            download_with_contact:
              $ref: '#/components/schemas/ResumeObjectsOneOfDownloadOrNullableObject'
            get_with_contact:
              $ref: '#/components/schemas/ResumeObjectsOneOfUrlOrNullableObject'
          type: object
      title: Действия с резюме
      type: object
    ResumeObjectsOneOfUrlOrNullableObject:
      description: |
        Ссылка для получения резюме с контактами (происходит трата услуги). По ссылке возвращается объект аналогичный [просмотру резюме](#tag/Prosmotr-rezyume/operation/get-resume). Отображается, если у работодателя есть подходящая оплаченная услуга открытия контактов и контакты резюме еще не открыты
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/_IncludesUrl'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Ссылка для получения резюме с контактами
      type: object
    ResumeObjectsOneOfDownloadOrNullableObject:
      description: |
        Ссылки для скачивания резюме с контактами (происходит трата услуги) в нескольких форматах ([подробнее](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#download-links)). Отображаются, если у работодателя есть подходящая оплаченная услуга открытия контактов и контакты резюме еще не открыты
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/ResumeObjectsDownload'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Ссылки для скачивания резюме с контактами
      type: object
    ResumeObjectsActionsForOwner:
      properties:
        download:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsDownload'
          description: |
            Ссылки для скачивания резюме в нескольких форматах ([подробнее](#tag/Prosmotr-rezyume/operation/get-resume)) (атрибут 'actions')
          type: object
      required:
        - download
      title: Действия с резюме от имени владельца
      type: object
    _IncludesIdNameLastChangeTime:
      allOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - properties:
            last_change_time:
              description: Время последнего изменения
              type: string
          type: object
      title: 'Объект с идентификатором, названием и временем последнего изменения'
      type: object
    NegotiationsNegotiationCommonFields:
      properties:
        actions:
          description: |
            Возможные [действия по отклику/приглашению](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#actions-info)
          items:
            $ref: '#/components/schemas/VacancyNegotiationActions'
          minItems: 0
          type: array
        employer_state:
          $ref: '#/components/schemas/EmployersEmployersState'
        templates:
          description: Шаблоны писем
          items:
            $ref: '#/components/schemas/VacancyTemplates'
          type: array
        test_result:
          anyOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/SkillVerificationsTestResultWithUrl'
          description: |
            Результат выполнения [теста](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiation-test-results), прикрепленного к вакансии
          nullable: true
          type: object
      title: Общие поля отклика/приглашения
      type: object
    VacancyNegotiationActions:
      properties:
        arguments:
          description: Обязательные и дополнительные аргументы для запроса
          items:
            $ref: '#/components/schemas/VacancyArguments'
          type: array
        enabled:
          description: Возможно ли совершить действие
          type: boolean
        id:
          description: Идентификатор действия
          type: string
        method:
          description: 'HTTP метод, который необходимо выполнить'
          type: string
        name:
          description: Название действия
          type: string
        resulting_employer_state:
          description: 'Документация [Работодательское состояние](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#term-employer-state) по отклику/приглашению, которое будет установлено после совершения действия. Если действие не меняет состояние — `null`'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        templates:
          description: Шаблоны писем
          items:
            $ref: '#/components/schemas/VacancyTemplates'
          type: array
        url:
          description: 'URL, на который необходимо выполнить запрос'
          type: string
      required:
        - id
        - name
        - enabled
        - method
        - url
        - templates
        - arguments
      title: Действия по отклику/приглашению
      type: object
    VacancyTemplates:
      properties:
        id:
          description: Идентификатор шаблона
          type: string
        name:
          description: Название шаблона
          type: string
        url:
          description: Ссылка на шаблон
          type: string
      required:
        - id
        - name
        - quick
        - url
      title: Шаблон
      type: object
    VacancyArguments:
      properties:
        id:
          description: |
            Идентификатор аргумента. Возможные значения:

            * `resume_id` — идентификатор резюме.
            * `vacancy_id` — идентификатор вакансии.
            * `message` — сообщение, которое будет отправлено соискателю на электронную почту. Используйте [шаблоны](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-mail-templates) для получения текстов.
            * `send_sms` — уведомлять ли соискателя о приглашении с помощью SMS. Значение по умолчанию — `false`. Обратите внимание: в SMS-сообщении используется стандартный текст, изменить его нельзя
            * `address_id` — идентификатор [адреса](#tag/Adresa-rabotodatelya), который будет указан в приглашении
          enum:
            - resume_id
            - vacancy_id
            - message
            - send_sms
            - address_id
          type: string
        required:
          description: Обязательность аргумента
          type: boolean
        required_arguments:
          description: 'Идентификаторы аргументов, которые необходимо приложить, если указан данный аргумент. Например, адрес является необязательным, но при его указании необходимо указать также и сообщение'
          items:
            $ref: '#/components/schemas/_IncludesId'
          type: array
      required:
        - id
        - required
        - required_arguments
      title: Аргумент для запроса
      type: object
    SkillVerificationsTestResultWithUrl:
      allOf:
        - $ref: '#/components/schemas/SkillVerificationsTestResultNano'
        - properties:
            alternate_url:
              description: Ссылка на результат теста на сайте
              type: string
            url:
              description: Ссылка на результат теста
              type: string
          required:
            - url
            - alternate_url
          type: object
      title: Информация о результате теста со ссылками
      type: object
    SkillVerificationsTestResultNano:
      description: Краткая информация о результате теста
      properties:
        mark:
          description: |
            Дифференцированная оценка за тест:

            * `UNFAIR` — от 0 до 14 баллов;
            * `FAIR` — от 15 до 44 баллов;
            * `GOOD` — от 45 до 79 баллов;
            * `EXCELLENT` — от 80 до 100 баллов
          enum:
            - UNFAIR
            - FAIR
            - GOOD
            - EXCELLENT
          type: string
        score:
          description: Результат прохождения теста в баллах (от 0 до 100)
          type: integer
      required:
        - score
        - type
      title: Краткая информация о результате теста
      type: object
    EmployersEmployersState:
      properties:
        id:
          description: Идентификатор состояния отклика
          type: string
        name:
          description: Название состояния
          type: string
      required:
        - id
        - name
      title: Информация о состоянии
      type: object
    VacancyDraftVacancyDraftEdit:
      allOf:
        - $ref: '#/components/schemas/VacancyDraftVacancyDraftBodyCommon'
      title: Объект редактирования черновика вакансии
    VacancyDraftVacancyDraftBodyCommon:
      properties:
        accept_handicapped:
          anyOf:
            - $ref: '#/components/schemas/VacancyAcceptHandicapped'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        accept_incomplete_resumes:
          anyOf:
            - $ref: '#/components/schemas/VacancyAcceptIncompleteResumes'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        accept_kids:
          anyOf:
            - $ref: '#/components/schemas/VacancyAcceptKids'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        accept_temporary:
          anyOf:
            - $ref: '#/components/schemas/VacancyAcceptTemporary'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        address:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftAddress'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        allow_messages:
          anyOf:
            - $ref: '#/components/schemas/VacancyAllowMessages'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        area:
          anyOf:
            - $ref: '#/components/schemas/VacancyArea'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          deprecated: true
        areas:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftAreas'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          description: Можно передать не более 50 элементов
        assigned_manager_id:
          $ref: '#/components/schemas/VacancyDraftAssignedManagerId'
        billing_type:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftBillingType'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        branded_template:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftBrandedTemplate'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        code:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftCode'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        contacts:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftContacts'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        custom_employer_name:
          anyOf:
            - $ref: '#/components/schemas/VacancyCustomEmployerName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        department:
          anyOf:
            - $ref: '#/components/schemas/VacancyDepartment'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        description:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftDescription'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        driver_license_types:
          anyOf:
            - $ref: '#/components/schemas/VacancyDriverLicenseTypes'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        employment:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftEmployment'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        experience:
          anyOf:
            - $ref: '#/components/schemas/VacancyExperience'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        key_skills:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftKeySkills'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        languages:
          anyOf:
            - $ref: '#/components/schemas/VacancyLanguages'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        name:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        professional_roles:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftProfessionalRoles'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        response_letter_required:
          anyOf:
            - $ref: '#/components/schemas/VacancyResponseLetterRequired'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        response_notifications:
          anyOf:
            - $ref: '#/components/schemas/VacancyResponseNotifications'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        response_url:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftResponseUrl'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        salary:
          anyOf:
            - $ref: '#/components/schemas/VacancySalary'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        schedule:
          anyOf:
            - $ref: '#/components/schemas/VacancySchedule'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        test:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftTest'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        type:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftType'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        with_zp:
          anyOf:
            - $ref: '#/components/schemas/VacancyDraftWithZp'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        working_days:
          anyOf:
            - $ref: '#/components/schemas/VacancyWorkingDays'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        working_time_intervals:
          anyOf:
            - $ref: '#/components/schemas/VacancyWorkingTimeIntervals'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        working_time_modes:
          anyOf:
            - $ref: '#/components/schemas/VacancyWorkingTimeModes'
            - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Объект черновика вакансии
      type: object
    VacancyDraftType:
      nullable: true
      properties:
        id:
          description: 'Тип из [справочника vacancy_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          minLength: 1
          type: string
      title: Тип
      type: object
    VacancyDraftBillingType:
      nullable: true
      properties:
        id:
          description: 'Биллинговый тип [из справочника vacancy_billing_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      title: Биллинговый тип
      type: object
    VacancyDraftProfessionalRoles:
      description: Список профессиональных ролей
      items:
        $ref: '#/components/schemas/VacancyDraftProfessionalRoleItem'
      nullable: true
      title: Профессиональные роли
      type: array
    VacancyDraftProfessionalRoleItem:
      properties:
        id:
          description: 'Идентификатор профессиональной роли. Элемент справочника [professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)'
          pattern: ^\d+$
          type: string
      title: Объект профессиональной роли
      type: object
    VacancyDraftDescription:
      description: 'Описание в html, минимум 1 символ, для успешной публикации вакансии не менее 200 символов'
      minLength: 1
      nullable: true
      title: Описание
      type: string
    VacancyDraftResponseUrl:
      description: URL отклика для прямых вакансий (`type.id=direct`)
      minLength: 1
      nullable: true
      title: URL
      type: string
    VacancyDraftName:
      description: Название
      minLength: 1
      nullable: true
      title: Название
      type: string
    VacancyDraftContacts:
      description: Контактная информация
      nullable: true
      properties:
        email:
          description: Email
          nullable: true
          type: string
        name:
          description: Имя менеджера
          nullable: true
          type: string
        phones:
          description: Список телефонов для связи
          items:
            $ref: '#/components/schemas/VacancyDraftPhoneItem'
          nullable: true
          type: array
      title: Контакты
      type: object
    VacancyDraftPhoneItem:
      oneOf:
        - $ref: '#/components/schemas/VacancyDraftPhone'
        - $ref: '#/components/schemas/VacancyDraftPhoneFormatted'
      title: Объект телефона для связи
    VacancyDraftPhoneFormatted:
      properties:
        comment:
          description: Комментарий (удобное время для звонка по этому номеру)
          nullable: true
          type: string
        formatted:
          description: Телефонный номер целиком
          pattern: ^\d+$
          type: string
      required:
        - formatted
      title: Отформатированный номер телефона
      type: object
    VacancyDraftPhone:
      properties:
        city:
          description: Код города
          pattern: ^\d+$
          type: string
        comment:
          description: Комментарий (удобное время для звонка по этому номеру)
          nullable: true
          type: string
        country:
          description: Код страны
          pattern: ^\d+$
          type: string
        number:
          description: Абонентская часть телефонного номера
          pattern: ^\d+$
          type: string
      required:
        - country
        - city
        - number
      title: Телефон для черновика
      type: object
    VacancyDraftKeySkills:
      description: 'Список ключевых навыков, не более 30'
      items:
        $ref: '#/components/schemas/VacancyDraftKeySkillItem'
      nullable: true
      title: Ключевые навыки
      type: array
    VacancyDraftKeySkillItem:
      nullable: true
      properties:
        name:
          description: Название ключевого навыка (максимальная длина - 100 символов)
          minLength: 1
          type: string
      title: Объект ключевых навыков
      type: object
    VacancyDraftAssignedManagerId:
      description: 'Идентификатор рабочего аккаунта менеджера, которому перейдет вакансия после публикации'
      nullable: true
      title: 'Менеджер, к которому перейдет вакансия после публикации'
      type: string
    VacancyDraftBrandedTemplate:
      description: |
        Брендированный шаблон вакансий работодателя из [списка доступных](#tag/Informaciya-o-rabotodatele/operation/get-vacancy-branded-templates-list), либо `null`, если не используется у компании
      properties:
        id:
          description: 'Идентификатор брендированного шаблона вакансий работодателя из [списка доступных](#tag/Informaciya-o-rabotodatele/operation/get-vacancy-branded-templates-list)'
          type: string
      required:
        - id
      title: Брендированный шаблон
      type: object
    VacancyDraftAreas:
      description: Список регионов
      items:
        $ref: '#/components/schemas/VacancyArea'
      nullable: true
      title: Регионы публикации вакансии
      type: array
    VacancyDraftEmployment:
      nullable: true
      properties:
        id:
          description: 'Тип занятости из [справочника employment](#tag/Obshie-spravochniki/operation/get-dictionaries). По умолчанию или ошибке в поле ставится full'
          nullable: true
          type: string
      title: Тип занятости
      type: object
    VacancyDraftCode:
      description: Внутренний код вакансии
      minLength: 1
      nullable: true
      title: Код вакансии
      type: string
    VacancyDraftAddress:
      description: Адрес
      nullable: true
      properties:
        id:
          description: 'Адрес из [списка доступных адресов работодателя](#tag/Adresa-rabotodatelya/operation/get-employer-addresses)'
          nullable: true
          pattern: ^\d+$
          type: string
        show_metro_only:
          description: Показывать только метро для указанного адреса
          nullable: true
          type: boolean
      title: Адрес
      type: object
    SuggestsSkillSet:
      additionalProperties: false
      description: Подсказки по ключевым навыкам
      properties:
        items:
          description: Массив найденных ключевых навыков
          items:
            $ref: '#/components/schemas/_IncludesSkillSetItem'
          type: array
      required:
        - items
      title: Подсказки по ключевым навыкам
      type: object
    _IncludesSkillSetItem:
      properties:
        id:
          description: Идентификатор ключевого навыка
          type: string
        text:
          description: Название ключевого навыка
          type: string
      required:
        - id
        - text
      title: Ключевой навык
      type: object
    ResumeStatusReadiness:
      allOf:
        - $ref: '#/components/schemas/ResumeStatus'
        - $ref: '#/components/schemas/ResumeReadiness'
      description: Информация о статусе резюме и готовности резюме к публикации
      title: Статус и готовность резюме
      type: object
    ResumeReadiness:
      properties:
        moderation_note:
          description: |
            Замечания модератора.
            В некоторых случаях замечания могут сопровождаться [блокировкой резюме](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume).
            Полный список возможных замечаний доступен в поле `resume_moderation_note` [в справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          items:
            $ref: '#/components/schemas/ResumeObjectsModerationNote'
          type: array
        progress:
          $ref: '#/components/schemas/ResumeObjectsProgress'
        publish_url:
          description: URL для публикации или обновления резюме
          type: string
      required:
        - publish_url
        - progress
        - moderation_note
      title: Проверка резюме
      type: object
    ResumeObjectsProgress:
      description: Информация о заполненности резюме
      properties:
        mandatory:
          description: 'Список полей, которые обязательны, но еще не заполнены'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        percentage:
          description: Процент заполненности резюме
          type: number
        recommended:
          description: 'Список полей, которые рекомендованы к заполнению, но ещё не заполнены'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
      required:
        - percentage
        - mandatory
        - recommended
      title: Заполненность резюме
      type: object
    ResumeObjectsModerationNote:
      description: |
        Замечания модератора.

        В некоторых случаях замечания могут сопровождаться [блокировкой резюме](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume).

        Полный список возможных замечаний доступен в поле `resume_moderation_note` [в справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
      properties:
        field:
          description: Поле резюме с которым связано замечание
          type: string
        id:
          description: Идентификатор замечания
          type: string
        name:
          description: Описание замечания
          type: string
        pointer:
          description: 'Путь до параметра, с которым связано замечание'
          type: string
      required:
        - id
        - name
      title: Замечания модератора
      type: object
    ResumeStatus:
      properties:
        blocked:
          description: 'Заблокировано ли резюме ([подробнее](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume))'
          type: boolean
        can_publish_or_update:
          description: Можно ли опубликовать или обновить данное резюме
          nullable: true
          type: boolean
        finished:
          description: Заполнено ли резюме
          type: boolean
        status:
          $ref: '#/components/schemas/_IncludesIdName'
          description: |
            [Статус резюме](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume)
      required:
        - blocked
        - finished
        - status
      title: Статус резюме
      type: object
    ResumeAddResumeRequest:
      allOf:
        - $ref: '#/components/schemas/ResumeNullableFields'
        - properties:
            area:
              allOf:
                - $ref: '#/components/schemas/Id'
              description: 'Город проживания. Элемент справочника [areas](#tag/Obshie-spravochniki/operation/get-areas)'
            citizenship:
              description: 'Список гражданств соискателя. Элементы [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)'
              items:
                $ref: '#/components/schemas/_IncludesId'
              type: array
            contact:
              description: |
                Список контактов соискателя.

                При заполнении контактов в резюме необходимо учитывать следующие условия:

                * В резюме обязательно должен быть указан e-mail. Он может быть только один.
                * В резюме должен быть указан хотя бы один телефон, причём можно указывать только один телефон каждого типа.
                * Комментарий можно указывать только для телефонов, для e-mail комментарий не сохранится.
                * Обязательно указать либо телефон полностью в поле `formatted`, либо все три части телефона по отдельности в трёх полях: `country`, `city` и `number`. Если указано и то, и то, используются данные из трёх полей. В поле `formatted` допустимо использовать пробелы, скобки и дефисы. В остальных полях допустимы только цифры
              items:
                $ref: '#/components/schemas/ResumeObjectsContact'
              type: array
            education:
              allOf:
                - $ref: '#/components/schemas/ResumeObjectsEducation'
              description: |
                Образование соискателя.

                Особенности сохранения образования:

                * Если передать и высшее и среднее образование и уровень образования "средний", то сохранится только среднее образование.
                * Если передать и высшее и среднее образование и уровень образования "высшее", то сохранится только высшее образование
              type: object
            experience:
              description: Опыт работы
              items:
                $ref: '#/components/schemas/ResumeObjectsExperienceCreateEditResume'
              minItems: 0
              type: array
            gender:
              allOf:
                - $ref: '#/components/schemas/Id'
              description: 'Пол. Элемент справочника [gender](#tag/Obshie-spravochniki/operation/get-dictionaries)'
            language:
              description: 'Список языков, которыми владеет соискатель. Элементы справочника [languages](#tag/Obshie-spravochniki/operation/get-languages)'
              items:
                $ref: '#/components/schemas/ResumeObjectsLanguage'
              type: array
          type: object
      description: Тело запроса при создании резюме
      title: Резюме
      type: object
    ResumeNullableFields:
      description: Необязательные поля при создании резюме
      properties:
        access:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsAccess'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        birth_date:
          description: День рождения (в формате `ГГГГ-ММ-ДД`)
          nullable: true
          type: string
        business_trip_readiness:
          description: 'Готовность к командировкам. Элемент справочника [business_trip_readiness](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesId'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        certificate:
          description: Список сертификатов соискателя
          items:
            $ref: '#/components/schemas/ResumeObjectsCertificate'
          minItems: 0
          nullable: true
          type: array
        driver_license_types:
          description: Список категорий водительских прав соискателя
          items:
            $ref: '#/components/schemas/ResumeObjectsDriverLicenseTypes'
          nullable: true
          type: array
        employments:
          description: 'Список подходящих соискателю типов занятостей. Элементы справочника [employment](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        first_name:
          description: Имя
          nullable: true
          type: string
        has_vehicle:
          description: Наличие личного автомобиля у соискателя
          nullable: true
          type: boolean
        hidden_fields:
          description: 'Документация [Список скрытых полей](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#hidden-fields). Возможные значения элементов приведены в поле `resume_hidden_fields` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        last_name:
          description: Фамилия
          nullable: true
          type: string
        metro:
          description: |
            Ближайшая станция метро. Элемент справочника [metro](#tag/Obshie-spravochniki/operation/get-metro-stations).
            Если передать метро, не принадлежащее переданной area, поле проигнорируется. Имеет смысл указывать только для `area` с метро
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesId'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        middle_name:
          description: Отчество
          nullable: true
          type: string
        photo:
          description: 'Фотография пользователя (см. [Артефакты](#tag/Rabota-s-artefaktami))'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsPhoto'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        portfolio:
          description: Список изображений в портфолио пользователя
          items:
            $ref: '#/components/schemas/ResumeObjectsPortfolio'
          nullable: true
          type: array
        professional_roles:
          description: 'Массив объектов профролей. Элемент справочника [professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)'
          items:
            $ref: '#/components/schemas/_IncludesId'
          type: array
        recommendation:
          description: Список рекомендаций
          items:
            $ref: '#/components/schemas/ResumeObjectsRecommendation'
          nullable: true
          type: array
        relocation:
          description: Информация о возможности переезда в другой город
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsRelocationPublic'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        resume_locale:
          description: 'Язык, на котором составлено резюме (локаль). Элемент справочника [локали резюме](#tag/Obshie-spravochniki/operation/get-locales)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        salary:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsSalaryAddEdit'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        schedules:
          description: 'Список подходящих соискателю графиков работы. Элементы справочника [schedule](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        site:
          description: Профили в соц. сетях и других сервисах
          items:
            $ref: '#/components/schemas/ResumeObjectsSite'
          nullable: true
          type: array
        skill_set:
          description: Ключевые навыки (список уникальных строк)
          items:
            type: string
          nullable: true
          type: array
        skills:
          description: 'Дополнительная информация, описание навыков в свободной форме'
          nullable: true
          type: string
        title:
          description: Желаемая должность
          nullable: true
          type: string
        total_experience:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsTotalExperience'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        travel_time:
          description: 'Желательное время в пути до работы. Элемент справочника [travel_time](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          oneOf:
            - $ref: '#/components/schemas/_IncludesId'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        work_ticket:
          description: |
            Список регионов, в который соискатель имеет разрешение на работу. Элементы [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)
          items:
            $ref: '#/components/schemas/_IncludesId'
          nullable: true
          type: array
      title: Необязательные поля
      type: object
    ResumeObjectsDriverLicenseTypes:
      properties:
        id:
          description: 'Категория водительских прав соискателя. Элемент справочника [тип водительских прав](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      required:
        - id
      title: Категория водительских прав
      type: object
    ResumeObjectsAccess:
      description: Тип видимости резюме
      properties:
        type:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: |
            Определяет, кому будет доступно резюме в поиске и по прямой ссылке.

            Установить значение параметра можно при [создании](#tag/Rezyume.-Sozdanie-i-obnovlenie/operation/create-resume) или [редактировании](#tag/Rezyume.-Sozdanie-i-obnovlenie/operation/edit-resume) резюме. Возможные значения приведены в поле `resume_access_type` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries).

            С 1 сентября 2021 года тип видимости `everyone` стал недоступен для сохранения из-за законодательных ограничений.

            Чтобы управлять списком работодателей, которые могут просматривать резюме, воспользуйтесь группой методов [Резюме. Списки видимости](#tag/Rezyume.-Spiski-vidimosti)
          type: object
      required:
        - type
      title: Тип видимости
      type: object
    ResumeObjectsRecommendation:
      properties:
        contact:
          description: Контакт
          type: string
        name:
          description: Имя выдавшего рекомендацию
          type: string
        organization:
          description: Организация
          type: string
        position:
          description: Должность
          type: string
      required:
        - name
        - position
        - organization
      title: Рекомендация
      type: object
    ResumeObjectsSite:
      properties:
        type:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: 'Тип профиля. Элемент справочника [resume_contacts_site_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
        url:
          description: Ссылка на профиль или идентификатор
          nullable: true
          type: string
      title: Профиль на сайте
      type: object
    ResumeObjectsRelocationPublic:
      properties:
        area:
          description: 'Список городов, в которые возможен переезд. Имеет смысл только с соответствующим полем `type`'
          items:
            $ref: '#/components/schemas/_IncludesArea'
          type: array
        district:
          description: 'Список районов, в которые возможен переезд. Имеет смысл только с соответствующим полем `type`'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        type:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: 'Готовность к переезду. Элемент справочника [relocation_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
      required:
        - type
      title: Возможность переезда
      type: object
    ResumeObjectsPortfolio:
      properties:
        description:
          description: Описание изображения в портфолио
          nullable: true
          type: string
        id:
          description: Уникальный идентификатор изображения
          type: string
        medium:
          description: |
            URL среднего по размеру изображения. Изображение по данному url доступно ограниченное время, после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернётся `404 Not Found`
          type: string
        small:
          description: |
            URL уменьшенного изображения. Изображение по данному url доступно ограниченное время, после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернётся `404 Not Found`
          type: string
      required:
        - small
        - medium
        - id
      title: Портфолио
      type: object
    ResumeObjectsSalaryAddEdit:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsSalaryProperties'
      required:
        - currency
        - amount
      title: Зарплата
    ResumeObjectsExperienceCreateEditResume:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsExperienceProperties'
      required:
        - start
        - description
        - position
        - company
      title: Опыт работы в организации
    ResumeObjectsExperienceProperties:
      properties:
        area:
          description: 'Регион расположения организации. Элемент [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdNameUrl'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        company:
          description: Название организации
          nullable: true
          type: string
        company_id:
          description: Уникальный идентификатор организации
          nullable: true
          type: string
        company_url:
          description: Сайт компании
          nullable: true
          type: string
        description:
          description: 'Обязанности, функции, достижения'
          nullable: true
          type: string
        employer:
          description: Работодатель
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/EmployersEmployerInfoShort'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        end:
          description: Окончание работы (дата в формате `ГГГГ-ММ-ДД`)
          nullable: true
          type: string
        industries:
          description: 'Список отраслей компании. Возможные значения приведены в [справочнике индустрий](#tag/Obshie-spravochniki/operation/get-industries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        industry:
          description: Отрасль компании
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsIndustry'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        position:
          description: Должность
          type: string
        start:
          description: Начало работы (дата в формате `ГГГГ-ММ-ДД`)
          type: string
      title: Опыт работы в организации
      type: object
    EmployersEmployerInfoShort:
      properties:
        alternate_url:
          description: Ссылка на описание работодателя на сайте
          type: string
        id:
          description: Идентификатор работодателя
          type: string
        logo_urls:
          description: 'Ссылки на изображения логотипов работодателя разных размеров. `original` — это необработанный логотип, который может быть большого размера. Если изначально загруженный компанией логотип меньше, чем 240px и/или 90px по меньшей стороне, то в соответствующих ключах будут ссылки на изображения оригинального размера. Объект может быть `null`, если компания не загрузила логотип. Клиент должен предусмотреть возможность отсутствия логотипа по указанной ссылке (ответ с кодом `404 Not Found`). Логотипы 90 и 240 присутствуют не во всех компаниях'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesLogoUrls'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          description: Название работодателя
          type: string
        url:
          description: URL для получения полного описания работодателя
          type: string
      required:
        - id
        - name
        - url
        - alternate_url
      title: Работодатель
      type: object
    ResumeObjectsLanguage:
      allOf:
        - $ref: '#/components/schemas/_IncludesLanguageProperties'
      required:
        - level
        - id
      title: Язык и уровень владения
    _IncludesLanguageProperties:
      allOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - properties:
            level:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              description: 'Уровень владения. Возможные значения элементов приведены в поле `language_level` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: object
      title: Язык и уровень владения
      type: object
    ResumeObjectsContact:
      allOf:
        - $ref: '#/components/schemas/_IncludesContactProperties'
      required:
        - type
        - value
      title: Контакт
    _IncludesContactProperties:
      properties:
        comment:
          description: Комментарий к контакту
          nullable: true
          type: string
        need_verification:
          description: Требуется ли подтверждение телефона
          nullable: true
          type: boolean
        preferred:
          description: Является ли предпочтительным способом связи
          nullable: false
          type: boolean
        type:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: 'Тип контакта. Элемент справочника [preferred_contact_type](#tag/Obshie-spravochniki/operation/get-dictionaries)'
        value:
          description: 'Значение контакта. Для телефона - объект, для email - строка'
          oneOf:
            - $ref: '#/components/schemas/_IncludesContactEmailValue'
            - $ref: '#/components/schemas/_IncludesContactPhoneValue'
        verified:
          description: Является ли телефон подтвержденным
          nullable: true
          type: boolean
      title: Контакт
      type: object
    _IncludesContactPhoneValue:
      nullable: true
      properties:
        city:
          description: Код города
          nullable: false
          type: string
        country:
          description: Код страны
          nullable: false
          type: string
        formatted:
          description: Отформатированный номер телефона
          nullable: false
          type: string
        number:
          description: Номер телефона
          nullable: false
          type: string
      required:
        - country
        - city
        - number
        - formatted
      title: Телефон
      type: object
    _IncludesContactEmailValue:
      description: Электронная почта
      format: email
      nullable: true
      title: Электронная почта
      type: string
    Id:
      description: Информация о созданном объекте
      nullable: false
      properties:
        id:
          description: Идентификатор созданного объекта
          example: '22'
          type: string
      required:
        - id
      title: Id созданного объекта
      type: object
    ErrorsResumeBadArgumentResumeErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        - $ref: '#/components/schemas/ErrorsResumeAddEditErrors'
      title: Ошибки
    ErrorsResumeAddEditErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsResumeAddEditError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки при создании или редактировании резюме
    ErrorsResumeAddEditError:
      additionalProperties: false
      properties:
        description:
          description: Описание ошибки для пользователя
          example: Значение ниже допустимого
          type: string
        pointer:
          description: |
            Путь до параметра, в котором возникла ошибка.

            Для указания параметра используется формат JsonPointer [RFC 6901](https://tools.ietf.org/html/rfc6901)
          example: /education/additional/1/year
          type: string
        reason:
          description: |
            Причина ошибки. Возможные значения:

              * `required` — поле является обязательным для заполнения.
              * `not_found` — не найдено значение по переданному ID.
              * `faculty_without_university` — нельзя установить факультет без университета.
              * `not_in_dictionary` — не найдено значение по переданному ID в справочнике.
              * `not_a_leaf` — значение не должно содержать потомков.
              * `end_date_before_start_date` — значение `end` меньше `start`.
              * `not_country` — значение `area` должно быть страной (см. [справочник стран](#tag/Obshie-spravochniki/operation/get-countries)).
              * `more_than_one_native_language` — указано более одного родного языка.
              * `must_contain_unique` — переданные значения должны быть уникальны.
              * `from_different_profareas` — переданы значения из разных отраслей.
              * `duplicate` — значение уже было использовано.
              * `bad_image_type` — передано значение изображения неправильного типа (для `portfolio` необходимы значения из [GET /artifacts/portfolio](#tag/Rabota-s-artefaktami/operation/get-artifacts-portfolio), для photo — [GET /artifacts/photo](#tag/Rabota-s-artefaktami/operation/get-artifact-photos)) .
              * `processing` — объект в процессе обработки.
              * `preferred_must_be_unique` — предпочитаемый тип связи должен быть уникальным.
              * `preferred_contact_not_specified` — предпочитаемый тип связи не указан или не указано значение контакта.
              * `need_country_city_number_or_formatted` — телефон в контактах указан в неверном формате (см. [условия заполнения контактов в резюме](#tag/Rezyume.-Usloviya-zapolneniya-polej/operation/get-new-resume-conditions)).
              * `invalid` — ошибка в значении поля (поля должны соответствовать [условиям заполнения](#tag/Rezyume.-Usloviya-zapolneniya-polej/operation/get-resume-conditions)).
              * `greater_than_max` — значение больше максимума .
              * `less_than_min` — значение меньше минимума.
              * `earlier_than_min` — указанная дата раньше минимально возможной.
              * `later_than_max` — указанная дата позже максимально возможной.
              * `length_less_than_min` — количество символов в поле меньше минимума.
              * `length_greater_than_max` — количество символов в поле больше максимума.
              * `size_less_than_min` — количество элементов меньше минимума.
              * `size_greater_than_max` — количество элементов больше максимума.
              * `send_metro_without_area` — не передано значение поля `area` при заполненном метро.
              * `not_belong_this_city` — указанного метро нет в указанном городе.
              * `required_with_not_started_career` — необходимо отправлять опыт работы, если специализация не начало карьеры.
              * `not_match_regexp` — значение не соответствует регулярному выражению.
              * `more_than_one` — передано более одного email.
              * `not_available` — недопустимое значение
          example: not_available
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_json_data
          example: bad_json_data
          type: string
        value:
          description: Название поля с ошибкой
          example: year
          type: string
      required:
        - type
        - value
        - reason
        - description
        - pointer
      title: Ошибка при создании или редактировании резюме
      type: object
    ErrorsCommonBadArgumentErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки в параметрах запроса
    ErrorsCommonBadArgumentError:
      additionalProperties: false
      properties:
        reason:
          description: |
            Причина ошибки. Возможные значения:
              * `too_long_value` — слишком длинное значение
              * `too_many_arguments` — слишком много аргументов
              * `invalid` — значение введено некорректно
          example: too_long_value
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_argument
          example: bad_argument
          type: string
        value:
          description: |
            Название поля с ошибкой
          example: resume_id
          type: string
      required:
        - type
      title: Ошибка в параметре запроса
      type: object
    ErrorsVacancyErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Oшибки
    ErrorsVacancyError:
      additionalProperties: false
      properties:
        found:
          description: Количество найденных дублей вакансии
          type: number
        items:
          description: Массив идентификаторов вакансий-дублей
          items:
            nullable: false
            properties:
              id:
                description: Идентификатор вакансии
                example: 78789890
                type: number
            required:
              - id
            type: object
          minItems: 1
          type: array
        reason:
          description: Причина ошибки
          example: is_empty
          type: string
        type:
          description: Тип ошибки
          example: bad_json_data
          type: string
        value:
          description: Наименование поля с ошибкой
          example: specializations
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    DictionariesAreaResponse:
      items:
        $ref: '#/components/schemas/DictionariesAreaItem'
      title: Список регионов
      type: array
    DictionariesAreaItem:
      properties:
        areas:
          description: Дочерние регионы
          items:
            $ref: '#/components/schemas/DictionariesAreaItem'
          minItems: 0
          type: array
        id:
          description: Идентификатор региона
          type: string
        name:
          description: Название региона
          type: string
        name_prepositional:
          description: |
            Применимо только для русской локализации.

            Название региона в предложном падеже с предлогом "в", например: "в Москве". Возвращается, если в запросе передан параметр `additional_case=prepositional`
          nullable: true
          type: string
        parent_id:
          description: Идентификатор родительского региона
          nullable: true
          type: string
      required:
        - id
        - name
        - areas
      title: Регион
    ErrorsResumeVisibilityErrorsBadRequest:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadRequestErrors'
        - $ref: '#/components/schemas/ErrorsResumeVisibilityErrors'
      title: Ошибки
    ErrorsCommonBadRequestErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonBadRequestError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибка в теле запроса
    ErrorsCommonBadRequestError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_request
          example: bad_request
          type: string
      required:
        - type
      title: Общая ошибка
      type: object
    ErrorsResumeVisibilityErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsResumeVisibilityError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки в параметрах запроса
    ErrorsResumeVisibilityError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_argument
            - resume_visibility_list
          example: bad_argument
          type: string
        value:
          description: |
            Название поля с ошибкой:

            - `per_page` — передано невалидное количество элементов на странице (максимум 100).
            - `unknown_employer` — передан неизвестный идентификатор работодателя.
            - `limit_exceeded` — превышен лимит списка видимости.
            - `too_many_employers` — передано слишком много работодателей.
            - `id` — передан невалидный идентификатор работодателя
          enum:
            - per_page
            - unknown_employer
            - limit_exceeded
            - too_many_employers
          example: per_page
          type: string
      required:
        - type
        - value
      title: Ошибка в параметре запроса
      type: object
    VacanciesVacancyListResponse:
      oneOf:
        - $ref: '#/components/schemas/VacanciesActiveListItems'
        - $ref: '#/components/schemas/VacanciesMatchListItems'
      title: Успешный ответ
    VacanciesMatchListItems:
      allOf:
        - properties:
            items:
              description: 'Список вакансий, подходящих под резюме'
              items:
                $ref: '#/components/schemas/VacanciesMatchListItem'
              minItems: 0
              type: array
          required:
            - items
          type: object
        - $ref: '#/components/schemas/_IncludesPagination'
      title: 'Список вакансий, подходящих под резюме (?resume_id={resume_id})'
    VacanciesMatchListItem:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyShort'
        - $ref: '#/components/schemas/VacanciesMatchVacancyFields'
      title: 'Информация о вакансии, подходящей под резюме'
      type: object
    VacanciesMatchVacancyFields:
      properties:
        address:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacanciesAddress'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        can_invite:
          description: Можно ли пригласить соискателя на данную вакансию
          type: boolean
        created_at:
          description: Дата и время публикации вакансии
          type: string
        employer_negotiations_state:
          description: 'Работодательское состояние отклика/приглашения для этой вакансии с указанным резюме, либо `null` если отклика/приглашения не было. Возможные значения перечислены в поле `employer_states` в [списке работодательских состояний по вакансии](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        manager:
          $ref: '#/components/schemas/VacancyManagerOutput'
        negotiations_actions:
          description: 'Действия для [создания отклика](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#add-invite). Если создать отклик невозможно (например, нет нужных услуг), то вернется пустой массив'
          items:
            $ref: '#/components/schemas/VacancyNegotiationActions'
          minItems: 0
          type: array
        negotiations_state:
          description: 'Состояние отклика/приглашения для этой вакансии с указанным резюме, либо `null` если отклика/приглашения не было. Возможные значения перечислены в поле `negotiations_state` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        sort_point_distance:
          description: |
            Расстояние в метрах между центром сортировки (заданной параметрами `sort_point_lat`, `sort_point_lng`) и указанным в вакансии адресом. В случае, если в адресе указаны только станции метро, выдается расстояние между центром сортировки и средней геометрической точкой указанных станций.
            Значение `sort_point_distance` выдается только в случае, если заданы параметры `sort_point_lat`, `sort_point_lng`, `order_by=distance`
          nullable: true
          type: number
        templates:
          description: Шаблоны писем
          items:
            $ref: '#/components/schemas/VacancyTemplates'
          type: array
      required:
        - negotiations_state
        - employer_negotiations_state
        - can_invite
        - negotiations_actions
        - manager
        - created_at
      title: Совпадение полей вакансии
      type: object
    VacancyManagerOutput:
      properties:
        first_name:
          description: Имя менеджера
          type: string
        id:
          description: 'Контактное лицо (менеджер) по размещаемой вакансии, по умолчанию текущий пользователь'
          type: string
        last_name:
          description: Фамилия менеджера
          type: string
        middle_name:
          description: Второе имя менеджера
          nullable: true
          type: string
      required:
        - id
        - first_name
        - last_name
        - middle_name
      title: Менеджер
      type: object
    VacanciesVacancyShort:
      properties:
        address:
          $ref: '#/components/schemas/VacancyAddressRawOutput'
        alternate_url:
          description: Ссылка на представление вакансии на сайте
          type: string
        apply_alternate_url:
          description: Ссылка на отклик на вакансию на сайте
          type: string
        archived:
          description: Находится ли данная вакансия в архиве
          type: boolean
        area:
          $ref: '#/components/schemas/_IncludesArea'
        department:
          $ref: '#/components/schemas/VacanciesObjectsDepartment'
        employer:
          $ref: '#/components/schemas/VacanciesObjectsEmployer'
        has_test:
          description: Информация о наличии прикрепленного тестового задании к вакансии
          type: boolean
        id:
          description: Идентификатор вакансии
          type: string
        name:
          description: Название вакансии
          type: string
        premium:
          description: Является ли данная вакансия премиум-вакансией
          type: boolean
        published_at:
          description: Дата и время публикации вакансии
          type: string
        relations:
          description: 'Возвращает связи соискателя с вакансией. Значения из поля `vacancy_relation` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          items:
            $ref: '#/components/schemas/VacancyRelationItem'
          type: array
        response_letter_required:
          description: Обязательно ли заполнять сообщение при отклике на вакансию
          type: boolean
        response_url:
          description: URL отклика для прямых вакансий (`type.id=direct`)
          nullable: true
          type: string
        salary:
          $ref: '#/components/schemas/VacancySalary'
        show_logo_in_search:
          description: Отображать ли лого для вакансии в поисковой выдаче
          nullable: true
          type: boolean
        type:
          $ref: '#/components/schemas/VacancyTypeOutput'
        url:
          description: URL вакансии
          type: string
      required:
        - id
        - premium
        - name
        - department
        - response_letter_required
        - area
        - salary
        - type
        - published_at
        - archived
        - apply_alternate_url
        - url
        - alternate_url
        - relations
        - employer
        - has_test
      title: Сокращенное представление вакансии
      type: object
    VacanciesObjectsEmployer:
      description: Информация о компании работодателя
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/VacanciesEmployerPublic'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Объект
      type: object
    VacanciesActiveListItems:
      allOf:
        - properties:
            items:
              description: Список опубликованных вакансий
              items:
                $ref: '#/components/schemas/VacanciesActiveListItem'
              minItems: 0
              type: array
          required:
            - items
          type: object
        - $ref: '#/components/schemas/_IncludesPagination'
      title: Список опубликованных вакансий (?resume_id не задан)
    VacanciesActiveListItem:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyShort'
        - $ref: '#/components/schemas/VacancyBillingTypeObject'
        - $ref: '#/components/schemas/VacanciesActiveVacancyFields'
      title: Информация об опубликованной вакансии
      type: object
    VacanciesActiveVacancyFields:
      properties:
        address:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacanciesAddress'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        can_upgrade_billing_type:
          $ref: '#/components/schemas/VacancyCanUpgradeBillingType'
        counters:
          $ref: '#/components/schemas/VacancyCountersForActive'
        created_at:
          description: Дата и время публикации вакансии
          type: string
        expires_at:
          $ref: '#/components/schemas/VacancyExpiresAt'
        has_updates:
          $ref: '#/components/schemas/VacancyHasUpdates'
        manager:
          $ref: '#/components/schemas/VacancyManagerOutput'
        sort_point_distance:
          description: |
            Расстояние в метрах между центром сортировки (заданной параметрами `sort_point_lat`, `sort_point_lng`) и указанным в вакансии адресом. В случае, если в адресе указаны только станции метро, выдается расстояние между центром сортировки и средней геометрической точкой указанных станций.
            Значение `sort_point_distance` выдается только в случае, если заданы параметры `sort_point_lat`, `sort_point_lng`, `order_by=distance`
          nullable: true
          type: number
      required:
        - counters
        - expires_at
        - manager
        - can_upgrade_billing_type
        - has_updates
        - created_at
      title: Поля в опубликованной вакансии
      type: object
    VacancyCountersForActive:
      properties:
        calls:
          description: Общее количество звонков
          type: number
        invitations:
          description: Количество приглашений на вакансию
          type: number
        invitations_and_responses:
          description: Количество откликнувшихся и приглашенных соискателей на вакансию
          type: number
        new_missed_calls:
          description: Общее количество новых пропущенных звонков
          type: number
        responses:
          description: Количество откликов на вакансию
          type: number
        resumes_in_progress:
          description: Количество резюме в работе на вакансию
          type: number
        unread_responses:
          description: Количество непросмотренных откликов на вакансию
          type: number
        views:
          description: Количество просмотров вакансии
          type: number
      required:
        - views
        - responses
        - unread_responses
        - resumes_in_progress
        - invitations
      title: Счетчики
      type: object
    VacanciesVacancyApplicationBody:
      properties:
        message:
          description: |
            Сопроводительное письмо к отклику.

            Является обязательным, если в вакансии указано, что обязательно сопроводительное письмо.

            Максимальная длина — 10000 символов
          nullable: true
          type: string
        resume_id:
          description: 'Идентификатор резюме, которым производится отклик'
          type: string
        vacancy_id:
          description: 'Идентификатор вакансии, на которую происходит отклик'
          type: string
      required:
        - vacancy_id
        - resume_id
      title: Тело запроса
    WebhookSubscriptionsOutput:
      additionalProperties: false
      properties:
        items:
          description: Cписок подписок пользователя
          items:
            $ref: '#/components/schemas/WebhookSubscriptionItem'
          minItems: 0
          type: array
      required:
        - items
      title: Объект с подписками
      type: object
    WebhookSubscriptionItem:
      allOf:
        - $ref: '#/components/schemas/WebhookSubscriptionCommonItem'
        - additionalProperties: false
          properties:
            id:
              description: Идентификатор подписки
              example: q1ww2e2r4ty
              type: string
          required:
            - id
          type: object
      title: Подписка пользователя
    WebhookSubscriptionCommonItem:
      properties:
        actions:
          description: Cписок событий
          discriminator:
            mapping:
              NEGOTIATION_EMPLOYER_STATE_CHANGE: '#/components/schemas/WebhookActionNegotiationEmployerStateChange'
              NEW_NEGOTIATION_VACANCY: '#/components/schemas/WebhookActionNewNegotiationVacancy'
              NEW_RESPONSE_OR_INVITATION_VACANCY: '#/components/schemas/WebhookActionNewResponseOrInvitationVacancy'
              VACANCY_ARCHIVATION: '#/components/schemas/WebhookActionVacancyArchivation'
              VACANCY_CHANGE: '#/components/schemas/WebhookActionVacancyChange'
              VACANCY_PROLONGATION: '#/components/schemas/WebhookActionVacancyProlongation'
              VACANCY_PUBLICATION_FOR_VACANCY_MANAGER: '#/components/schemas/WebhookActionVacancyPublicationForVacancyManager'
            propertyName: type
          items:
            anyOf:
              - $ref: '#/components/schemas/WebhookActionNewNegotiationVacancy'
              - $ref: '#/components/schemas/WebhookActionNewResponseOrInvitationVacancy'
              - $ref: '#/components/schemas/WebhookActionVacancyArchivation'
              - $ref: '#/components/schemas/WebhookActionVacancyChange'
              - $ref: '#/components/schemas/WebhookActionVacancyProlongation'
              - $ref: '#/components/schemas/WebhookActionVacancyPublicationForVacancyManager'
              - $ref: '#/components/schemas/WebhookActionNegotiationEmployerStateChange'
          minItems: 1
          type: array
        url:
          description: 'URL, на который будет отправляться POST запрос при наступлении события'
          example: 'http://www.example.com'
          format: uri
          type: string
      required:
        - url
        - actions
      title: Объект подписки
      type: object
    WebhookActionVacancyProlongation:
      additionalProperties: false
      properties:
        settings:
          anyOf:
            - $ref: '#/components/schemas/WebhookActionVacancyOnlyMineSettings'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
        type:
          description: Продление вакансии
          enum:
            - VACANCY_PROLONGATION
          type: string
      required:
        - type
      title: Подписка на VACANCY_PROLONGATION
      type: object
    WebhookActionVacancyOnlyMineSettings:
      additionalProperties: false
      properties:
        vacancies_only_mine:
          default: false
          description: |
            Если `true`, сервис будет присылать уведомления только о вакансиях текущего пользователя.

            По умолчанию `false` — сервис будет присылать уведомления о всех вакансиях, к которым есть доступ
          type: boolean
      title: Настройка на подписку только на мои вакансии
      type: object
    WebhookActionNewResponseOrInvitationVacancy:
      additionalProperties: false
      properties:
        settings:
          anyOf:
            - $ref: '#/components/schemas/WebhookActionVacancyOnlyMineSettings'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
        type:
          description: 'Новый отклик или приглашение на вакансию. Данное событие будет вызываться как на отклик со стороны соискателя, так и на приглашение со стороны работодателя'
          enum:
            - NEW_RESPONSE_OR_INVITATION_VACANCY
          type: string
      required:
        - type
      title: Подписка на NEW_RESPONSE_OR_INVITATION_VACANCY
      type: object
    WebhookActionNewNegotiationVacancy:
      additionalProperties: false
      properties:
        settings:
          anyOf:
            - $ref: '#/components/schemas/WebhookActionVacancyOnlyMineSettings'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
        type:
          description: Новый отклик на вакансию. Данное событие будет вызываться только на отклик со стороны соискателя
          enum:
            - NEW_NEGOTIATION_VACANCY
          type: string
      required:
        - type
      title: Подписка на NEW_NEGOTIATION_VACANCY
      type: object
    WebhookActionVacancyChange:
      additionalProperties: false
      properties:
        settings:
          anyOf:
            - $ref: '#/components/schemas/WebhookActionVacancyOnlyMineSettings'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
        type:
          description: |
            Изменение вакансии. Аккумулирует изменения, внесенные за несколько последних секунд, и отправляет вебхук, содержащий время последнего изменения.

            Если вы внесете два изменения с разницей в одну секунду, сервис отправит только один вебхук, который будет содержать время последнего изменения. Если изменение одно, сервис отправит вебхук с задержкой в несколько секунд
          enum:
            - VACANCY_CHANGE
          type: string
      required:
        - type
      title: Подписка на VACANCY_CHANGE
      type: object
    WebhookActionNegotiationEmployerStateChange:
      additionalProperties: false
      properties:
        settings:
          anyOf:
            - $ref: '#/components/schemas/WebhookActionVacancyOnlyMineSettings'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
        type:
          description: |
            Перемещение резюме кандидата на другой этап вакансии.

            Содержит следующую информацию:

            * кто переместил резюме; 
            * идентификатор резюме;
            * исходный статус резюме; 
            * новый статус резюме
          enum:
            - NEGOTIATION_EMPLOYER_STATE_CHANGE
          type: string
      required:
        - type
      title: Подписка на NEGOTIATION_EMPLOYER_STATE_CHANGE
      type: object
    WebhookActionVacancyPublicationForVacancyManager:
      additionalProperties: false
      properties:
        type:
          description: 'Публикация вакансии. Событие присылается только для менеджера-владельца вакансии при создании вакансии, отложенной публикации или публикации из черновика'
          enum:
            - VACANCY_PUBLICATION_FOR_VACANCY_MANAGER
          type: string
      required:
        - type
      title: Подписка на VACANCY_PUBLICATION_FOR_VACANCY_MANAGER
      type: object
    WebhookActionVacancyArchivation:
      additionalProperties: false
      properties:
        settings:
          anyOf:
            - $ref: '#/components/schemas/WebhookActionVacancyOnlyMineSettings'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
        type:
          description: Архивация вакансии
          enum:
            - VACANCY_ARCHIVATION
          type: string
      required:
        - type
      title: Подписка на VACANCY_ARCHIVATION
      type: object
    ResumesSuitableResumesResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/ResumesSuitableResumeItems'
          type: object
        - properties:
            overall:
              $ref: '#/components/schemas/ResumesSuitableResumeOverall'
          required:
            - overall
          type: object
      title: 'Информация о резюме, которыми можно откликнуться на вакансию'
      type: object
    ResumesSuitableResumeItems:
      properties:
        items:
          description: 'Список резюме, которыми можно откликнуться на вакансию'
          items:
            $ref: '#/components/schemas/ResumesSuitableResumeItem'
          minItems: 0
          type: array
      required:
        - items
      title: 'Список резюме, которыми можно откликнуться на вакансию'
      type: object
    ResumesSuitableResumeItem:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeShortForOwner'
          type: object
        - properties:
            access:
              $ref: '#/components/schemas/ResumeObjectsAccess'
            finished:
              description: Заполнено ли резюме
              type: boolean
            requires_completion:
              description: |
                Принимает значение `true`, если резюме является неполным. Применимо только для вакансий, у которых не установлен флаг «принимать неполные резюме». 

                При получении `true` в данном поле, соискатель должен заполнить обязательные поля (доступны в [выдаче полного резюме](#tag/Prosmotr-rezyume/operation/get-resume)) перед откликом на данную вакансию
              type: boolean
            status:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              description: |
                Статус [резюме](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume)
          required:
            - requires_completion
            - finished
            - status
            - access
          type: object
      title: 'Резюме, подходящее для отклика'
      type: object
    ResumeResumeShortForOwner:
      properties:
        actions:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsActionsForOwner'
          description: Дополнительные действия
          type: object
        age:
          description: Возраст
          nullable: true
          type: number
        alternate_url:
          description: URL резюме на сайте
          type: string
        area:
          description: 'Город проживания. Элемент справочника [areas](#tag/Obshie-spravochniki/operation/get-areas)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdNameUrl'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        auto_hide_time:
          $ref: '#/components/schemas/ResumeObjectsAutoHideTime'
        can_view_full_info:
          description: Доступен ли просмотр контактной информации в резюме текущему работодателю
          nullable: true
          type: boolean
        certificate:
          description: Список сертификатов соискателя
          items:
            $ref: '#/components/schemas/ResumeObjectsCertificate'
          minItems: 0
          type: array
        created_at:
          description: Дата и время создания резюме
          type: string
        download:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsDownload'
          description: Ссылки для скачивания резюме в разных форматах
          type: object
        education:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsEducation'
          description: |
            Образование соискателя. 

            Особенности сохранения образования:

            * Если передать и высшее и среднее образование и уровень образования "средний", то сохранится только среднее образование.
            * Если передать и высшее и среднее образование и уровень образования "высшее", то сохранится только высшее образование
          type: object
        experience:
          description: Опыт работы
          items:
            $ref: '#/components/schemas/ResumeObjectsExperienceForOwner'
          minItems: 0
          type: array
        first_name:
          description: Имя
          nullable: true
          type: string
        gender:
          description: 'Пол соискателя. Возможные значения перечислены в поле `gender` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        hidden_fields:
          description: 'Документация [Список скрытых полей](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#hidden-fields). Возможные значения элементов приведены в поле `resume_hidden_fields` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          minItems: 0
          type: array
        id:
          description: Идентификатор резюме
          type: string
        last_name:
          description: Фамилия
          nullable: true
          type: string
        marked:
          description: Выделено ли резюме в поиске
          type: boolean
        middle_name:
          description: Отчество
          nullable: true
          type: string
        photo:
          description: Фотография пользователя
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ProfilePhoto'
          type: object
        platform:
          allOf:
            - $ref: '#/components/schemas/_IncludesId'
          description: 'Ресурс, на котором было размещено резюме'
          type: object
        salary:
          $ref: '#/components/schemas/ResumeObjectsSalaryProperties'
          description: Желаемая зарплата
        title:
          description: Желаемая должность
          nullable: true
          type: string
        total_experience:
          $ref: '#/components/schemas/ResumeObjectsTotalExperience'
          description: Общий опыт работы
        updated_at:
          description: Дата и время обновления резюме
          type: string
        url:
          description: URL резюме на сайте
          type: string
      required:
        - id
        - url
        - alternate_url
        - created_at
        - updated_at
        - certificate
        - education
        - experience
        - download
        - hidden_fields
        - actions
        - marked
      title: Сокращенное представление резюме при запросе от владельца
      type: object
    ResumeObjectsAutoHideTime:
      description: |
        Время автоскрытия резюме при неактивности пользователя. 

        Определяет период, по истечение которого резюме будет скрыто, если пользователь не совершал никаких действий
        Возможные значения перечислены при запросе [типов видимости резюме](#tag/Rezyume.-Spiski-vidimosti/operation/get-resume-access-types)

        Поле доступно для просмотра и редактирования только для пользователей rabota.by
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Время автоскрытия резюме при неактивности пользователя
      type: object
    ResumeObjectsExperienceForOwner:
      properties:
        area:
          description: 'Регион расположения организации. Элемент [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdNameUrl'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        company:
          description: Название организации
          nullable: true
          type: string
        company_id:
          description: Уникальный идентификатор организации
          nullable: true
          type: string
        company_url:
          description: Сайт компании
          nullable: true
          type: string
        employer:
          description: Работодатель
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/EmployersEmployerInfoShort'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        end:
          description: Окончание работы (дата в формате `ГГГГ-ММ-ДД`)
          nullable: true
          type: string
        industries:
          description: 'Список отраслей компании. Возможные значения приведены в [справочнике индустрий](#tag/Obshie-spravochniki/operation/get-industries)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        industry:
          description: Отрасль компании
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumeObjectsIndustry'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        position:
          description: Должность
          type: string
        start:
          description: Начало работы (дата в формате `ГГГГ-ММ-ДД`)
          type: string
      required:
        - industries
        - position
        - start
      title: Опыт работы в организации
      type: object
    ProfilePhoto:
      description: 'Фотография пользователя (см. [Артефакты](#tag/Rabota-s-artefaktami))'
      properties:
        '40':
          deprecated: true
          type: string
        '100':
          deprecated: true
          type: string
        '500':
          deprecated: true
          type: string
        id:
          description: Уникальный идентификатор изображения
          type: string
        medium:
          description: |
            URL среднего по размеру изображения. Изображение по данному url доступно ограниченное время, после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернётся `404 Not Found`
          type: string
        small:
          description: |
            URL уменьшенного изображения. Изображение по данному url доступно ограниченное время, после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернётся `404 Not Found`
          type: string
      required:
        - id
        - small
        - medium
      title: Фотография пользователя
      type: object
    ResumesSuitableResumeOverall:
      description: Содержит информацию об общем количестве резюме у соискателя
      properties:
        already_applied:
          description: 'Количество резюме, которыми пользователь уже откликался на эту вакансию'
          type: number
        not_published:
          description: Количество неопубликованных резюме
          type: number
        unavailable:
          description: 'Количество резюме, которыми невозможно откликнуться на данную вакансию по другим причинам (конфликтующие настройки видимости резюме и т.п.)'
          type: number
      required:
        - not_published
        - already_applied
        - unavailable
      title: Общее количество резюме
      type: object
    ResumePhoneGenerateCodeGenerateCode:
      properties:
        can_request_code_again_in:
          description: Ближайшая возможная повторная отправка кода в секундах
          example: '15'
          type: string
        notification_type:
          description: Тип сгенерированного сообщения
          example: sms
          type: string
      title: Сгенерированный код
      type: object
    ResumesAccessTypes:
      properties:
        auto_hide_time_options:
          description: Варианты времени автоскрытия резюме при неактивности пользователя. Возвращается только для пользователей rabota.by
          items:
            $ref: '#/components/schemas/ResumesAutoHideTimeOptions'
          nullable: true
          type: array
        items:
          description: Доступные типы видимости резюме
          items:
            $ref: '#/components/schemas/ResumesAccessTypesItem'
          type: array
      required:
        - items
      title: Типы видимости резюме
      type: object
    ResumesAccessTypesItem:
      properties:
        active:
          description: Выбран ли тип видимости
          nullable: true
          type: boolean
        id:
          description: Идентификатор типа видимости
          type: string
        limit:
          description: Максимальное количество компаний в списке видимости. Возвращается только для типов `blacklist` и `whitelist`
          nullable: true
          type: number
        list_url:
          description: Ссылка на список видимости. Возвращается только для типов `blacklist` и `whitelist`
          nullable: true
          type: string
        name:
          description: Имя типа видимости
          type: string
        total:
          description: 'Количество компаний, добавленных в соответствующий список видимости. Возвращается только для типов `blacklist` и `whitelist`'
          nullable: true
          type: number
      required:
        - id
        - name
      title: Тип видимости
      type: object
    ResumesAutoHideTimeOptions:
      properties:
        active:
          description: Выбран ли вариант автоскрытия
          nullable: true
          type: boolean
        id:
          description: Идентификатор варианта автоскрытия
          type: string
        name:
          description: Название варианта автоскрытия
          type: string
      required:
        - id
        - name
      title: Вариант автоскрытия
      type: object
    VacanciesPreferredNegotiationsOrder:
      properties:
        order_type:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: Тип сортировки
      required:
        - order_type
      title: Предпочитаемый способ сортировки откликов
      type: object
    EmployersEmployerDepartmentsResponse:
      properties:
        items:
          description: Список департаментов работодателя
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
      required:
        - items
      title: Департаменты работодателя
    LocalesLocales:
      items:
        $ref: '#/components/schemas/LocalesLocaleItem'
      title: Список доступных локалей
      type: array
    LocalesLocaleItem:
      allOf:
        - $ref: '#/components/schemas/LocalesResumeLocaleItem'
        - properties:
            current:
              description: 'Для текущей локали `true` , `false` для остальных'
              type: boolean
          required:
            - id
            - name
            - current
          type: object
      title: Локаль
    LocalesResumeLocaleItem:
      properties:
        id:
          description: Идентификатор локали
          type: string
        name:
          description: Имя локали
          type: string
      required:
        - id
        - name
      title: Локализация
    DictionariesFacultiesResponse:
      items:
        $ref: '#/components/schemas/_IncludesIdName'
      title: Список факультетов
      type: array
    ErrorsVacancyApplyForbiddenErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            bad_argument:
              deprecated: true
              enum:
                - vacancy_id
                - resume_id
              type: string
            bad_arguments:
              deprecated: true
              items:
                properties:
                  description:
                    type: string
                  name:
                    description: |
                      Поле, в котором допущена ошибка. 
                      Возможные значения:
                      * `vacancy_id` - указан не валидный идентификатор
                      * `resume_id` - указан не валидный идентификатор
                    enum:
                      - vacancy_id
                      - resume_id
                    type: string
                type: object
              type: array
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyApplyForbiddenError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки при отклике на вакансию
    ErrorsVacancyApplyForbiddenError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - negotiations
          example: negotiations
          type: string
        value:
          description: |
            Ошибки при отклике на вакансию:
              * `invalid_vacancy` — вакансия из отклика/приглашения была архивирована или скрыта.
              * `resume_not_found` — резюме из отклика/приглашения скрыто, удалено или не найдено.
              * `already_applied` — в системе уже есть отклик/приглашение на указанную вакансию (связка `resume_id` + `vacancy_id`)
              * `test_required` — для отклика необходимо пройти тест.
              * `resume_visibility_conflict` — невозможно откликнуться на анонимную вакансию, используя резюме с [типом видимости](#tag/Rezyume.-Spiski-vidimosti/operation/get-resume-access-types) `whitelist`.
              * `edit_forbidden` — редактирование сообщения недоступно.
              * `application_denied` — общая ошибка запрета отклика в случае, когда дополнительная информация недоступна.
              * `limit_exceeded` — превышен лимит количества откликов/приглашений.
              * `wrong_state` — действие по отклику/приглашению в данном статусе невозможно.
              * `empty_message` — передан пустой текст сопроводительного письма.
              * `too_long_message` — передан слишком длинный текст сопроводительного письма.
              * `inappropriate_language_message` — передан текст сопроводительного письма, который содержит нецензурную лексику.
              * `resource_policy_violation_message` — передан текст сопроводительного письма, который нарушает правила использования сервиса.  
              * `address_not_found` — переданный адрес не существует, либо принадлежит другому работодателю.
              * `not_enough_purchased_services` — не хватает оплаченных услуг. Например, [доступа к базе резюме](https://hh.ru/price#dbaccess).
              * `in_a_row_limit` — превышено количество последовательных сообщений в переписке. Необходимо дождаться ответа собеседника на сообщение
              * `overall_limit` — превышен лимит сообщений.
              * `no_invitation` — переписка недоступна, так как в отклике ещё не было приглашения.
              * `message_cannot_be_empty` — сообщение в переписке не может быть пустым.
              * `disabled_by_employer` — возможность переписки по отклику отключена работодателем.
              * `resume_deleted` — резюме, с которым совершался отклик, удалено или скрыто.
              * `archived` — вакансия, на которую совершался отклик, заархивирована.
              * `chat_archived` — отклик/приглашение заархивировано
              * `topic_arcived` — отклик/приглашение заархивировано
          enum:
            - invalid_vacancy
            - resume_not_found
            - already_applied
            - test_required
            - resume_visibility_conflict
            - edit_forbidden
            - application_denied
            - limit_exceeded
            - wrong_state
            - empty_message
            - too_long_message
            - inappropriate_language_message
            - resource_policy_violation_message
            - address_not_found
            - not_enough_purchased_services
            - in_a_row_limit
            - overall_limit
            - no_invitation
            - message_cannot_be_empty
            - disabled_by_employer
            - resume_deleted
            - archived
            - chat_archived
            - topic_archived
          example: invalid_vacancy
          type: string
      required:
        - type
        - value
      title: Ошибка при отклике на вакансию
      type: object
    ErrorsCommonCaptchaErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonCaptchaError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Плохая авторизация
    ErrorsResumeBadArgTooManyResumesErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        - $ref: '#/components/schemas/ErrorsResumeAddEditErrors'
        - $ref: '#/components/schemas/ErrorsResumeTooManyResumesErrors'
      title: Ошибки
    ErrorsResumeTooManyResumesErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsResumeTooManyResumesError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибка при создании резюме
    ErrorsResumeTooManyResumesError:
      additionalProperties: false
      description: Превышено максимальное количество резюме
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - resumes
          example: resumes
          type: string
        value:
          description: Значение ошибки
          enum:
            - total_limit_exceeded
          example: total_limit_exceeded
          type: string
      required:
        - type
        - value
      title: Ошибка при создании резюме
      type: object
    AuthCode:
      additionalProperties: false
      properties:
        client_id:
          description: 'Идентификатор, полученный при [создании приложения](https://dev.hh.ru/admin)'
          example: ETVQdMs2n9VKw7SMXkh9nX5H
          minLength: 1
          type: string
        client_secret:
          description: 'Защищенный ключ, полученный при [создании приложения](https://dev.hh.ru/admin)'
          example: 95dNjB8FmtxQsmygm6dtEy53
          minLength: 1
          type: string
        code:
          description: |
            Значение `authorization_code`, полученное при [перенаправлении пользователя](#get-authorization_code)
          example: 29CtxMcaA8pRFDYyC8e8Gkm4
          minLength: 1
          type: string
        grant_type:
          description: Способ запроса токена
          enum:
            - authorization_code
          example: authorization_code
          type: string
        redirect_uri:
          description: |
            Uri для перенаправления пользователя после авторизации. Если не указать, используется из настроек приложения. При наличии происходит валидация значения. Вероятнее всего, потребуется сделать urlencode значения параметра
          example: 'http://www.example.com/oauth'
          minLength: 1
          type: string
      required:
        - grant_type
        - client_id
        - client_secret
        - redirect_uri
        - code
      title: Параметры для получения токена пользователя
      type: object
    ErrorsVacancyAddEditCombinedBadJsonDataErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
        - $ref: '#/components/schemas/ErrorsVacancyAddEditBadJsonDataErrors'
      title: Ошибки
    ErrorsVacancyAddEditBadJsonDataErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyAddEditBadJsonDataError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Невалидный json
    ErrorsVacancyAddEditBadJsonDataError:
      properties:
        description:
          description: Описание ошибки
          example: Значение неправильное
          nullable: true
          type: string
        pointer:
          description: |
            Путь до параметра, в котором возникла ошибка.

            Для указания параметра используется формат JsonPointer [RFC 6901](https://tools.ietf.org/html/rfc6901)
          example: /contacts/phones/1/number
          type: string
        reason:
          description: |
            Причина ошибки. Возможные значения:
              * `required` - отстутствует поле в запросе
              * `invalid` - недопустимое значение в поле запроса
              * `is_empty` — пустое значение
              * `wrong_size` — значение имеет неправильный размер
              * `is_too_short` — значение имеет слишком маленький размер
              * `is_too_long` — значение имеет слишком большой размер
              * `currency_code_is_invalid` — валюта заработной платы введена некорректно
              * `chosen_area_is_not_a_leaf_or_not_exist` — местоположение вакансии введено неверно (например, передан несуществующий ID) или не является конечным регионом (город, населенный пункт)
              * `email_in_description` — в описании вакансии содержится email
              * `anonymous_vacancy_contains_address` — в анонимной вакансии содержится адрес работодателя
              * `anonymous_vacancy_has_real_company_name` — в названии вакансии содержится название компании работодателя
              * `only_for_anonymous_type` — действие доступно только для анонимных вакансий
              * `address_is_disabled` — адрес недоступен
              * `vacancy_type_employer_billing_type_mismatch` — тип вакансии не совместим с текущим биллинг-типом
              * `only_for_direct_type` — действие доступно только для прямых вакансий
              * `address_is_empty_with_checked_show_metro_flag` — введен пустой адрес, но указана опция показывать метро
              * `address_has_no_metro_but_checked_show_metro_flag` — по введенному адресу не доступно метро, но указана опция показывать метро
              * `default_vacancy_branded_template_is_invalid_or_not_enough_purchased_services` — в запросе указан шаблон, который отсутствует в списке доступных шаблонов (этот список можно получить [запросом](#tag/Informaciya-o-rabotodatele/operation/get-vacancy-branded-templates-list)). Также шаблон может отсутствовать в списке доступных шаблонов, если не оплачена услуга использования [брендированного шаблона вакансии](https://hh.ru/price/branding)
              * `department_code_prohibited_in_anonymous_vacancy` — нельзя указать код подразделения для анонимной вакансии
              * `branded_template_prohibited_in_anonymous_vacancy` — использование брендированного шаблона невозможно для анонимной вакансии
              * `value_conflict_with_business_rules` — публикация вакансии с указанным `billing_type` запрещена
              * `can_not_accept_kids` — вакансия недоступна несовершеннолетним
              * `can_not_edit_vacancy_after_moderation` — нельзя изменить название вакансии после модерации
          enum:
            - required
            - invalid
            - is_empty
            - wrong_size
            - is_too_short
            - is_too_long
            - currency_code_is_invalid
            - chosen_area_is_not_a_leaf_or_not_exist
            - email_in_description
            - anonymous_vacancy_contains_address
            - anonymous_vacancy_has_real_company_name
            - only_for_anonymous_type
            - address_is_disabled
            - vacancy_type_employer_billing_type_mismatch
            - only_for_direct_type
            - address_is_empty_with_checked_show_metro_flag
            - address_has_no_metro_but_checked_show_metro_flag
            - default_vacancy_branded_template_is_invalid_or_not_enough_purchased_services
            - department_code_prohibited_in_anonymous_vacancy
            - branded_template_prohibited_in_anonymous_vacancy
            - value_conflict_with_business_rules
            - can_not_accept_kids
            - can_not_edit_vacancy_after_moderation
          example: is_empty
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_json_data
            - vacancies
          example: bad_json_data
          type: string
        value:
          description: Название поля с ошибкой
          example: salary
          type: string
      required:
        - type
      title: Ошибка при публикации или редактировании вакансии
      type: object
    SalaryStatisticsEvaluationResponse:
      properties:
        market_salary:
          $ref: '#/components/schemas/SalaryStatisticsMarketSalary'
        resulting_parameters:
          $ref: '#/components/schemas/SalaryStatisticsResultingParameters'
      required:
        - market_salary
        - resulting_parameters
      title: Оценка зарплат
      type: object
    SalaryStatisticsMarketSalary:
      properties:
        average:
          description: Среднее расчетное значение
          type: number
        bottom:
          description: Нижняя граница рыночного диапазона (25-й процентиль)
          type: number
        maximum:
          description: Максимальные значения (90-й процентиль)
          type: number
        median:
          description: Медианное рыночное значение
          type: number
        minimum:
          description: Минимальные значения (10-й процентиль)
          type: number
        upper:
          description: Верхняя граница рыночного диапазона (75-й процентиль)
          type: number
      required:
        - upper
        - minimum
        - median
        - average
        - maximum
        - bottom
      title: Статистика рыночных зарплат
      type: object
    SalaryStatisticsResultingParameters:
      description: 'Набор параметров, по которым происходил расчет'
      properties:
        areas:
          description: Коды регионов
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        employee_levels:
          description: Уровни специалистов
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        employers_count:
          description: 'Количество работодателей, позиции которых участвуют в выборке'
          type: number
        excluded_areas:
          description: Исключенные коды регионов
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        indirect_calculation:
          description: Параметры косвенной оценки зарплат
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/SalaryStatisticsIndirectCalculation'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        industries:
          description: Отрасли
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        positions_count:
          description: 'Количество позиций, по которым построена выборка'
          type: number
        sources:
          description: |
            Источники данных. Возможные значения:

            * `SALARIES` — данные из банка зарплат;
            * `RESUMES` — данные из резюме;
            * `VACANCIES` — данные из вакансий
          items:
            enum:
              - SALARIES
              - RESUMES
              - VACANCIES
            type: string
          type: array
        specialities:
          description: Профессиональные области и специализаций
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
      required:
        - areas
        - sources
        - employers_count
        - positions_count
      title: Параметры
      type: object
    SalaryStatisticsIndirectCalculation:
      properties:
        indirect_areas:
          description: 'Регионы, использованные при получении косвенной оценки'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        indirect_employee_levels:
          description: 'Уровни специалистов, включенные в выборку в регионе, использованном при получении косвенной оценки'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          nullable: true
          type: array
        indirect_regional_ratio:
          description: 'Региональный коэффициент, который был использован для получения косвенной оценки зарплат'
          type: number
      required:
        - indirect_regional_ratio
      title: Косвенная оценка
      type: object
    ErrorsCommonNotFoundErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonNotFoundError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Не найдено
    ErrorsCommonNotFoundError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - not_found
          example: not_found
          type: string
      required:
        - type
      title: Ошибка
      type: object
    VacanciesArchivedVacancyListResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/VacanciesArchivedVacancyList'
          type: object
      title: Вакансии в архиве
      type: object
    VacanciesArchivedVacancyList:
      properties:
        items:
          description: Массив вакансий в архиве
          items:
            $ref: '#/components/schemas/VacanciesVacancyArchived'
          type: array
      required:
        - items
      title: Вакансии в архиве
    VacanciesVacancyArchived:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacancyShort'
        - $ref: '#/components/schemas/VacanciesVacancyArchivedFields'
      title: Представление вакансии в архиве
      type: object
    VacanciesVacancyArchivedFields:
      properties:
        archived_at:
          description: Дата и время архивации вакансии
          type: string
        counters:
          $ref: '#/components/schemas/VacancyCountersForArchivedOrHidden'
          type: object
        created_at:
          description: Дата и время публикации вакансии
          type: string
        sort_point_distance:
          description: |
            Расстояние в метрах между центром сортировки (заданной параметрами `sort_point_lat`, `sort_point_lng`) и указанным в вакансии адресом. В случае, если в адресе указаны только станции метро, выдается расстояние между центром сортировки и средней геометрической точкой указанных станций.

            Значение `sort_point_distance` выдается только в случае, если заданы параметры `sort_point_lat`, `sort_point_lng`, `order_by=distance`
          nullable: true
          type: number
      required:
        - counters
        - archived_at
        - created_at
      title: Поля для архивной вакансии
      type: object
    VacancyCountersForArchivedOrHidden:
      allOf:
        - $ref: '#/components/schemas/VacancyCounters'
        - properties:
            invitations_and_responses:
              description: Количество откликов и приглашений на вакансию
              type: number
          type: object
      title: Счетчики для вакансии
      type: object
    VacancyCounters:
      description: |
        Число откликов на вакансию.
        Доступно для соискательской авторизации и авторизации приложения при использовании параметра `responses_count_enabled=true`
      properties:
        responses:
          description: Количество откликов на вакансию с момента публикации
          type: number
        total_responses:
          description: Количество откликов на вакансию с момента создания
          type: number
      title: Счетчики
      type: object
    MeChangeName:
      properties:
        first_name:
          description: Имя
          example: Иван
          minLength: 1
          type: string
        last_name:
          description: Фамилия
          example: Иванов
          minLength: 1
          type: string
        middle_name:
          description: 'Отчество, поле может быть пустым'
          example: Иванович
          minLength: 0
          type: string
      required:
        - last_name
        - first_name
        - middle_name
      title: ФИО
      type: object
    DictionariesSalaryStatisticsProfessionalAreasResponse:
      description: Список профобластей и специализаций
      items:
        allOf:
          - $ref: '#/components/schemas/_IncludesIdName'
          - $ref: '#/components/schemas/DictionariesSalaryStatisticsSpecializations'
        description: Профобласть и специализации
        type: object
      title: Список профобластей и специализаций
      type: array
    DictionariesSalaryStatisticsSpecializations:
      properties:
        specializations:
          items:
            $ref: '#/components/schemas/_IncludesIdNameDesc'
          type: array
      required:
        - specializations
      title: Специализации
      type: object
    _IncludesIdNameDesc:
      allOf:
        - $ref: '#/components/schemas/_IncludesId'
        - $ref: '#/components/schemas/_IncludesNameDescription'
      title: 'Объект с идентификатором, названием и описанием'
      type: object
    _IncludesNameDescription:
      properties:
        description:
          description: Описание
          type: string
        name:
          description: Название
          type: string
      required:
        - name
        - description
      title: Объект
      type: object
    ResumesResumeVisibilityListSearchResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/ResumesResumeVisibilityListSearchProperties'
          type: object
      title: Найденные работодатели
      type: object
    ResumesResumeVisibilityListSearchProperties:
      properties:
        items:
          description: Список работодателей
          items:
            allOf:
              - $ref: '#/components/schemas/ResumesGetResumeVisibilityListItem'
              - $ref: '#/components/schemas/ResumesSelectedObject'
          type: array
      required:
        - items
      title: Список видимости резюме
      type: object
    ResumesSelectedObject:
      properties:
        selected:
          description: Присутствует ли работодатель в списке видимости резюме
          type: boolean
      required:
        - selected
      title: Присутствие работодателя в списке видимости резюме
      type: object
    ResumesGetResumeVisibilityListItem:
      properties:
        alternate_url:
          description: Ссылка на описание работодателя на сайте
          type: string
        id:
          description: Идентификатор работодателя
          type: string
        logo_urls:
          $ref: '#/components/schemas/_IncludesLogoUrls90'
          description: Ссылка на логотип работодателя. Клиент должен предусмотреть вероятность отсутствия ресурса по указанной ссылке
        name:
          description: Название работодателя
          type: string
        url:
          description: Ссылка на детальное описание работодателя
          type: string
      required:
        - id
        - name
        - url
        - alternate_url
        - logo_urls
      title: Список работодателей
      type: object
    VacanciesVacancyStatsResponse:
      properties:
        items:
          description: Статистика за последние пять дней существования вакансии
          items:
            $ref: '#/components/schemas/VacanciesVacancyStatsItem'
          maxItems: 5
          minItems: 5
          type: array
      required:
        - items
      title: Статистика по опубликованной вакансии за 5 дней
      type: object
    VacanciesVacancyStatsItem:
      properties:
        date:
          description: Дата в формате `YYYY-MM-DD`
          type: string
        responses:
          description: Количество откликов на вакансию. `null` если дата в будущем или данных на эту дату нет
          nullable: true
          type: number
        views:
          description: Количество просмотров вакансии. `null` если дата в будущем или данных на эту дату нет
          nullable: true
          type: number
      required:
        - date
      title: Статистика по вакансии
      type: object
    SuggestsCompanies:
      additionalProperties: false
      description: Подсказки по организациям
      properties:
        items:
          description: Информация о найденных организациях
          items:
            $ref: '#/components/schemas/SuggestsCompanyItem'
          title: Массив найденных организаций
          type: array
      required:
        - items
      title: Подсказки по организациям
      type: object
    SuggestsCompanyItem:
      allOf:
        - $ref: '#/components/schemas/SuggestsEmployerItem'
        - properties:
            area:
              $ref: '#/components/schemas/SuggestsArea'
            industries:
              description: Сферы деятельности
              items:
                $ref: '#/components/schemas/_IncludesIdName'
              type: array
          required:
            - area
          type: object
      title: Информация о найденных компаниях
      type: object
    SuggestsEmployerItem:
      properties:
        id:
          description: Идентификатор организации
          type: string
        logo_urls:
          $ref: '#/components/schemas/SuggestsLogoUrl'
          description: Ссылка на логотип организации
          type: object
        text:
          description: Название организации
          type: string
        url:
          description: Сайт организации
          type: string
      required:
        - id
        - text
      title: Информация о найденных работодателях
    SuggestsLogoUrl:
      properties:
        '90':
          description: URL логотипа
          type: string
      required:
        - '90'
      title: Ссылка на логотип
    SuggestsArea:
      properties:
        id:
          description: Идентификатор региона
          type: string
        name:
          description: Название региона
          type: string
      required:
        - id
        - name
      title: Регион
    ErrorsNegotiationNegotiationsNotFoundErrors:
      description: Информация о возникших ошибках
      oneOf:
        - $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
        - $ref: '#/components/schemas/ErrorsNegotiationNotFoundErrors'
      title: Не найдено
    ErrorsNegotiationNotFoundErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание типа ошибки
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsNegotiationNotFoundError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Не найдено
    ErrorsNegotiationNotFoundError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - negotiations
          example: negotiations
          type: string
        value:
          description: Уточнения по ошибке
          enum:
            - topic_not_found
          example: topic_not_found
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    ErrorsVacancyApplyBadRequestErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            bad_argument:
              deprecated: true
              enum:
                - vacancy_id
                - resume_id
              type: string
            bad_arguments:
              deprecated: true
              items:
                properties:
                  description:
                    type: string
                  name:
                    description: |
                      Поле, в котором допущена ошибка. 
                      Возможные значения:
                      * `vacancy_id` - указан не валидный идентификатор
                      * `resume_id` - указан не валидный идентификатор
                    enum:
                      - vacancy_id
                      - resume_id
                    type: string
                type: object
              type: array
            description:
              description: Описание ошибки
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyApplyBadRequestError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки отклика на вакансию
    ErrorsVacancyApplyBadRequestError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - negotiations
          example: negotiations
          type: string
        value:
          description: |
            Название поля с ошибкой:

            * `vacancy_not_found` — вакансия не найдена.
            * `resume_not_found` — резюме из отклика/приглашения скрыто, удалено или не найдено.
            * `limit_exceeded` — превышен лимит количества откликов/приглашений
            * `resource_policy_violation` — отклик нарушает правила пользования сервисом
            * `inappropriate_language` — отклик содержит нецензурную лексику
          enum:
            - vacancy_not_found
            - resume_not_found
            - limit_exceeded
            - resource_policy_violation
            - inappropriate_language
          example: vacancy_not_found
          type: string
      required:
        - type
        - value
      title: Ошибка в параметре запроса
      type: object
    ErrorsBadRequestPublishResumeErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: |
                Описание причины ошибки. Возможные причины:

                * Не заполнены обязательные поля.

                  Чтобы понять, какие именно поля не заполнены, воспользуйтесь методом [просмотр резюме](#tag/Rezyume.-Prosmotr-informacii/operation/get-resume). Обязательные поля перечислены в поле `progress.mandatory`).

                * Не отредактированы поля после блокировки модератором.
                * Резюме находится на проверке у модератора
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsBadRequestPublishResumeError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки при публикации резюме
    ErrorsBadRequestPublishResumeError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_request
          example: bad_request
          type: string
      required:
        - type
      title: Ошибка при публикации резюме
      type: object
    NegotiationsNegotiationGetResponse:
      anyOf:
        - $ref: '#/components/schemas/NegotiationsApplicantNegotiation'
        - $ref: '#/components/schemas/NegotiationsEmployerNegotiation'
      title: Успешный ответ
      type: object
    NegotiationsApplicantNegotiation:
      allOf:
        - $ref: '#/components/schemas/NegotiationsObjectsTopicItem'
        - properties:
            resume:
              description: Короткое представление резюме
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/NegotiationsObjectsTopicResume'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
            url:
              description: Ссылка на полную версию отклика
              type: string
          required:
            - url
          type: object
      title: Информация об отклике/приглашении (соискатель)
      type: object
    NegotiationsObjectsTopicItem:
      allOf:
        - $ref: '#/components/schemas/NegotiationsObjectsTopicItemCommon'
        - properties:
            decline_allowed:
              description: 'Можно ли [скрыть отклик](#tag/Perepiska-(otklikipriglasheniya)-dlya-soiskatelya/operation/hide-active-response) вместе с сообщением работодателю об отказе'
              type: boolean
            hidden:
              description: Скрыт ли текущий отклик от соискателя
              type: boolean
            job_search_status:
              description: Статус поиска работы кандидатом. Для получения данных передайте параметр `with_job_search_status=true`
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/_IncludesIdName'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
            phone_calls:
              description: Представление истории звонков по вакансии
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/NegotiationsPhoneCalls'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
            vacancy:
              description: Короткое представление вакансии
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/_IncludesNullableObject'
                - $ref: '#/components/schemas/VacanciesNegotiationsVacancyShort'
              type: object
          required:
            - hidden
            - decline_allowed
          type: object
      title: Отклик
      type: object
    NegotiationsPhoneCalls:
      properties:
        items:
          description: Список звонков
          items:
            $ref: '#/components/schemas/NegotiationsPhoneCallItem'
          type: array
        picked_up_phone_by_opponent:
          description: Ответил ли абонент соискателю хотя бы один раз
          type: boolean
      required:
        - picked_up_phone_by_opponent
        - items
      title: История звонков
      type: object
    NegotiationsPhoneCallItem:
      properties:
        creation_time:
          description: Дата и время создания звонка
          type: string
        duration_seconds:
          description: Длительность звонка в секундах
          nullable: true
          type: number
        id:
          description: Идентификатор звонка
          type: number
        last_change_time:
          description: Дата и время обновления звонка
          nullable: true
          type: string
        status:
          description: |
            Статус звонка.

            Возможные значения перечислены в разделе `phone_call_status` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          type: string
      required:
        - id
        - status
        - creation_time
      title: Звонок
      type: object
    VacanciesNegotiationsVacancyShort:
      properties:
        address:
          $ref: '#/components/schemas/VacancyAddressRawOutput'
        alternate_url:
          description: Ссылка на представление вакансии на сайте
          type: string
        apply_alternate_url:
          description: Ссылка на отклик на вакансию на сайте
          type: string
        archived:
          description: Находится ли данная вакансия в архиве
          type: boolean
        area:
          $ref: '#/components/schemas/_IncludesArea'
        created_at:
          description: Дата и время публикации вакансии
          type: string
        department:
          $ref: '#/components/schemas/VacanciesObjectsDepartment'
        employer:
          $ref: '#/components/schemas/VacanciesObjectsEmployer'
        has_test:
          description: Информация о наличии прикрепленного тестового задании к вакансии
          type: boolean
        id:
          description: Идентификатор вакансии
          type: string
        insider_interview:
          $ref: '#/components/schemas/VacanciesObjectsInsiderInterview'
        name:
          description: Название вакансии
          type: string
        premium:
          description: Является ли данная вакансия премиум-вакансией
          type: boolean
        professional_roles:
          $ref: '#/components/schemas/VacancyProfessionalRolesOutput'
        published_at:
          description: Дата и время публикации вакансии
          type: string
        response_letter_required:
          description: Обязательно ли заполнять сообщение при отклике на вакансию
          type: boolean
        response_url:
          description: URL отклика для прямых вакансий (`type.id=direct`)
          nullable: true
          type: string
        salary:
          $ref: '#/components/schemas/VacancySalary'
        show_logo_in_search:
          description: Отображать ли лого для вакансии в поисковой выдаче
          nullable: true
          type: boolean
        sort_point_distance:
          description: |
            Расстояние в метрах между центром сортировки (заданной параметрами `sort_point_lat`, `sort_point_lng`) и указанным в вакансии адресом. В случае, если в адресе указаны только станции метро, выдается расстояние между центром сортировки и средней геометрической точкой указанных станций.
            Значение `sort_point_distance` выдается только в случае, если заданы параметры `sort_point_lat`, `sort_point_lng`, `order_by=distance`
          nullable: true
          type: number
        type:
          $ref: '#/components/schemas/VacancyTypeOutput'
        url:
          description: URL вакансии
          type: string
      required:
        - id
        - premium
        - name
        - department
        - response_letter_required
        - area
        - salary
        - type
        - published_at
        - archived
        - apply_alternate_url
        - url
        - alternate_url
        - employer
        - has_test
      title: Сокращенное представление вакансии
      type: object
    NegotiationsObjectsTopicResume:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeNanoWithUrl'
        - properties:
            created_at:
              description: Дата и время создания резюме
              type: string
            updated_at:
              description: Дата и время обновления резюме
              type: string
          required:
            - created_at
            - updated_at
          type: object
      title: Сокращенное представление резюме
      type: object
    NegotiationsEmployerNegotiation:
      allOf:
        - $ref: '#/components/schemas/NegotiationsObjectsTopicItemCommon'
        - $ref: '#/components/schemas/NegotiationsNegotiationCommonFields'
        - properties:
            resume:
              description: Короткое представление резюме
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/_IncludesNullableObject'
                - $ref: '#/components/schemas/NegotiationsObjectsEmployerTopicResume'
              type: object
            vacancy:
              description: Короткое представление вакансии
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/VacanciesNegotiationsVacancyShort'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
          type: object
      title: Информация об отклике/приглашении (работодатель)
      type: object
    NegotiationsObjectsEmployerTopicResume:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeShort'
        - $ref: '#/components/schemas/_IncludesUrl'
        - properties:
            job_search_status:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdNameLastChangeTime'
              description: |
                Для получения данных нужно передать параметр `with_job_search_status=true`. 
                Возможные значения перечислены в поле `job_search_statuses_employer` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          type: object
      title: Короткое представление резюме
    ResumeResumeShort:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeProfile'
        - $ref: '#/components/schemas/ResumeResumeShortAdditionalFields'
      title: Сокращенное представление резюме
      type: object
    ResumeResumeProfile:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeNano'
        - properties:
            age:
              description: Возраст
              nullable: true
              type: number
            area:
              $ref: '#/components/schemas/ResumeObjectsArea'
            can_view_full_info:
              description: Доступен ли просмотр контактной информации в резюме текущему работодателю
              nullable: true
              type: boolean
            certificate:
              description: Список сертификатов соискателя
              items:
                $ref: '#/components/schemas/ResumeObjectsCertificate'
              minItems: 0
              type: array
            created_at:
              description: Дата и время создания резюме
              type: string
            download:
              allOf:
                - $ref: '#/components/schemas/ResumeObjectsDownload'
              description: Ссылки для скачивания резюме в разных форматах
              type: object
            education:
              allOf:
                - $ref: '#/components/schemas/ResumeObjectsEducation'
              description: |
                Образование соискателя. 

                Особенности сохранения образования:

                * Если передать и высшее и среднее образование и уровень образования "средний", то сохранится только среднее образование.
                * Если передать и высшее и среднее образование и уровень образования "высшее", то сохранится только высшее образование
              type: object
            experience:
              description: Опыт работы
              items:
                $ref: '#/components/schemas/ResumeObjectsExperience'
              minItems: 0
              type: array
            first_name:
              description: Имя
              nullable: true
              type: string
            gender:
              $ref: '#/components/schemas/ResumeObjectsGender'
            hidden_fields:
              description: 'Справочник [Список скрытых полей](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#hidden-fields). Возможные значения элементов приведены в поле `resume_hidden_fields` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              items:
                $ref: '#/components/schemas/_IncludesIdName'
              minItems: 0
              type: array
            last_name:
              description: Фамилия
              nullable: true
              type: string
            marked:
              default: false
              description: Выделено ли резюме в поиске
              type: boolean
            middle_name:
              description: Отчество
              nullable: true
              type: string
            platform:
              allOf:
                - $ref: '#/components/schemas/_IncludesId'
              description: 'Ресурс, на котором было размещено резюме'
              type: object
            salary:
              $ref: '#/components/schemas/ResumeObjectsSalaryProperties'
            total_experience:
              $ref: '#/components/schemas/ResumeObjectsTotalExperience'
            updated_at:
              description: Дата и время обновления резюме
              type: string
          required:
            - created_at
            - updated_at
            - certificate
            - education
            - experience
            - download
            - hidden_fields
          type: object
      title: Сокращенное представление резюме
      type: object
    ResumeObjectsExperience:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsExperienceProperties'
      required:
        - start
        - position
        - industries
      title: Опыт работы в организации
    EmployersEmployersBlacklistedResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/EmployersEmployersBlacklisted'
          type: object
      title: Скрытые работодатели
      type: object
    EmployersEmployersBlacklisted:
      properties:
        items:
          description: Массив скрытых работодателей
          items:
            $ref: '#/components/schemas/EmployersEmployersBlacklistedItem'
          type: array
        limit_reached:
          description: Превышено ли максимальное количество элементов в списке
          type: boolean
      title: Чёрный список работодателей
    EmployersEmployersBlacklistedItem:
      properties:
        alternate_url:
          description: Ссылка на представление компании на сайте
          nullable: true
          type: string
        id:
          description: Идентификатор компании
          nullable: true
          type: string
        logo_urls:
          description: Ссылки на логотипы работодателя разных размеров
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesLogoUrls'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        name:
          description: Название компании
          type: string
        open_vacancies:
          description: Количество открытых вакансий у работодателя
          type: number
        url:
          description: 'URL, на который нужно сделать GET-запрос, чтобы получить информацию о компании'
          nullable: true
          type: string
        vacancies_url:
          description: Ссылка на поисковую выдачу вакансий данной компании
          nullable: true
          type: string
      required:
        - name
        - open_vacancies
      title: Информация о скрытом работодателе
      type: object
    EmployerManagerTypesResponse:
      properties:
        items:
          items:
            $ref: '#/components/schemas/EmployerManagerTypesEmployerManagerTypesItem'
          title: Список типов и прав менеджера
          type: array
      required:
        - items
      title: Успешный ответ
    EmployerManagerTypesEmployerManagerTypesItem:
      properties:
        available_permissions:
          description: 'Список прав, которые можно дать данному типу менеджера'
          items:
            $ref: '#/components/schemas/EmployerManagerTypesAvailablePermissions'
          type: array
        id:
          description: Идентификатор типа менеджера
          type: string
        name:
          description: Название типа менеджера
          type: string
      required:
        - id
        - name
        - available_permissions
      title: Тип и права менеджера
    EmployerManagerTypesAvailablePermissions:
      properties:
        id:
          description: Идентификатор права
          type: string
        name:
          description: Название права
          type: string
      required:
        - id
        - name
      title: Типы прав доступа
    ErrorsVacancyProlongateForbidden:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        - $ref: '#/components/schemas/ErrorsVacancyProlongateErrors'
      title: Ошибки
    ErrorsVacancyProlongateErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyProlongateError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Oшибки при продлении вакансии
    ErrorsVacancyProlongateError:
      additionalProperties: false
      properties:
        type:
          description: Тип ошибки
          enum:
            - vacancies
          example: vacancies
          type: string
        value:
          description: |
            Причина ошибки:

            * `not_enough_purchased_services` — купленных услуг недостаточно для продления данного типа вакансии.
            * `quota_exceeded` — квота менеджера на публикацию данного типа вакансии закончилась.
            * `prolongation_forbidden` — продление вакансий недоступно текущему менеджеру.
            * `unavailable_for_archived` — продление недоступно для архивной вакансии.
            * `too_early` — продление раньше времени
          enum:
            - not_enough_purchased_services
            - quota_exceeded
            - prolongation_forbidden
            - unavailable_for_archived
            - too_early
          example: quota_exceeded
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    VacanciesPreferredNegotiationsOrderRequest:
      properties:
        order:
          description: 'Идентификатор типа сортировки. Возможные значения представлены в поле `order_types` [коллекции откликов и приглашений](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations). Не все типы сортировки из списка доступны для изменения'
          type: string
      required:
        - order
      title: Предпочитаемая сортировка откликов
      type: object
    EmployerManagersEmployerManagerLimits:
      properties:
        left:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersResumeView'
          description: 'Количество оставшихся просмотров резюме. В этом параметре содержится лимит просмотров на компанию. Из-за этого он может быть меньше, чем доступно текущему пользователю'
        limits:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersResumeView'
          description: Лимит на просмотр резюме
        spend:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersResumeView'
          description: Количество просмотренных резюме
      required:
        - limits
        - spend
        - left
      title: Дневной лимит просмотра резюме
    EmployerManagersResumeView:
      properties:
        resume_view:
          description: Просмотры резюме через сайт
          type: integer
        resume_view_from_api:
          description: 'Просмотры резюме из API. Возвращаются, если они предусмотрены в текущей конфигурации доступа к резюме для работодателя'
          type: integer
      required:
        - resume_view
      title: Просмотры резюме
    EmployerManagersAddEmployerManager:
      properties:
        additional_phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Дополнительный телефон менеджера
        area:
          $ref: '#/components/schemas/EmployerManagersAreaId'
        email:
          description: Адрес электронной почты менеджера
          type: string
        first_name:
          description: Имя менеджера
          type: string
        is_main_contact_person:
          description: Является ли менеджер основным контактным лицом
          type: boolean
        last_name:
          description: Фамилия менеджера
          type: string
        manager_type:
          $ref: '#/components/schemas/EmployerManagersManagerTypeId'
        middle_name:
          description: Отчество менеджера
          type: string
        permissions:
          description: 'Список [прав менеджера](#tag/Menedzhery-rabotodatelya/operation/get-employer-manager-types)'
          items:
            $ref: '#/components/schemas/EmployerManagersPermissions'
          type: array
        phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Основной телефон менеджера
        position:
          description: Должность менеджера
          type: string
      required:
        - manager_type
        - email
        - position
        - first_name
        - last_name
        - is_main_contact_person
        - phone
        - area
      title: Информация о новом менеджере
    EmployerManagersPermissions:
      properties:
        id:
          description: Идентификатор права
          type: string
      required:
        - id
      title: Права доступа
    EmployerManagersPhone:
      properties:
        city:
          description: Код города
          type: string
        comment:
          description: Комментарий
          type: string
        country:
          description: Код страны
          type: string
        formatted:
          description: Номер телефона отформатированный
          type: string
        number:
          description: Номер
          type: string
      required:
        - country
        - city
        - number
      title: Телефон
    EmployerManagersManagerTypeId:
      properties:
        id:
          description: 'Идентификатор [типа менеджера](#tag/Menedzhery-rabotodatelya/operation/get-employer-manager-types)'
          type: string
      required:
        - id
      title: Тип менеджера
    EmployerManagersAreaId:
      properties:
        id:
          description: 'Идентификатор региона из [справочника](#tag/Obshie-spravochniki/operation/get-areas)'
          type: string
      required:
        - id
      title: Регион
    VacanciesVacanciesFavoritedResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/VacanciesVacanciesFavorited'
          type: object
      title: Отобранные вакансии
      type: object
    VacanciesVacanciesFavorited:
      properties:
        items:
          description: Массив отобранных вакансий
          items:
            $ref: '#/components/schemas/VacanciesVacanciesFavoritedItem'
          type: array
      title: Отобранные вакансии
    VacanciesVacanciesFavoritedItem:
      properties:
        address:
          $ref: '#/components/schemas/VacancyAddressRawOutput'
        adv_response_url:
          description: URL для регистрации нажатия кнопки отклика
          nullable: true
          type: string
        alternate_url:
          description: Ссылка на представление вакансии на сайте
          type: string
        apply_alternate_url:
          description: Ссылка на отклик на вакансию на сайте
          type: string
        archived:
          description: Находится ли данная вакансия в архиве
          type: boolean
        area:
          $ref: '#/components/schemas/_IncludesArea'
          type: object
        created_at:
          description: Дата и время публикации вакансии
          type: string
        department:
          $ref: '#/components/schemas/VacanciesObjectsDepartment'
        employer:
          $ref: '#/components/schemas/VacanciesEmployerPublic'
        has_test:
          description: Информация о наличии прикрепленного тестового задании к вакансии
          type: boolean
        id:
          description: Идентификатор вакансии
          type: string
        insider_interview:
          $ref: '#/components/schemas/VacanciesObjectsInsiderInterview'
        name:
          $ref: '#/components/schemas/VacancyName'
        negotiations_url:
          description: Ссылка для получения списка откликов/приглашений
          nullable: true
          type: string
        premium:
          description: Является ли данная вакансия премиум-вакансией
          type: boolean
        published_at:
          description: Дата и время публикации вакансии
          type: string
        relations:
          $ref: '#/components/schemas/VacancyRelations'
        response_letter_required:
          $ref: '#/components/schemas/VacancyResponseLetterRequired'
        response_url:
          $ref: '#/components/schemas/VacancyResponseUrl'
        salary:
          $ref: '#/components/schemas/VacancySalary'
        sort_point_distance:
          $ref: '#/components/schemas/VacancySortPointDistance'
        suitable_resumes_url:
          description: Подходящие резюме на вакансию
          nullable: true
          type: string
        type:
          $ref: '#/components/schemas/VacancyTypeOutput'
        url:
          description: URL вакансии
          type: string
      required:
        - id
        - premium
        - name
        - department
        - has_test
        - response_letter_required
        - area
        - salary
        - type
        - published_at
        - archived
        - apply_alternate_url
        - url
        - alternate_url
        - relations
        - employer
      title: Отобранная вакансия
      type: object
    VacancySortPointDistance:
      description: |-
        Расстояние в метрах между центром сортировки (заданной параметрами `sort_point_lat`, `sort_point_lng`) и указанным в вакансии адресом. В случае, если в адресе указаны только станции метро, выдается расстояние между центром сортировки и средней геометрической точкой указанных станций.

        Значение `sort_point_distance` выдается только в случае, если заданы параметры `sort_point_lat`, `sort_point_lng`, `order_by=distance`
      nullable: true
      title: Расстояние между центром сортировки и указанным в вакансии адресом
      type: number
    ErrorsNegotiationHideResponseForbiddenErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        - $ref: '#/components/schemas/ErrorsNegotiationHideResponseErrors'
      title: Ошибки
    WebhookSubscriptionCreate:
      allOf:
        - $ref: '#/components/schemas/WebhookSubscriptionCommonItem'
        - properties: {}
          type: object
      title: Объект подписки
    ResumeEditResumeRequest:
      allOf:
        - $ref: '#/components/schemas/ResumeNullableFields'
        - properties:
            area:
              $ref: '#/components/schemas/ResumeObjectsOneOfId'
              description: 'Город проживания. Элемент справочника [areas](#tag/Obshie-spravochniki/operation/get-areas)'
              nullable: true
              type: object
            citizenship:
              description: 'Список гражданств соискателя. Элементы [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)'
              items:
                $ref: '#/components/schemas/_IncludesId'
              nullable: true
              type: array
            contact:
              description: |
                Список контактов соискателя.

                При заполнении контактов в резюме необходимо учитывать следующие условия:

                * В резюме обязательно должен быть указан e-mail. Он может быть только один.
                * В резюме должен быть указан хотя бы один телефон, причём можно указывать только один телефон каждого типа.
                * Комментарий можно указывать только для телефонов, для e-mail комментарий не сохранится
                * Обязательно указать либо телефон полностью в поле `formatted`, либо все три части телефона по отдельности в трёх полях: `country`, `city` и `number`. Если указано и то, и то, используются данные из трёх полей. В поле `formatted` допустимо использовать пробелы, скобки и дефисы. В остальных полях допустимы только цифры
              items:
                $ref: '#/components/schemas/_IncludesContact'
              nullable: true
              type: array
            education:
              $ref: '#/components/schemas/ResumeObjectsOneOfEducation'
              description: |
                Образование соискателя.

                Особенности сохранения образования:

                * Если передать и высшее и среднее образование и уровень образования "средний", то сохранится только среднее образование.
                * Если передать и высшее и среднее образование и уровень образования "высшее", то сохранится только высшее образование
              nullable: true
              type: object
            experience:
              description: Опыт работы
              items:
                $ref: '#/components/schemas/ResumeObjectsExperience'
              minItems: 0
              nullable: true
              type: array
            gender:
              $ref: '#/components/schemas/ResumeObjectsOneOfId'
              description: 'Пол. Элемент справочника [gender](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              nullable: true
              type: object
            language:
              description: 'Список языков, которыми владеет соискатель. Элементы справочника [languages](#tag/Obshie-spravochniki/operation/get-languages)'
              items:
                $ref: '#/components/schemas/_IncludesLanguageLevel'
              nullable: true
              type: array
          type: object
      description: Тело запроса при редактировании резюме
      title: Резюме
      type: object
    _IncludesLanguageLevel:
      allOf:
        - $ref: '#/components/schemas/_IncludesLanguageProperties'
      required:
        - level
      title: Язык и уровень владения
    _IncludesContact:
      allOf:
        - $ref: '#/components/schemas/_IncludesContactProperties'
      required:
        - type
        - value
        - preferred
      title: Контакт
    ResumeObjectsOneOfEducation:
      oneOf:
        - $ref: '#/components/schemas/ResumeObjectsEducation'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Образование - поле резюме
    ResumeObjectsOneOfId:
      oneOf:
        - $ref: '#/components/schemas/Id'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Id - поле резюме
    NegotiationsListResponse:
      anyOf:
        - $ref: '#/components/schemas/NegotiationsApplicantNegotiationsResponse'
        - $ref: '#/components/schemas/NegotiationsNegotiationsCollections'
      title: Успешный ответ
    NegotiationsApplicantNegotiationsResponse:
      allOf:
        - $ref: '#/components/schemas/NegotiationsListItems'
        - $ref: '#/components/schemas/_IncludesPagination'
      title: Успешный ответ
    NegotiationsListItems:
      properties:
        items:
          description: Список откликов
          items:
            $ref: '#/components/schemas/NegotiationsListItem'
          minItems: 0
          type: array
      required:
        - items
      title: Список откликов
      type: object
    NegotiationsListItem:
      allOf:
        - $ref: '#/components/schemas/NegotiationsObjectsTopicItem'
        - properties:
            resume:
              description: Короткое представление резюме
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/ResumeResumeNanoWithUrl'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
            url:
              description: Ссылка на полную версию отклика
              type: string
          required:
            - url
          type: object
      title: Отклик
      type: object
    NegotiationsNegotiationsCollections:
      properties:
        collections:
          description: Коллекции откликов/приглашений для данной вакансии
          items:
            $ref: '#/components/schemas/NegotiationsNegotiationsCollection'
          type: array
        employer_states:
          description: |
            Состояния [откликов/приглашений](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#term-employer-state) вакансии для работодателя
          items:
            $ref: '#/components/schemas/EmployersEmployersState'
          type: array
        generated_collections:
          description: Сгенерированные коллекции откликов/приглашений для данной вакансии
          items:
            $ref: '#/components/schemas/NegotiationsNegotiationsCollection'
          type: array
      required:
        - collections
        - generated_collections
        - employer_states
      title: Коллекции откликов/приглашений
      type: object
    NegotiationsNegotiationsCollection:
      allOf:
        - $ref: '#/components/schemas/NegotiationsObjectsStates'
        - properties:
            counters:
              $ref: '#/components/schemas/NegotiationsObjectsEmployerCounters'
            order_types:
              items:
                $ref: '#/components/schemas/NegotiationsNegotiationsOrderTypes'
              type: array
          required:
            - order_types
          type: object
      title: Информация о коллекции
      type: object
    NegotiationsObjectsEmployerCounters:
      description: Статистика откликов/приглашений коллекции
      properties:
        total:
          description: Общее количество откликов/приглашений в коллекции
          type: integer
        with_updates:
          description: 'Количество откликов/приглашений в коллекции, требующих внимания'
          type: integer
      title: Объект со статистикой
      type: object
    NegotiationsObjectsStates:
      properties:
        description:
          description: Описание коллекции
          type: string
        id:
          description: Идентификатор коллекции
          type: string
        name:
          description: Название коллекции
          type: string
        url:
          description: |
            URL, [GET-запрос на который](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations) возвращает список откликов/приглашений коллекции
          type: string
      required:
        - id
        - name
        - description
        - url
      title: Информация о коллекции
      type: object
    NegotiationsNegotiationsOrderTypes:
      properties:
        id:
          description: Уникальный идентификатор варианта сортировки
          type: string
        name:
          description: Название варианта сортировки
          type: string
        url:
          description: 'URL на коллекцию откликов/приглашений, отсортированных текущим вариантом'
          type: string
      required:
        - id
        - name
        - url
      title: Варианты сортировки откликов/приглашений
      type: object
    ErrorsEmployerManagerBadAuthorizationErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadAuthorizationError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Плохая авторизация
    ErrorsEmployerManagerBadAuthorizationError:
      additionalProperties: false
      properties:
        allowed_accounts:
          description: |
            Список доступных для токена аккаунтов менеджера в случае, если используемый рабочий аккаунт заблокирован.
            Актуально только в случае авторизации работодателя
          items:
            $ref: '#/components/schemas/ManagerAccount'
          minItems: 1
          type: array
        reason:
          description: |
            Ошибки при создании или редактировании менеджера работодателя:
              * `already_exist` — Менеджер с такой почтой уже существует
              * `creation_limit_exceeded` — Достигнут лимит на создание менеджеров
              * `not_editable` — Поле *field_name* недоступно для редактирования
          enum:
            - already_exist
            - creation_limit_exceeded
            - not_editable
          example: already_exist
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - forbidden
            - oauth
            - manager_extra_accounts
            - manager_accounts
            - managers
          example: oauth
          type: string
        value:
          description: |
            Общие ошибки:
              * `bad_authorization` — Токен авторизации не существует или не валидный
              * `token_expired` — Время жизни access_token завершилось, необходимо [выполнить обновление access_token](#section/Avtorizaciya/Obnovlenie-pary-access-i-refresh-tokenov)
              * `token_revoked` — Токен отозван пользователем, приложению необходимо [запросить новую авторизацию](#section/Tipy-avtorizacij)
              * `application_not_found` — Ваше приложение было удалено
              * `used_manager_account_forbidden` — [Рабочий аккаунт заблокирован](https://github.com/hhru/api/blob/master/docs/errors.md#manager-accounts-blocked)
              * `manager_extra_account_not_found` — В заголовке передан некорректный id аккаунта
              * `email` — Менеджер с такой почтой уже существует
              * `user_auth_expected` — Ожидается авторизация пользователя, передана авторизация приложения
          enum:
            - bad_authorization
            - token_expired
            - token_revoked
            - application_not_found
            - manager_extra_account_not_found
            - used_manager_account_forbidden
            - email
            - user_auth_expected
          example: bad_authorization
          type: string
      required:
        - type
      title: Ошибка
      type: object
    DictionariesSkillsResponse:
      description: Список ключевых навыков
      properties:
        items:
          description: Массив ключевых навыков
          items:
            $ref: '#/components/schemas/_IncludesSkillSetItem'
          type: array
      required:
        - items
      title: Список ключевых навыков
      type: object
    EmployersVacancyBrandedTemplatesList:
      properties:
        items:
          description: Список доступных брендированных шаблонов вакансий
          items:
            properties:
              id:
                description: Идентификатор брендированного шаблона вакансий
                minLength: 1
                type: string
              name:
                description: Название брендированного шаблона вакансий
                type: string
              version_id:
                description: |
                  Идентификатор активной версии брендированного шаблона. 
                  Равен null в случае шаблонов-конструкторов
                nullable: true
                type: string
            required:
              - id
              - version_id
              - name
            type: object
          type: array
      required:
        - items
      title: Успешный ответ
      type: object
    VacancyDraftVacancyDraftCreate:
      allOf:
        - $ref: '#/components/schemas/VacancyDraftVacancyDraftBodyCommon'
        - properties: {}
          type: object
      title: Объект создания черновика вакансии
    ErrorsDictionariesBadArgumentErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsDictionariesBadArgumentError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Неподдерживаемое значение падежа
    ErrorsDictionariesBadArgumentError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_argument
          example: bad_argument
          type: string
        value:
          description: Название поля с ошибкой
          example: wrong_case
          type: string
      required:
        - type
        - value
      title: Ошибка в параметре запроса
      type: object
    SuggestsAreas:
      additionalProperties: false
      description: Подсказки по регионам
      properties:
        items:
          description: Информация о найденных регионах
          items:
            $ref: '#/components/schemas/SuggestsAreasItem'
          title: Массив регионов
          type: array
      required:
        - items
      title: Подсказки по регионам
      type: object
    SuggestsAreasItem:
      properties:
        id:
          description: Идентификатор региона
          type: string
        text:
          description: Название региона
          type: string
        url:
          description: URL региона
          type: string
      required:
        - id
        - text
        - url
      title: Регион
      type: object
    ErrorsDraftError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - vacancy
          example: vacancy
          type: string
        value:
          description: Значение ошибки
          enum:
            - vacancy_draft_limit_exceeded
          example: vacancy_draft_limit_exceeded
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    NegotiationsNegotiationsStatisticsManagerResponse:
      properties:
        manager_statistics:
          $ref: '#/components/schemas/NegotiationsNegotiationsStatistics'
      required:
        - manager_statistics
      title: Статистика откликов для менеджера
      type: object
    NegotiationsNegotiationsStatistics:
      properties:
        average_reply_time:
          description: Среднее время (в днях) между получением отклика и отправкой сообщения
          nullable: true
          type: number
        politeness:
          description: Индекс вежливости
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/NegotiationsObjectsPoliteness'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        received:
          description: 'Количество откликов на вакансии, полученных за период (последние 30 дней)'
          type: number
        replied_percent:
          description: |
            Процент откликов на вакансии, перемещенных в любую другую [коллекцию](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#term-collection) с отправкой сообщения, за период
          nullable: true
          type: number
        viewed_percent:
          description: Процент прочитанных откликов за период
          nullable: true
          type: number
      required:
        - received
      title: Статистика по откликам
      type: object
    NegotiationsObjectsPoliteness:
      properties:
        article_url:
          description: URL на статью HH про индекс вежливости
          type: string
        description:
          description: Описание понятия индекса вежливости
          type: string
        hint:
          description: Описание текущего значения индекса вежливости
          type: string
        index:
          description: Значение индекса вежливости
          type: number
        index_change:
          deprecated: true
          description: Изменение индекса вежливости за последние 24 часа
          type: number
      required:
        - index
        - index_change
        - hint
        - description
        - article_url
      title: Информация по индексу вежливости
      type: object
    ErrorsEmployerBlacklistedErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsEmployerBlacklistedError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибка добавления работодателя в скрытые
    ErrorsEmployerBlacklistedError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - employers_blacklist
          example: employers_blacklist
          type: string
        value:
          description: |
            Название поля с ошибкой:
            * `limit_exceeded` — превышен лимит на количество работодателей в списке скрытых
          enum:
            - limit_exceeded
          example: limit_exceeded
          type: string
      required:
        - type
      title: Ошибка в параметре запроса
      type: object
    ProfessionalRolesCatalog:
      additionalProperties: false
      description: Каталог профессиональных ролей и категорий
      properties:
        categories:
          description: Информация о категории профессиональной роли
          items:
            $ref: '#/components/schemas/ProfessionalRolesCategory'
          minItems: 1
          title: Категория профессиональной роли
          type: array
      required:
        - categories
      title: Каталог профессиональных ролей
      type: object
    ProfessionalRolesCategory:
      properties:
        id:
          description: Идентификатор категории профессиональной роли
          example: '123'
          minLength: 1
          type: string
        name:
          description: Имя категории профессиональной роли
          example: 'Строительство, недвижимость'
          minLength: 1
          nullable: true
          type: string
        roles:
          description: |
            Список профессиональных ролей, входящих в эту категорию
          items:
            $ref: '#/components/schemas/ProfessionalRolesRole'
          minItems: 1
          type: array
      required:
        - id
        - name
        - roles
      title: Категории профессиональных ролей
      type: object
    ProfessionalRolesRole:
      properties:
        accept_incomplete_resumes:
          description: На роль принимаются отклики неполным резюме
          example: true
          type: boolean
        id:
          description: Идентификатор профессиональной роли
          example: '1'
          minLength: 1
          type: string
        is_default:
          description: Дефолтная роль
          example: true
          type: boolean
        name:
          description: Имя профессиональной роли
          example: Архитектор
          minLength: 1
          type: string
        search_deprecated:
          description: Наличие запрета на использование в поиске при составлении поискового запроса
          example: true
          type: boolean
        select_deprecated:
          description: Наличие запрета на использование при создании новых сущностей (резюме или вакансии)
          example: true
          type: boolean
      required:
        - id
        - name
        - accept_incomplete_resumes
        - is_default
      title: Профессиональная роль
      type: object
    EmployerManagersResponse:
      properties:
        found:
          title: Найдено результатов
          type: number
        items:
          items:
            $ref: '#/components/schemas/EmployerManagersEmployerManagerItem'
          minItems: 0
          title: Список менеджеров работодателя
          type: array
        page:
          title: Номер страницы
          type: number
        pages:
          title: Всего страниц
          type: number
        per_page:
          title: Результатов на странице
          type: number
      required:
        - items
        - found
        - page
        - pages
        - per_page
      title: Успешный ответ
    EmployerManagersEmployerManagerItem:
      properties:
        additional_phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Дополнительный телефон менеджера
        area:
          $ref: '#/components/schemas/EmployerManagersArea'
        email:
          description: Адрес электронной почты менеджера
          type: string
        first_name:
          description: Имя менеджера
          type: string
        full_name:
          description: Полное имя менеджера
          type: string
        id:
          description: Идентификатор менеджера
          type: string
        is_main_contact_person:
          description: Является ли менеджер основным контактным лицом
          type: boolean
        last_name:
          description: Фамилия менеджера
          type: string
        middle_name:
          description: Отчество менеджера
          type: string
        name:
          deprecated: true
          description: Полное имя менеджера
          type: string
        phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Основной телефон менеджера
        position:
          description: Должность менеджера
          type: string
        vacancies_count:
          description: Количество опубликованных (активных) вакансий у данного менеджера. `null` — если у пользователя нет прав на просмотр вакансий этого менеджера
          nullable: true
          type: number
      required:
        - id
        - email
        - position
        - area
      title: Менеджер
    EmployerManagersArea:
      properties:
        id:
          description: 'Идентификатор региона из [справочника](#tag/Obshie-spravochniki/operation/get-areas)'
          type: string
        name:
          description: Название региона
          type: string
        url:
          description: Ссылка на информацию о регионе
          type: string
      required:
        - id
        - name
        - url
      title: Регион
    ErrorsRequestEntityTooLargeErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsRequestEntityTooLargeError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: В запросе передана слишком большая сущность
    ErrorsRequestEntityTooLargeError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - artifacts
          example: artifacts
          type: string
        value:
          description: Краткое текстовое описание причины ошибки
          enum:
            - image_too_large
          example: image_too_large
          type: string
      required:
        - type
        - value
      title: Слишком большой файл
      type: object
    WebhookSendObjectBaseUser:
      properties:
        action_type:
          description: Тип экшена
          type: string
        id:
          description: Идентификатор сообщения
          type: string
        payload:
          oneOf:
            - $ref: '#/components/schemas/WebhookPayloadNewNegotiationVacancy'
            - $ref: '#/components/schemas/WebhookPayloadNewResponseOrInvitationVacancy'
            - $ref: '#/components/schemas/WebhookPayloadVacancyArchivation'
            - $ref: '#/components/schemas/WebhookPayloadVacancyPublicationForVacancyManager'
            - $ref: '#/components/schemas/WebhookPayloadVacancyProlongation'
            - $ref: '#/components/schemas/WebhookPayloadVacancyChange'
            - $ref: '#/components/schemas/WebhookPayloadNegotiationEmployerStateChange'
        subscription_id:
          description: Идентификатор подписки
          type: string
        user_id:
          description: Идентификатор пользователя
          type: string
      required:
        - id
        - subscription_id
        - action_type
        - user_id
        - payload
      title: Сообщение о событии на уровне менеджера
      type: object
    WebhookPayloadVacancyArchivation:
      description: Архивация вакансии
      properties:
        archivation_date:
          description: 'Дата архивации вакансии в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          nullable: true
          type: string
      required:
        - vacancy_id
        - archivation_date
      title: VACANCY_ARCHIVATION
      type: object
    WebhookPayloadVacancyProlongation:
      description: Продление вакансии
      properties:
        prolongation_date:
          description: 'Дата продления вакансии в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          type: string
      required:
        - vacancy_id
        - prolongation_date
      title: VACANCY_PROLONGATION
      type: object
    WebhookPayloadVacancyChange:
      description: Изменение вакансии
      properties:
        change_date:
          description: 'Дата изменения вакансии в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          type: string
      required:
        - vacancy_id
        - change_date
      title: VACANCY_CHANGE
      type: object
    WebhookPayloadVacancyPublicationForVacancyManager:
      properties:
        creation_date:
          description: 'Дата создания вакансии в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm'
          type: string
        employer_manager_id:
          description: Идентификатор модератора вакансии
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          type: string
      required:
        - vacancy_id
        - employer_manager_id
        - creation_date
      title: VACANCY_PUBLICATION_FOR_VACANCY_MANAGER
      type: object
    WebhookPayloadNegotiationEmployerStateChange:
      description: |
        Изменение этапа, на котором находится кандидат на вакансии. Содержит информацию о том кто, какое резюме с какого на какой 
        статус перевел
      properties:
        employer_manager_id:
          description: 'Идентификатор менеджера, совершившего перевод'
          type: string
        from_state:
          description: С какого статуса перевели
          type: string
        resume_id:
          description: Идентификатор резюме
          type: string
        to_state:
          description: На какой статус перевели
          type: string
        topic_id:
          description: Идентификатор топика
          type: string
        transferred_at:
          description: Время перевода на новый этап
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          type: string
      required:
        - topic_id
        - vacancy_id
        - from_state
        - to_state
        - employer_manager_id
        - resume_id
        - transferred_at
      title: NEGOTIATION_EMPLOYER_STATE_CHANGE
      type: object
    WebhookPayloadNewNegotiationVacancy:
      description: Новый отклик на вакансию
      properties:
        employer_id:
          description: Идентификатор работодателя
          type: string
        negotiation_date:
          description: 'Дата отклика в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
        resume_id:
          description: Идентификатор резюме
          nullable: true
          type: string
        topic_id:
          description: Идентификатор топика
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          nullable: true
          type: string
      required:
        - topic_id
        - resume_id
        - vacancy_id
        - employer_id
        - negotiation_date
      title: NEW_NEGOTIATION_VACANCY
      type: object
    WebhookPayloadNewResponseOrInvitationVacancy:
      description: 'Новый отклик или приглашение на вакансии (в отличие от NEW_NEGOTIATION_VACANCY, данное событие будет вызываться как на отклик со стороны соискателя, так и на приглашение со стороны работодателя)'
      properties:
        employer_id:
          description: Идентификатор работодателя
          type: string
        response_date:
          description: 'Дата отклика или приглашения в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          type: string
        resume_id:
          description: Идентификатор резюме
          nullable: true
          type: string
        topic_id:
          description: Идентификатор топика
          type: string
        vacancy_id:
          description: Идентификатор вакансии
          nullable: true
          type: string
      required:
        - topic_id
        - resume_id
        - vacancy_id
        - employer_id
        - response_date
      title: NEW_RESPONSE_OR_INVITATION_VACANCY
      type: object
    NegotiationsMessagesGetResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
        - properties:
            items:
              description: Список сообщений
              items:
                $ref: '#/components/schemas/NegotiationsMessagesGet'
              type: array
          type: object
      description: Получение списка сообщений в отклике
      title: Список сообщений
    NegotiationsMessagesGet:
      allOf:
        - $ref: '#/components/schemas/NegotiationsMessage'
        - properties:
            address:
              $ref: '#/components/schemas/VacancyAddressRawOutput'
            assessments:
              description: 'Инструменты оценки, привязанные к сообщению'
              items:
                $ref: '#/components/schemas/NegotiationsAssessment'
              type: array
          type: object
      description: Сообщение в отклике
      title: Сообщение в отклике
      type: object
    NegotiationsMessage:
      description: Сообщение в отклике
      properties:
        author:
          $ref: '#/components/schemas/NegotiationsAuthor'
        created_at:
          description: Дата и время создания сообщения
          type: string
        editable:
          description: Можно ли редактировать текст сообщения
          type: boolean
        id:
          description: Идентификатор сообщения
          type: string
        read:
          description: Можно ли прочитать сообщение
          type: boolean
        state:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdName'
          description: Состояние сообщения
          type: object
        text:
          description: Текст сообщения
          type: string
        viewed_by_me:
          description: Прочитано ли сообщение смотрящим (для сообщений отправленных соискателем - всегда true)
          type: boolean
        viewed_by_opponent:
          description: Прочитано ли сообщение работодателем (для сообщений работодателя - true)
          type: boolean
      required:
        - id
        - viewed_by_me
        - viewed_by_opponent
        - editable
        - created_at
        - text
        - state
        - author
        - address
      title: Сообщение в отклике
      type: object
    NegotiationsAuthor:
      description: Автор сообщения
      properties:
        participant_type:
          description: 'Тип собеседника: `applicant` или `employer`'
          type: string
      required:
        - participant_type
      title: Автор сообщения
      type: object
    NegotiationsAssessment:
      allOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - properties:
            actions:
              description: Инструменты оценки
              items:
                $ref: '#/components/schemas/NegotiationsAction'
              type: array
          required:
            - actions
          type: object
      description: 'Тесты или опросники, предназначенные для прохождения соискателями'
      title: Инструменты оценки
      type: object
    NegotiationsAction:
      description: |
        В зависимости от состояния инструмента оценки, конкретные действия над ним могут быть доступны либо нет
      properties:
        alternate_url:
          description: 'Ссылка на сайт, переход по которой инициирует действие'
          type: string
        disable_reason:
          description: 'Пояснение, почему действие недоступно'
          type: string
        enabled:
          description: Доступно ли действие
          type: boolean
        id:
          description: Тип действия
          type: string
        name:
          description: Описание действия
          type: string
      required:
        - id
        - name
        - enabled
      title: Действие над инструментом
      type: object
    ApplicantCommentsApplicantCommentsList:
      allOf:
        - $ref: '#/components/schemas/ApplicantCommentsApplicantCommentItems'
          type: object
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
      title: Успешный ответ
    ApplicantCommentsApplicantCommentItems:
      properties:
        items:
          description: Список комментариев
          items:
            $ref: '#/components/schemas/ApplicantCommentsApplicantCommentItem'
          minItems: 0
          type: array
      required:
        - items
      title: Коллекция со списком комментариев
    ApplicantCommentsApplicantCommentItem:
      properties:
        access_type:
          allOf:
            - $ref: '#/components/schemas/ApplicantCommentsAccessType'
            - type: object
          description: 'Тип доступа для комментария. Возможные значения перечислены [в справочнике](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `applicant_comment_access_type`'
        author:
          allOf:
            - $ref: '#/components/schemas/ApplicantCommentsAuthor'
            - type: object
          description: Автор комментария
        created_at:
          description: Дата создания комментария
          type: string
        id:
          description: Уникальный идентификатор комментария
          type: string
        is_mine:
          description: Комментарий написан текущим пользователем?
          type: boolean
        text:
          description: Текст комментария. Может содержать символы новой строки
          type: string
      required:
        - author
        - created_at
        - id
        - is_mine
        - text
        - access_type
      title: Комментарий
    ApplicantCommentsAuthor:
      properties:
        full_name:
          description: ФИО автора комментария
          type: string
      required:
        - full_name
      title: Автор комментария
    ApplicantCommentsAccessType:
      properties:
        id:
          description: Идентификатор типа доступа
          type: string
        name:
          description: Название типа доступа
          type: string
      required:
        - id
        - name
      title: Тип доступа
    LocalesResumeLocales:
      items:
        $ref: '#/components/schemas/LocalesResumeLocaleItem'
      title: Список доступных локалей
      type: array
    VacanciesVacancyUpgradeListResponse:
      properties:
        items:
          description: Список улучшений для вакансий
          items:
            $ref: '#/components/schemas/VacanciesVacancyUpgradeListItem'
          type: array
      required:
        - items
      title: Список улучшений для вакансий
      type: object
    VacanciesVacancyUpgradeListItem:
      properties:
        actions:
          description: Список возможных действий
          items:
            $ref: '#/components/schemas/VacanciesUpgradeFieldsAction'
          minItems: 0
          type: array
        vacancy_billing_type:
          $ref: '#/components/schemas/VacanciesUpgradeFieldsBillingTypeFull'
        without_action:
          description: 'Объект с описанием причины, по которой невозможно улучшить вакансию до данного типа. `Null`, если массив `actions` не пустой'
          items:
            oneOf:
              - $ref: '#/components/schemas/VacanciesUpgradeFieldsWithoutAction'
              - $ref: '#/components/schemas/_IncludesNullableObject'
          nullable: true
          type: array
      required:
        - vacancy_billing_type
        - actions
      title: Улучшение для вакансии
      type: object
    VacanciesUpgradeFieldsWithoutAction:
      properties:
        reason:
          description: 'Описание причины, по которой улучшение вакансии до данного типа невозможно'
          type: string
      required:
        - reason
      title: Улучшение невозможно
    VacanciesUpgradeFieldsBillingTypeFull:
      allOf:
        - $ref: '#/components/schemas/VacancyBillingTypeOutput'
        - properties:
            description:
              description: Описание типа вакансии
              type: string
          type: object
      title: Биллинговый тип вакансии
    VacanciesUpgradeFieldsAction:
      description: Возможное действие
      properties:
        cart_id:
          description: 'Идентификатор заказа, ожидающего активации. Возвращается только для действий с `actions.type=activate`'
          nullable: true
          type: integer
        price:
          description: Стоимость публикации. Возвращается только для действий с `actions.type=buy`
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacanciesUpgradeFieldsPrice'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        type:
          description: |
            Тип действия:

            * `direct_upgrade` — публикации вакансий данного типа есть на счету. Вы можете изменить тип вакансии.
            * `activate` — публикации вакансий данного типа есть в неактивированных заказах. Перейдите по ссылке, указанной в поле `actions.url`, и активируйте заказ. После этого станет доступно улучшение вакансии.
            * `buy` — нет доступных публикаций вакансий данного типа. Перейдите по ссылке, указанной в поле `actions.url`, чтобы перейти к покупке публикаций нужного типа
          type: string
        url:
          description: Ссылка на действие
          nullable: true
          type: string
      required:
        - type
      title: Возможное действие
      type: object
    VacanciesUpgradeFieldsPrice:
      properties:
        amount:
          description: Значение цены
          type: string
        currency_code:
          description: 'Идентификатор валюты. Возможные значения приведены в поле `currency` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          type: string
      required:
        - amount
        - currency_code
      title: Цена
      type: object
    ArtifactsArtifactPortfolioResponse:
      allOf:
        - $ref: '#/components/schemas/ArtifactsArtifactPortfolioItems'
        - $ref: '#/components/schemas/_IncludesPagination'
      title: Успешный ответ
    ArtifactsArtifactPortfolioItems:
      properties:
        items:
          description: Список изображений
          items:
            $ref: '#/components/schemas/ArtifactsArtifactPortfolioItem'
          minItems: 0
          type: array
      required:
        - items
      title: Коллекция изображений
    ArtifactsArtifactPortfolioItem:
      allOf:
        - $ref: '#/components/schemas/ArtifactsArtifactItem'
        - $ref: '#/components/schemas/ArtifactsPortfolioDescription'
      title: Изображение
    ArtifactsPortfolioDescription:
      properties:
        description:
          description: Описание изображения
          type: string
      required:
        - description
      title: Описание изображения
    ArtifactsArtifactItem:
      properties:
        id:
          description: Идентификатор изображения
          type: string
        medium:
          description: 'URL для получения среднего по размеру изображения или `null`, если изображение ещё не готово'
          nullable: true
          type: string
        small:
          description: 'URL для получения уменьшенного изображения или `null`, если изображение ещё не готово'
          nullable: true
          type: string
        state:
          $ref: '#/components/schemas/ArtifactsState'
          description: Текущий статус изображения
      required:
        - id
        - state
      title: Изображение
    ArtifactsState:
      properties:
        id:
          description: |
            Идентификатор текущего статуса изображения:

            - `processing` — в процессе обработки;
            - `failed` — ошибка, скорее всего неподдерживаемый формат;
            - `ok` — обработан, доступен для использования в резюме
          enum:
            - processing
            - failed
            - ok
          type: string
        name:
          description: Название текущего статуса изображения
          type: string
      required:
        - id
        - name
      title: Статус изображения
      type: object
    ErrorsEmployerAddressErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsEmployerAddressError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки в параметрах запроса
    ErrorsEmployerAddressError:
      additionalProperties: false
      properties:
        reason:
          description: |
            Причина ошибки. Описание:
            * `too_early` - Отступ по времени от текущей даты слишком большой.
            * `must_be_a_valid_ISO_8601_date-time_string` - Дата-время указаны в неверном формате
          example: must_be_a_valid_ISO_8601_date
          type: string
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_argument
            - bad_request
          example: bad_argument
          type: string
        value:
          description: Название поля с ошибкой
          example: changed_after
          type: string
      required:
        - type
      title: Ошибка в параметре запроса
      type: object
    EmployersEmployersList:
      properties:
        found:
          description: Найдено результатов
          type: number
        items:
          description: Найденные работодатели
          items:
            $ref: '#/components/schemas/EmployersEmployerItem'
          minItems: 0
          type: array
        page:
          description: Номер страницы
          type: number
        pages:
          description: Всего страниц
          type: number
        per_page:
          description: Результатов на странице
          type: number
      required:
        - items
        - found
        - page
        - pages
        - per_page
      title: Успешный ответ
    EmployersEmployerItem:
      allOf:
        - $ref: '#/components/schemas/EmployersEmployerItemShort'
        - properties:
            open_vacancies:
              description: Количество открытых вакансий у работодателя
              type: number
          required:
            - open_vacancies
          type: object
      title: Работодатель
    SavedSearchesSavedSearchItem:
      properties:
        created_at:
          description: Дата и время создания
          type: string
        id:
          description: Идентификатор поиска
          type: string
        items:
          allOf:
            - $ref: '#/components/schemas/_IncludesCountUrl'
            - description: Данные о списке найденных вакансий/резюме
              type: object
        name:
          description: Название поиска
          type: string
        new_items:
          allOf:
            - $ref: '#/components/schemas/_IncludesCountUrl'
            - description: |
                Данные о найденных вакансиях/резюме, появившихся с момента последнего просмотра автопоиска. При переходе по ссылке счетчик новых элементов будет сброшен (возможна небольшая задержка по времени).

                Счетчик `new_items.count` обновляется раз в час. Из-за этого реальное количество новых найденных элементов может расходиться со значением этого счетчика
              type: object
        subscription:
          description: Статус подписки
          type: boolean
      required:
        - id
        - name
        - created_at
        - subscription
        - items
        - new_items
      title: Сохраненный поиск вакансий/резюме
      type: object
    _IncludesCountUrl:
      properties:
        count:
          description: Количество элементов
          type: number
        url:
          description: Ссылка на получение элементов
          type: string
      required:
        - count
        - url
      title: Элементы
      type: object
    ResumesMineResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/ResumesMineItems'
          type: object
      title: Список резюме текущего пользователя
      type: object
    ResumesMineItems:
      properties:
        items:
          description: Список резюме текущего пользователя
          items:
            $ref: '#/components/schemas/ResumesMineItem'
          minItems: 0
          type: array
      required:
        - items
      title: Список резюме
      type: object
    ResumesMineItem:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeShortForOwner'
        - $ref: '#/components/schemas/ResumeStatus'
        - $ref: '#/components/schemas/ResumeApplicantFields'
        - properties:
            contact:
              description: Список контактов соискателя
              items:
                $ref: '#/components/schemas/_IncludesContact'
              type: array
            created:
              deprecated: true
              description: Дата и время создания резюме
              type: string
            similar_vacancies:
              $ref: '#/components/schemas/ResumeObjectsSimilarVacancies'
            tags:
              description: Теги к резюме
              items:
                $ref: '#/components/schemas/_IncludesId'
              type: array
            updated:
              deprecated: true
              description: Дата и время обновления резюме
              type: string
            visible:
              deprecated: true
              description: Видно ли резюме в поиске
              type: boolean
          required:
            - visible
            - created
            - updated
            - similar_vacancies
            - contact
          type: object
      title: Информация о резюме для соискателя
      type: object
    ResumeApplicantFields:
      properties:
        access:
          $ref: '#/components/schemas/ResumeObjectsAccess'
        actions:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsActionsForOwner'
          description: Дополнительные действия
          type: object
        new_views:
          description: |
            Число новых просмотров. Данный счетчик сбрасывается при получении [детальной истории просмотров](#tag/Rezyume.-Prosmotr-informacii/operation/get-resume-view-history)
          type: number
        next_publish_at:
          description: Дата и время следующей возможной публикации/обновления. Для неопубликованных резюме возвращается `null`
          nullable: true
          type: string
        paid_services:
          description: Платные услуги по резюме для автора
          items:
            $ref: '#/components/schemas/ResumeObjectsPaidServices'
          type: array
        total_views:
          description: Число просмотров резюме
          type: number
        views_url:
          description: |
            URL, по которому необходимо сделать GET-запрос для получения [детальной истории просмотров](#tag/Rezyume.-Prosmotr-informacii/operation/get-resume-view-history)
          type: string
      required:
        - access
        - total_views
        - new_views
        - views_url
        - paid_services
        - actions
      title: 'Поля, возвращаемые для автора резюме'
      type: object
    ResumeObjectsPaidServices:
      properties:
        active:
          description: Активна ли в данный момент услуга
          type: boolean
        expires:
          description: 'Время окончания действия услуги, если услуга активна'
          type: string
        id:
          description: Идентификатор услуги
          type: string
        name:
          description: Название услуги
          type: string
      required:
        - id
        - name
        - active
      title: Платная услуга
      type: object
    ResumeObjectsSimilarVacancies:
      description: 'Информация о вакансиях, похожих на это резюме'
      properties:
        counters:
          $ref: '#/components/schemas/ResumeObjectsCounters'
        url:
          description: 'URL, по которому необходимо сделать GET-запрос, для получения [вакансий, похожих на данное резюме](#tag/Poisk-vakansij-dlya-soiskatelya/operation/get-vacancies-similar-to-resume)'
          type: string
      required:
        - url
        - counters
      title: Информация о похожих вакансиях
      type: object
    ResumeObjectsCounters:
      description: Счетчики похожих вакансий
      properties:
        total:
          description: Количество подходящих вакансий
          type: number
      required:
        - total
      title: Счетчики
      type: object
    DictionariesLangResponse:
      items:
        $ref: '#/components/schemas/DictionariesLangItem'
      title: Список языков
      type: array
    DictionariesLangItem:
      properties:
        id:
          description: Идентификатор языка
          example: ita
          type: string
        name:
          description: Название языка
          example: Итальянский
          type: string
        uid:
          description: Универсальный идентификатор языка
          example: '17'
          type: string
      required:
        - id
        - name
        - uid
      title: Язык
    DictionariesDistrictsResponse:
      items:
        $ref: '#/components/schemas/DictionariesDistrictItem'
      title: Список всех районов во всех городах
      type: array
    DictionariesDistrictItem:
      properties:
        area_id:
          description: Идентификатор города
          type: string
        id:
          description: Идентификатор района
          type: string
        name:
          description: Название района
          type: string
      required:
        - id
        - name
        - area_id
      title: Город
    ResumesResumeNegotiationsHistoryResponse:
      properties:
        vacancies:
          description: Массив вакансий
          items:
            $ref: '#/components/schemas/ResumesResumeNegotiationsHistoryVacancy'
          type: array
      required:
        - vacancies
      title: История откликов/приглашений по резюме
      type: object
    ResumesResumeNegotiationsHistoryVacancy:
      properties:
        archived:
          description: 'Признак того, что вакансия находится в архиве'
          type: boolean
        can_edit:
          description: 'Признак того, что менеджер может редактировать данные вакансии, а также работать с информацией об откликах/приглашениях по этой вакансии'
          type: boolean
        id:
          description: Уникальный идентификатор вакансии
          type: string
        items:
          description: Список последних изменений состояний откликов/приглашений по указанному резюме и данной вакансии
          items:
            $ref: '#/components/schemas/ResumesResumeNegotiationsHistoryVacancyItem'
          type: array
        messages_url:
          description: 'URL, на который необходимо делать GET запрос для получения [списка сообщений в отклике/приглашении](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#get-messages). Если `can_edit` равно `false`, значение поля должно игнорироваться'
          type: string
        name:
          description: Название вакансии
          type: string
        negotiations_url:
          description: 'URL, на который необходимо делать GET-запрос для получения [данных об отклике/приглашении](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiation-item). Если `can_edit` равно `false`, значение поля должно игнорироваться'
          type: string
        url:
          description: 'URL, на который необходимо делать GET-запрос для [получения данных о вакансии](#tag/Vakansii/operation/get-vacancy)'
          type: string
      required:
        - id
        - name
        - url
        - archived
        - can_edit
        - items
        - negotiations_url
        - messages_url
      title: 'Вакансия, связанная с резюме'
      type: object
    ResumesResumeNegotiationsHistoryVacancyItem:
      allOf:
        - $ref: '#/components/schemas/ResumesNegotiationNano'
        - properties:
            with_message:
              description: 'Признак того, что при изменении состояния отклика/приглашения было отправлено сообщение соискателю'
              type: boolean
          required:
            - with_message
          type: object
      title: Изменение состояния откликов/приглашений
      type: object
    ResumesNegotiationNano:
      properties:
        created_at:
          description: Дата изменения состояния отклика/приглашения
          type: string
        employer_state:
          allOf:
            - description: Отклик/приглашение
              type: object
            - $ref: '#/components/schemas/_IncludesIdName'
      required:
        - employer_state
        - created_at
      title: Базовая информация об отклике/приглашении
      type: object
    ErrorsCommonBadAuthorizationBadParameters:
      oneOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationInvalidRequestError'
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationInvalidClientError'
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationInvalidGrantError'
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationUnsupportedGrantTypeError'
      title: Ошибка параметров запроса
    ErrorsCommonBadAuthorizationInvalidRequestError:
      properties:
        error:
          description: |
            Идентификатор типа ошибки, используются значения, описанные в [документе RFC 6749](http://tools.ietf.org/html/rfc6749#section-5.2)
          enum:
            - invalid_request
          example: invalid_request
          type: string
        error_description:
          description: |
            Дополнительное описание ошибки
            * `account not found` Ошибка может возникнуть, если передана неправильная пара `client_id` и `client_secret`
            * `account is locked` Пользовательский аккаунт заблокирован. Пользователь должен обратиться в службу поддержки сайта
            * `password invalidated` Пароль от пользовательского аккаунта устарел. Пользователь должен восстановить пароль на сайте `https://hh.ru`
            * `login not verified` Пользовательский аккаунт не подтвержден. Пользователь должен обратиться в службу поддержки сайта
            * `bad redirect url` передан неправильный `redirect_url`
            * `token is empty` Не передан `refresh_token`
            * `token not found` передан не правильный `refresh_token`
            * `code not found ` переданный `authorization_code` не найден
          enum:
            - account not found
            - account is locked
            - password invalidated
            - login not verified
            - bad redirect url
            - token is empty
            - token not found
            - code not found
          example: account not found
          type: string
      required:
        - error
        - error_description
      title: Invalid_request
      type: object
    ErrorsCommonBadAuthorizationUnsupportedGrantTypeError:
      properties:
        error:
          description: |
            Идентификатор типа ошибки, используются значения, описанные в [документе RFC 6749](http://tools.ietf.org/html/rfc6749#section-5.2)
          enum:
            - unsupported_grant_type
          example: unsupported_grant_type
          type: string
        error_description:
          description: |
            Дополнительное описание ошибки
            * `unsupported grant_type` Возникает, если передать неправильное значение в поле `grant_type`
          enum:
            - unsupported grant_type
          example: unsupported grant_type
          type: string
      required:
        - error
        - error_description
      title: Unsupported_grant_type
      type: object
    ErrorsCommonBadAuthorizationInvalidClientError:
      properties:
        error:
          description: |
            Идентификатор типа ошибки, используются значения, описанные в [документе RFC 6749](http://tools.ietf.org/html/rfc6749#section-5.2)
          enum:
            - invalid_client
          example: invalid_client
          type: string
        error_description:
          description: |
            Дополнительное описание ошибки
            * `client_id or client_secret not found` Ошибка может возникнуть в случае, если данный `client_id` не найден или был удален, передан неправильный `client_secret`
          enum:
            - client_id or client_secret not found
          example: client_id or client_secret not found
          type: string
      required:
        - error
        - error_description
      title: Invalid_client
      type: object
    ErrorsCommonBadAuthorizationInvalidGrantError:
      properties:
        error:
          description: |
            Идентификатор типа ошибки, используются значения, описанные в [документе RFC 6749](http://tools.ietf.org/html/rfc6749#section-5.2)
          enum:
            - invalid_grant
          example: invalid_grant
          type: string
        error_description:
          description: |
            Дополнительное описание ошибки
            * `token has already been refreshed` Ошибка возникает при попытке воспользоваться refresh-токеном второй раз
            * `token not expired` Ошибка возникает при попытке обновить действующий access-токен. access-токен можно обновлять только после того, как он истек
            * `token was revoked` Токен был отозван. Например, токен отзывается, если время действия пароля истекло
            * `bad token ` Передано неправильное значение токена
            * `code has already been used` `authorization_code` уже был использован (его можно использовать только один раз)
            * `code expired` `authorization_code` истек
            * `code was revoke` `authorization_code` был отозван (это происходит, если время действия пароля истекло)
            * `token deactivated ` Токен был деактивирован. Токен деактивируется после того, как пользователь сменил пароль
          enum:
            - token has already been refreshed
            - token not expired
            - token was revoked
            - bad token
            - code has already been used
            - code expired
            - code was revoke
            - token deactivated
          example: token not expired
          type: string
      required:
        - error
        - error_description
      title: Invalid_grant
      type: object
    MailTemplatesMailTemplateInput:
      additionalProperties: false
      properties:
        text:
          description: Текст шаблона
          type: string
      required:
        - text
      title: Шаблон ответа соискателю
    VacanciesVacanciesResponse:
      allOf:
        - $ref: '#/components/schemas/VacanciesVacanciesItems'
          type: object
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/VacanciesClusters'
          type: object
        - $ref: '#/components/schemas/VacanciesArguments'
          type: object
        - properties:
            alternate_url:
              description: Ссылка на вакансию
              nullable: true
              type: string
            fixes:
              $ref: '#/components/schemas/VacanciesFixes'
            suggests:
              $ref: '#/components/schemas/VacanciesSuggests'
          type: object
      title: Успешный ответ
    VacanciesVacanciesItems:
      properties:
        items:
          description: Список вакансий
          items:
            $ref: '#/components/schemas/VacanciesVacanciesItem'
          minItems: 0
          type: array
      required:
        - items
      title: Список вакансий
    VacanciesVacanciesItem:
      allOf:
        - $ref: '#/components/schemas/VacanciesStandardVacancyFields'
        - $ref: '#/components/schemas/VacanciesAdditionalVacancyFields'
        - properties:
            show_logo_in_search:
              description: Отображать ли лого для вакансии в поисковой выдаче
              nullable: true
              type: boolean
          type: object
      title: Вакансия
    VacanciesAdditionalVacancyFields:
      properties:
        counters:
          $ref: '#/components/schemas/VacancyCounters'
        employment:
          $ref: '#/components/schemas/VacancyEmploymentOutput'
        experience:
          $ref: '#/components/schemas/VacancyExperienceOutput'
        snippet:
          $ref: '#/components/schemas/VacancySnippet'
          description: 'Дополнительные текстовые снипеты (отрывки) по найденной вакансии. Если в тексте снипета встретилась поисковая фраза (параметр `text`), она будет подсвечена тегом `highlighttext`'
        sort_point_distance:
          $ref: '#/components/schemas/VacancySortPointDistance'
      required:
        - snippet
      title: Вакансия
      type: object
    VacancySnippet:
      properties:
        requirement:
          description: 'Отрывок из требований по вакансии, если они найдены в тексте описания'
          nullable: true
          type: string
        responsibility:
          description: 'Отрывок из обязанностей по вакансии, если они найдены в тексте описания'
          nullable: true
          type: string
      title: Дополнительные текстовые отрывки
      type: object
    VacanciesStandardVacancyFields:
      properties:
        accept_incomplete_resumes:
          $ref: '#/components/schemas/VacancyAcceptIncompleteResumes'
        accept_temporary:
          $ref: '#/components/schemas/VacancyAcceptTemporary'
        address:
          $ref: '#/components/schemas/VacancyAddressRawOutput'
        adv_response_url:
          deprecated: true
          description: |
            URL для регистрации нажатия кнопки отклика
            (устаревшее, сейчас для регистрации нажатия кнопки отклика нужно заполнять хедер adv-context 
            в запросе [Резюме, сгруппированные по возможности отклика на данную вакансию](#tag/Rezyume.-Prosmotr-informacii/operation/get-resumes-by-status))
          nullable: true
          type: string
        alternate_url:
          description: Ссылка на представление вакансии на сайте
          type: string
        apply_alternate_url:
          description: Ссылка на отклик на вакансию на сайте
          type: string
        archived:
          description: Находится ли данная вакансия в архиве
          nullable: true
          type: boolean
        area:
          $ref: '#/components/schemas/_IncludesArea'
          type: object
        contacts:
          $ref: '#/components/schemas/VacancyContactsOutput'
        created_at:
          description: Дата и время публикации вакансии
          type: string
        department:
          $ref: '#/components/schemas/VacanciesObjectsDepartment'
        employer:
          $ref: '#/components/schemas/VacanciesEmployerPublic'
        has_test:
          description: Информация о наличии прикрепленного тестового задании к вакансии
          type: boolean
        id:
          description: Идентификатор вакансии
          type: string
        insider_interview:
          $ref: '#/components/schemas/VacanciesObjectsInsiderInterview'
        metro_stations:
          $ref: '#/components/schemas/_IncludesMetroStation'
        name:
          $ref: '#/components/schemas/VacancyName'
        premium:
          description: Является ли данная вакансия премиум-вакансией
          nullable: true
          type: boolean
        professional_roles:
          $ref: '#/components/schemas/VacancyProfessionalRolesOutput'
        published_at:
          description: Дата и время публикации вакансии
          type: string
        relations:
          $ref: '#/components/schemas/VacancyRelations'
        response_letter_required:
          $ref: '#/components/schemas/VacancyResponseLetterRequired'
        response_url:
          $ref: '#/components/schemas/VacancyResponseUrl'
        salary:
          $ref: '#/components/schemas/VacancySalary'
        schedule:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyScheduleOutput'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        sort_point_distance:
          $ref: '#/components/schemas/VacancySortPointDistance'
        type:
          $ref: '#/components/schemas/VacancyTypeOutput'
        url:
          description: URL вакансии
          type: string
        working_days:
          $ref: '#/components/schemas/VacancyWorkingDaysOutput'
        working_time_intervals:
          $ref: '#/components/schemas/VacancyWorkingTimeIntervalsOutput'
        working_time_modes:
          $ref: '#/components/schemas/VacancyWorkingTimeModesOutput'
      required:
        - id
        - name
        - department
        - has_test
        - response_letter_required
        - area
        - salary
        - type
        - published_at
        - apply_alternate_url
        - url
        - alternate_url
        - relations
        - employer
        - accept_incomplete_resumes
        - professional_roles
      title: Вакансия
      type: object
    VacanciesArguments:
      properties:
        arguments:
          description: |
            Массив параметров поиска, переданных в запросе.

            Возвращается только если в запросе передан параметр `describe_arguments=true`. В массиве выдаются только те параметры, которые влияют на поиск вакансий. Неизвестные параметры игнорируются. Элемент списка с одним значением `argument` может повторяться несколько раз, если параметр имеет несколько значений
          items:
            $ref: '#/components/schemas/VacanciesArgumentItem'
          nullable: true
          type: array
      title: Использованные параметры в поиске вакансий
      type: object
    VacanciesArgumentItem:
      properties:
        argument:
          description: Параметр поиска вакансии
          type: string
        cluster_group:
          description: 'Группа кластеров, которая связана с данным параметром'
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesIdName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
        disable_url:
          description: 'URL поиска вакансий, который получится, если перестать учитывать в поиске данный параметр'
          type: string
        hex_color:
          description: Цвет линии в HEX-формате `RRGGBB` (от `000000` до `FFFFFF`). Возвращается только для аргумента `metro`
          nullable: true
          type: string
        metro_type:
          description: Станция или линия метро (`station`/`line`). Возвращается только для аргумента `metro`
          nullable: true
          type: string
        name:
          description: Название значения
          nullable: true
          type: string
        value:
          description: Значение параметра
          type: string
        value_description:
          description: Описание параметра
          nullable: true
          type: string
      required:
        - argument
        - value
        - disable_url
      title: Аргумент поиска
      type: object
    VacanciesSuggests:
      nullable: true
      properties:
        found:
          description: Найдено результатов по предложенному запросу
          type: integer
        value:
          description: Предложенный текст запроса
          type: string
      title: Исправления предложенные для текста запроса
      type: object
    VacanciesFixes:
      nullable: true
      properties:
        fixed:
          description: Текст запроса после исправления
          type: string
        original:
          description: Исходный текст запроса
          type: string
      title: Исправления применённые к тексту запроса
      type: object
    VacanciesClusters:
      properties:
        clusters:
          description: 'Массив [кластеров поиска](#tag/Poisk-vakansij/Klastery-v-poiske-vakansij)'
          items:
            $ref: '#/components/schemas/VacanciesClusterItem'
          nullable: true
          type: array
      title: Кластеры в поиске вакансий
      type: object
    VacanciesClusterItem:
      properties:
        id:
          description: Идентификатор кластера
          type: string
        items:
          description: Массив поисковых запросов в данном кластере с указанием дополнительных параметров
          items:
            $ref: '#/components/schemas/VacanciesItemsOfClusterItem'
          type: array
        name:
          description: Название типа кластера
          type: string
      required:
        - id
        - name
        - items
      title: Кластер
      type: object
    VacanciesItemsOfClusterItem:
      properties:
        count:
          description: Количество вакансий в данном элементе кластера
          type: number
        metro_line:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/_IncludesClusterMetroLine'
          type: object
        metro_station:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/_IncludesClusterMetroStation'
          type: object
        name:
          description: Название элемента кластера
          type: string
        type:
          description: 'Тип значения, связанного с группой'
          enum:
            - metro_station
            - metro_line
          nullable: true
          type: string
        url:
          description: Ссылка на поисковую выдачу по данному элементу кластера
          type: string
      required:
        - name
        - url
        - count
      title: Поисковый запрос в кластере
      type: object
    _IncludesClusterMetroLine:
      properties:
        area:
          allOf:
            - description: 'Регион (город), в котором находится линия'
              type: object
            - $ref: '#/components/schemas/_IncludesArea'
        hex_color:
          description: Цвет линии в HEX-формате `RRGGBB` (от `000000` до `FFFFFF`)
          type: string
        id:
          description: Идентификатор линии
          type: string
      required:
        - id
        - hex_color
        - area
      title: Линия метро
      type: object
    _IncludesClusterMetroStation:
      properties:
        area:
          allOf:
            - description: 'Регион, в котором находится станция'
              type: object
            - $ref: '#/components/schemas/_IncludesArea'
        hex_color:
          description: Цвет линии в HEX-формате `RRGGBB` (от `000000` до `FFFFFF`)
          type: string
        id:
          description: Идентификатор станции метро
          type: string
        lat:
          description: Широта
          type: number
        lng:
          description: Долгота
          type: number
        order:
          description: Порядковый номер станции в линии метро
          type: number
      required:
        - id
        - hex_color
        - lat
        - lng
        - order
        - area
      title: Станция метро
      type: object
    EmployerManagersEmployerManagerInfo:
      properties:
        additional_phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Дополнительный телефон менеджера
        area:
          $ref: '#/components/schemas/EmployerManagersArea'
        email:
          description: Адрес электронной почты менеджера
          type: string
        first_name:
          description: Имя менеджера
          type: string
        full_name:
          description: Полное имя менеджера
          type: string
        id:
          description: Идентификатор менеджера
          type: string
        is_main_contact_person:
          description: Является ли менеджер основным контактным лицом
          type: boolean
        last_name:
          description: Фамилия менеджера
          type: string
        manager_type:
          $ref: '#/components/schemas/EmployerManagersManagerType'
        middle_name:
          description: Отчество менеджера
          type: string
        name:
          deprecated: true
          description: Полное имя менеджера
          type: string
        permissions:
          description: 'Список [прав менеджера](#tag/Menedzhery-rabotodatelya/operation/get-employer-manager-types)'
          items:
            $ref: '#/components/schemas/EmployerManagerTypesAvailablePermissions'
          type: array
        phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Основной телефон менеджера
        position:
          description: Должность менеджера
          type: string
        vacancies_count:
          description: Количество опубликованных (активных) вакансий у данного менеджера. `null` — если у пользователя нет прав на просмотр вакансий этого менеджера
          nullable: true
          type: number
      required:
        - id
        - email
        - position
        - first_name
        - last_name
        - is_main_contact_person
        - phone
        - permissions
      title: Информация о менеджере
    EmployerManagersManagerType:
      properties:
        id:
          description: Идентификатор типа менеджера
          type: string
        name:
          description: Название типа менеджера
          type: string
      required:
        - id
        - name
      title: Тип менеджера
    ErrorsVacancyFavoritedCombinedBadAuthErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        - $ref: '#/components/schemas/ErrorsVacancyFavoritedBadAuthErrors'
      title: Ошибки
    ErrorsVacancyFavoritedBadAuthErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyFavoritedBadAuthError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки добавления вакансии в отобранное
    ErrorsVacancyFavoritedBadAuthError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - vacancies_favorited
          example: vacancies_favorited
          type: string
        value:
          description: |
            Возможные ошибки:
              * `vacancy_archived` — Вакансия уже в архиве и не может быть добавлена в отобранное
              * `limit_exceeded` — Превышен лимит количества отобранных вакансий
          enum:
            - vacancy_archived
            - limit_exceeded
          example: vacancy_archived
          type: string
      required:
        - type
        - value
      title: Ошибка добавления вакансии в отобранные
      type: object
    ErrorsCommonBadRequestBadArgumentBadRequestAndBadArgumentErrors:
      oneOf:
        - $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        - $ref: '#/components/schemas/ErrorsCommonBadRequestErrors'
      title: Ошибка параметров запроса
    SuggestsEducationalInstitutions:
      properties:
        items:
          description: Информация о найденных учебных заведениях
          items:
            $ref: '#/components/schemas/_IncludesEducationalInstitutionItem'
          title: Массив найденных учебных заведений
          type: array
      required:
        - items
      title: Учебные заведения
      type: object
    _IncludesEducationalInstitutionItem:
      properties:
        acronym:
          description: Сокращенное название учебного заведения
          nullable: true
          type: string
        area:
          allOf:
            - $ref: '#/components/schemas/SuggestsArea'
            - type: object
          description: Регион
        id:
          description: Идентификатор учебного заведения
          type: string
        synonyms:
          description: Альтернативное название учебного заведения
          nullable: true
          type: string
        text:
          description: Полное название учебного заведения
          type: string
      required:
        - id
        - text
        - area
      title: Учебное заведение
      type: object
    ResumesSearchForResumesResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/ResumesSearchForResumesItems'
          type: object
      title: Результаты поиска резюме
      type: object
    ResumesSearchForResumesItems:
      properties:
        items:
          description: Массив найденных резюме
          items:
            $ref: '#/components/schemas/ResumesSearchForResumesItem'
          type: array
      required:
        - items
      title: Найденные резюме
      type: object
    ResumesSearchForResumesItem:
      anyOf:
        - $ref: '#/components/schemas/ResumesSearchForEmployerAndApplicant'
      title: Найденное резюме
      type: object
    ResumesSearchForEmployerAndApplicant:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeShort'
        - $ref: '#/components/schemas/ResumeObjectsLastNegotiations'
        - $ref: '#/components/schemas/ResumesSearchForResumesPrivateFields'
        - properties:
            job_search_status:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdNameLastChangeTime'
              description: |
                Для получения данных нужно передать параметр `with_job_search_status=true`
            url:
              description: Ссылка на резюме
              type: string
          type: object
      title: Найденное резюме для соискателя и работодателя
      type: object
    ResumeObjectsLastNegotiations:
      properties:
        last_negotiation:
          description: Информация о последнем статусе в истории откликов/приглашений
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ResumesNegotiationNano'
            - $ref: '#/components/schemas/_IncludesNullableObject'
          type: object
      title: Последний статус в истории откликов/приглашений
      type: object
    ResumesSearchForResumesPrivateFields:
      properties: {}
      title: Приватные поля при поиске резюме
      type: object
    WebhookSubscriptionUpdate:
      additionalProperties: false
      properties:
        actions:
          description: 'Cписок событий, на которые нужно подписаться'
          discriminator:
            mapping:
              NEGOTIATION_EMPLOYER_STATE_CHANGE: '#/components/schemas/WebhookActionNegotiationEmployerStateChange'
              NEW_NEGOTIATION_VACANCY: '#/components/schemas/WebhookActionNewNegotiationVacancy'
              NEW_RESPONSE_OR_INVITATION_VACANCY: '#/components/schemas/WebhookActionNewResponseOrInvitationVacancy'
              VACANCY_ARCHIVATION: '#/components/schemas/WebhookActionVacancyArchivation'
              VACANCY_CHANGE: '#/components/schemas/WebhookActionVacancyChange'
              VACANCY_PROLONGATION: '#/components/schemas/WebhookActionVacancyProlongation'
              VACANCY_PUBLICATION_FOR_VACANCY_MANAGER: '#/components/schemas/WebhookActionVacancyPublicationForVacancyManager'
            propertyName: type
          items:
            anyOf:
              - $ref: '#/components/schemas/WebhookActionNewNegotiationVacancy'
              - $ref: '#/components/schemas/WebhookActionNewResponseOrInvitationVacancy'
              - $ref: '#/components/schemas/WebhookActionVacancyArchivation'
              - $ref: '#/components/schemas/WebhookActionVacancyChange'
              - $ref: '#/components/schemas/WebhookActionVacancyProlongation'
              - $ref: '#/components/schemas/WebhookActionVacancyPublicationForVacancyManager'
              - $ref: '#/components/schemas/WebhookActionNegotiationEmployerStateChange'
          minItems: 1
          type: array
        url:
          description: 'URL, на который будет отправляться POST запрос при наступлении события'
          example: 'http://www.example.com'
          format: uri
          type: string
      title: Объект подписки
      type: object
    ErrorsVacancyBlacklistedNotFoundErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyBlacklistedNotFoundError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Не найдено
    ErrorsVacancyBlacklistedNotFoundError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - vacancies_blacklist
          example: vacancies_blacklist
          type: string
        value:
          description: |
            Название поля с ошибкой. Возможные значения:
            * `not_found` — вакансия для добавления в список не найдена
          enum:
            - not_found
          example: not_found
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    DictionariesIndustriesResponse:
      items:
        $ref: '#/components/schemas/DictionariesBranchItem'
      title: Список отраслей
      type: array
    DictionariesBranchItem:
      properties:
        id:
          description: Идентификатор отрасли
          type: string
        industries:
          description: Сферы деятельности
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
        name:
          description: Название отрасли
          type: string
      required:
        - id
        - name
        - industries
      title: Отрасль
      type: object
    ErrorsArtifactUploadBadJsonData:
      anyOf:
        - $ref: '#/components/schemas/ErrorsArtifactUploadErrors'
        - $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
      title: Ошибки
    ErrorsArtifactUploadErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsArtifactUploadError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибка при загрузке артефакта
    ErrorsArtifactUploadError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - artifacts
          example: artifacts
          type: string
        value:
          description: |
            Название поля с ошибкой. Возможные значения:
            * `file` — не указан файл, либо указано несколько.
            * `type` — некорректное значение параметра `type`.
            * `description` — слишком длинное описание.
            * `limit_exceeded` — превышено количество артефактов.
            * `unknown_format` — неизвестный формат файла
          enum:
            - file
            - type
            - description
            - limit_exceeded
            - unknown_format
          example: limit_exceeded
          type: string
      required:
        - type
        - value
      title: Ошибка при загрузке артефакта
      type: object
    EmployerManagersManagerData:
      properties:
        additional_phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Дополнительный телефон менеджера
        permissions:
          description: 'Список прав, которые можно дать данному типу менеджера'
          items:
            $ref: '#/components/schemas/EmployerManagerTypesAvailablePermissions'
          type: array
        phone:
          allOf:
            - $ref: '#/components/schemas/EmployerManagersPhone'
            - type: object
          description: Основной телефон менеджера
        position:
          title: Должность менеджера
          type: string
      title: JSON c редактируемыми параметрами менеджера
    MetroCityMetroItem:
      properties:
        id:
          description: Идентификатор города
          type: string
        lines:
          description: Список линий метро в городе
          items:
            $ref: '#/components/schemas/MetroMetroLineWithStations'
          type: array
        name:
          description: Название города
          type: string
      required:
        - id
        - name
        - lines
      title: Город
    MetroMetroLineWithStations:
      allOf:
        - $ref: '#/components/schemas/MetroMetroLine'
        - properties:
            stations:
              description: Список станций метро на линии
              items:
                $ref: '#/components/schemas/MetroLineStation'
              type: array
          required:
            - stations
          type: object
      title: Линия метро со станциями
      type: object
    MetroMetroLine:
      properties:
        hex_color:
          description: Цвет линии в HEX-формате `RRGGBB` (от `000000` до `FFFFFF`)
          pattern: '^[0-9A-Fa-f]{6}$'
          type: string
        id:
          description: Идентификатор линии
          type: string
        name:
          description: Название линии
          type: string
      required:
        - hex_color
        - id
        - name
      title: Линия метро
    MetroLineStation:
      properties:
        id:
          description: Идентификатор станции
          type: string
        lat:
          description: Широта расположения станции
          type: number
        line:
          allOf:
            - $ref: '#/components/schemas/MetroMetroLine'
          description: Линия метро
        lng:
          description: Долгота расположения станции
          type: number
        name:
          description: Название станции
          type: string
        order:
          description: 'Порядковый номер станции на линии, начиная с 0'
          type: integer
      required:
        - id
        - name
        - lat
        - lng
        - order
        - line
      title: Станция метро
    MailTemplatesMailTemplates:
      items:
        $ref: '#/components/schemas/MailTemplatesMailTemplate'
      title: Список доступных шаблонов ответов соискателю
      type: array
    MailTemplatesMailTemplate:
      properties:
        employer_state:
          description: 'Работодательский статус, соответствующий данному шаблону; может отсутствовать если шаблон не связан с каким-либо статусом'
          type: string
        id:
          description: Идентификатор шаблона
          type: string
        name:
          description: Имя шаблона
          type: string
        template_modified:
          description: Был ли изменен шаблон работодателем или же используется стандартный шаблон с текстом от Хэдхантер
          type: boolean
        text:
          description: Текст шаблона
          type: string
        type:
          description: Способ доставки сообщения сформированного из шаблона
          enum:
            - SMS
            - EMAIL
          type: string
        variables:
          description: Переменные доступные для вставки в шаблон
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          type: array
      required:
        - id
        - name
        - text
        - variables
        - type
        - template_modified
      title: Шаблон ответа соискателю
    VacancyDraftVacancyDraftItems:
      properties:
        found:
          title: Количество найденных черновиков
          type: number
        items:
          description: Список черновиков
          items:
            $ref: '#/components/schemas/VacancyDraftVacancyDraftItem'
          type: array
        page:
          title: Номер текущей страницы
          type: number
        pages:
          title: Количество страниц с черновиками
          type: number
        per_page:
          title: Количество элементов на страницу
          type: number
      required:
        - items
        - found
        - page
        - pages
        - per_page
      title: Успешный ответ
    VacancyDraftVacancyDraftItem:
      allOf:
        - $ref: '#/components/schemas/VacancyDraftVacancyDraftBase'
        - properties:
            areas:
              description: 'Коды и названия регионов (фед. округа, субъекты федерации, города)'
              items:
                $ref: '#/components/schemas/VacancyAreaOutput'
              minItems: 1
              type: array
            assigned_manager:
              $ref: '#/components/schemas/VacancyDraftAssignedManager'
            billing_type:
              $ref: '#/components/schemas/VacancyBillingTypeOutput'
            name:
              description: Название вакансии
              type: string
            publication_type:
              deprecated: true
              description: 'Тип публикации (справочник [vacancy_billing_type](#tag/Obshie-spravochniki/operation/get-dictionaries))'
              type: string
            url:
              description: Url для запроса полной информации черновика
              type: string
            vacancy_type:
              description: 'Тип вакансии (справочник [vacancy_type](#tag/Obshie-spravochniki/operation/get-dictionaries))'
              nullable: true
              type: string
          required:
            - areas
            - publication_type
            - billing_type
            - vacancy_type
            - url
          type: object
      title: Черновик
    SuggestsProfessionalRoles:
      additionalProperties: false
      description: Подсказки по профессиональным ролям
      properties:
        items:
          description: Информация о найденных профессиональных ролях
          items:
            $ref: '#/components/schemas/SuggestsProfessionalRoleItem'
          title: Массив найденных профессиональных ролей
          type: array
      required:
        - items
      title: Подсказки по профессиональным ролям
      type: object
    SuggestsProfessionalRoleItem:
      properties:
        accept_incomplete_resumes:
          description: 'Профессиональная роль, для которой можно принимать отклики неполным резюме'
          example: true
          type: boolean
        id:
          description: Идентификатор профессиональной роли
          example: '21'
          type: string
        text:
          description: Название профессиональной роли
          example: Водитель
          type: string
      required:
        - id
        - text
        - accept_incomplete_resumes
      title: Информация о найденных проф. ролях
      type: object
    DictionariesDictResponse:
      description: 'Справочники полей и сущностей, используемых в API'
      properties:
        applicant_comment_access_type:
          description: Тип доступа для комментария к соискателю
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        applicant_comments_order:
          description: 'Типы сортировки [списка комментариев к соискателю](#tag/Kommentarii-k-soiskatelyu/operation/get-applicant-comments-list)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        applicant_negotiation_status:
          description: Статусы откликов/приглашений
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для откликов/приглашений
          type: array
        business_trip_readiness:
          description: Готовность к командировкам
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        currency:
          description: Справочник валют
          items:
            $ref: '#/components/schemas/DictionariesCurrencyItem'
          title: Прочие справочники
          type: array
        driver_license_types:
          description: Категории водительских прав
          items:
            $ref: '#/components/schemas/_IncludesId'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        education_level:
          description: Образование в резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        employer_active_vacancies_order:
          description: Тип сортировки списка опубликованных вакансий
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для сортировки вакансий работодателя
          type: array
        employer_archived_vacancies_order:
          description: Тип сортировки списка архивных вакансий
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для сортировки вакансий работодателя
          type: array
        employer_hidden_vacancies_order:
          description: Тип сортировки скрытых вакансий
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для сортировки вакансий работодателя
          type: array
        employer_relation:
          description: Типы связи компании с пользователем
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        employer_type:
          description: Тип работодателя
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        employment:
          description: Тип занятости
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        experience:
          description: Опыт работы
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        gender:
          description: Пол
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        job_search_statuses_applicant:
          description: Статусы поиска соискателей для установки и отображения самому соискателю
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        job_search_statuses_employer:
          description: Статусы поиска соискателей для отображения работодателям
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        language_level:
          description: Уровень владения языком
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        messaging_status:
          description: Статус возможности отправки сообщения в переписке
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для откликов/приглашений
          type: array
        negotiations_order:
          description: Типы порядка отображения откликов
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для откликов/приглашений
          type: array
        negotiations_participant_type:
          description: Типы участников переписки
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для откликов/приглашений
          type: array
        negotiations_state:
          description: Типы состояний откликов
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для откликов/приглашений
          type: array
        phone_call_status:
          description: 'Статус звонка, зафиксированного в системе кол-трекинг'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        preferred_contact_type:
          description: Предпочитаемый способ связи
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        relocation_type:
          description: Готовность к переезду
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        resume_access_type:
          description: Уровень доступа к резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        resume_contacts_site_type:
          description: Тип сайта в поле «контакты»
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        resume_hidden_fields:
          description: 'Поля резюме, которые могут быть [скрыты](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#hidden-fields)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        resume_moderation_note:
          description: Комментарий модератора
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        resume_search_experience_period:
          description: Условие поиска по опыту работы
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник параметров поиска резюме
          type: array
        resume_search_fields:
          description: Область поиска в резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник параметров поиска резюме
          type: array
        resume_search_label:
          description: Метки поиска резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник параметров поиска резюме
          type: array
        resume_search_logic:
          description: Условие поиска резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник параметров поиска резюме
          type: array
        resume_search_order:
          description: Тип сортировки резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник параметров поиска резюме
          type: array
        resume_search_relocation:
          description: Условие поиска по проживанию в регионе и готовности к переезду
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник параметров поиска резюме
          type: array
        resume_status:
          description: Статус резюме
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        schedule:
          description: График работы
          items:
            $ref: '#/components/schemas/_IncludesIdNameUid'
          title: Справочник для полей вакансии
          type: array
        travel_time:
          description: Время в пути
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: 'Справочник для полей, используемых в резюме'
          type: array
        vacancy_billing_type:
          description: Варианты размещения вакансии с точки зрения биллинга
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        vacancy_cluster:
          description: Тип кластеров
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для параметров поиска вакансий
          type: array
        vacancy_label:
          description: Метки вакансии
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        vacancy_not_prolonged_reason:
          description: 'Причины, из-за которых невозможно [продлить вакансию](#tag/Upravlenie-vakansiyami/operation/get-prolongation-vacancy-info)'
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Прочие справочники
          type: array
        vacancy_relation:
          description: Типы связи вакансии с пользователем
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        vacancy_search_fields:
          description: Область поиска в вакансии
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для параметров поиска вакансий
          type: array
        vacancy_search_order:
          description: Тип сортировки вакансии
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для параметров поиска вакансий
          type: array
        vacancy_type:
          description: Тип вакансии
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        working_days:
          description: Рабочие дни
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        working_time_intervals:
          description: Временные интервалы работы
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
        working_time_modes:
          description: Режимы времени работы
          items:
            $ref: '#/components/schemas/_IncludesIdName'
          title: Справочник для полей вакансии
          type: array
      required:
        - education_level
        - gender
        - language_level
        - preferred_contact_type
        - relocation_type
        - travel_time
        - resume_access_type
        - business_trip_readiness
        - resume_contacts_site_type
        - resume_status
        - resume_moderation_note
        - driver_license_types
        - resume_hidden_fields
        - employment
        - experience
        - schedule
        - vacancy_type
        - vacancy_label
        - vacancy_relation
        - vacancy_billing_type
        - working_days
        - working_time_intervals
        - working_time_modes
        - vacancy_search_fields
        - vacancy_search_order
        - vacancy_cluster
        - employer_active_vacancies_order
        - employer_archived_vacancies_order
        - negotiations_order
        - negotiations_state
        - messaging_status
        - negotiations_participant_type
        - applicant_negotiation_status
        - currency
        - employer_type
        - employer_relation
        - vacancy_not_prolonged_reason
        - applicant_comments_order
        - applicant_comment_access_type
        - phone_call_status
        - job_search_statuses_applicant
        - job_search_statuses_employer
      title: Справочники полей резюме
      type: object
    _IncludesIdNameUid:
      allOf:
        - $ref: '#/components/schemas/_IncludesIdName'
        - properties:
            uid:
              description: Универсальный идентификатор
              type: string
          required:
            - uid
          type: object
      title: 'Объект с идентификатором, названием и универсальным идентификатором'
      type: object
    DictionariesCurrencyItem:
      properties:
        abbr:
          description: Краткое обозначение
          type: string
        code:
          description: Код
          type: string
        default:
          description: Используется ли в качестве валюты по умолчанию?
          type: boolean
        in_use:
          description: Можно ли использовать на данном хосте?
          type: boolean
        name:
          description: Название
          type: string
        rate:
          description: Курс по отношению к рублю
          type: number
      required:
        - code
        - abbr
        - name
        - default
        - rate
        - in_use
      title: Валюта
      type: object
    NegotiationsNegotiationsStatisticsEmployerResponse:
      properties:
        employer_statistics:
          $ref: '#/components/schemas/NegotiationsNegotiationsStatistics'
      required:
        - employer_statistics
      title: Статистика откликов для работодателя
      type: object
    VacancyDraftDraftResponseSchema:
      allOf:
        - $ref: '#/components/schemas/Id'
        - example:
            $ref: '#/components/examples/VacancyDraftVacancyDraftResponse/value'
          properties:
            ignored_fields:
              description: 'Поля, которые не были сохранены при создании черновика, вследствие не верного заполнения'
              items:
                description: Имя проигнорированного поля
                type: string
              type: array
            name:
              description: Заголовок черновика
              type: string
            publication_ready:
              description: Готовность черновика к публикации
              type: boolean
            validation_errors:
              description: 'Поля, которые были сохранены при создании черновика, с соответствующими ошибками, которые необходимо поправить для успешной публикации вакансии на основе черновика'
              items:
                $ref: '#/components/schemas/VacancyDraftDraftVacancyError'
              type: array
          required:
            - name
            - publication_ready
          type: object
      title: Ответ на публикацию черновика
      type: object
    VacancyDraftDraftVacancyError:
      properties:
        reason:
          description: Причина ошибки
          type: string
        value:
          description: 'Название поля, в котором допущена ошибка'
          type: string
      required:
        - value
      title: Ошибка
      type: object
    VacanciesVisitorsResponse:
      allOf:
        - $ref: '#/components/schemas/VacanciesVisitorsVisitorItems'
          type: object
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/VacanciesVisitorsHiddenOnPage'
          type: object
      title: Успешный ответ
    VacanciesVisitorsHiddenOnPage:
      properties:
        hidden_on_page:
          description: Количество удаленных или скрытых соискателями резюме на странице
          type: number
      required:
        - hidden_on_page
      title: Количество удаленных или скрытых соискателями резюме
      type: object
    VacanciesVisitorsVisitorItems:
      properties:
        items:
          description: Список сокращенных представлений резюме
          items:
            allOf:
              - $ref: '#/components/schemas/ResumeResumeShort'
              - $ref: '#/components/schemas/_IncludesUrl'
          minItems: 0
          type: array
      required:
        - items
      title: Список резюме в сокращенном представлении
    ResumesGetResumeVisibilityListResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/ResumesGetResumeVisibilityListProperties'
          type: object
      title: 'Список работодателей, для которых резюме должно быть видимо или скрыто'
      type: object
    ResumesGetResumeVisibilityListProperties:
      properties:
        items:
          description: Список работодателей
          items:
            $ref: '#/components/schemas/ResumesGetResumeVisibilityListItem'
          type: array
        limit:
          description: Максимальное количество элементов в списке
          type: number
      required:
        - limit
        - items
      title: Список свойств видимости резюме
      type: object
    AuthUserTokenAndAppToken:
      oneOf:
        - $ref: '#/components/schemas/AuthUserToken'
        - $ref: '#/components/schemas/AuthAppToken'
      title: Успешный ответ
    AuthUserToken:
      additionalProperties: false
      properties:
        access_token:
          type: string
        expires_in:
          description: Время жизни токена в секундах
          format: int64
          minimum: 0
          type: integer
        refresh_token:
          description: 'Токен, который можно использовать для продления срока жизни соответствующего access токена'
          type: string
        token_type:
          description: Тип выданного токена. Всегда принимает значение `bearer`
          enum:
            - bearer
          type: string
      required:
        - access_token
        - token_type
        - expires_in
        - refresh_token
      title: Авторизация пользователя
      type: object
    AuthAppToken:
      additionalProperties: false
      properties:
        access_token:
          type: string
        token_type:
          description: Тип выданного токена. Всегда принимает значение `bearer`
          enum:
            - bearer
          type: string
      required:
        - access_token
        - token_type
      title: Авторизация приложения
      type: object
    SuggestsSearchKeyword:
      additionalProperties: false
      description: Подсказки по ключевым словам поиска
      properties:
        items:
          items:
            $ref: '#/components/schemas/SuggestsSearchKeywordItem'
          title: Массив ключевых слов
          type: array
      required:
        - items
      title: Подсказки по ключевым словам поиска
      type: object
    SuggestsSearchKeywordItem:
      properties:
        text:
          description: Ключевое слово
          type: string
      required:
        - text
      title: Ключевое слово
      type: object
    VacanciesVacancyProlongate:
      properties:
        actions:
          description: 'Список действий, которые можно предпринять для продления вакансии'
          items:
            oneOf:
              - $ref: '#/components/schemas/VacanciesVacancyProlongateAvailableActions'
              - $ref: '#/components/schemas/VacanciesVacancyProlongateUnavailableActions'
          type: array
        expires_at:
          description: Дата окончания публикации вакансии
          type: string
        id:
          description: Идентификатор вакансии
          type: string
      required:
        - id
        - expires_at
        - actions
      title: Инфо о пролонгации вакансии
      type: object
    VacanciesVacancyProlongateAvailableActions:
      properties:
        enabled:
          description: Возможно ли выполнить действие
          type: boolean
        id:
          description: Идентификатор действия
          type: string
        method:
          description: HTTP-метод запроса для выполнения действия
          type: string
        url:
          description: URL запроса для выполнения действия
          type: string
      required:
        - id
        - enabled
        - url
        - method
      title: Продление возможно
      type: object
    VacanciesVacancyProlongateUnavailableActions:
      properties:
        disable_reason:
          allOf:
            - description: 'Причина, по которой совершить действие невозможно. Элемент `vacancy_not_prolonged_reason` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              type: object
            - $ref: '#/components/schemas/_IncludesIdName'
        enabled:
          description: Возможно ли выполнить действие
          type: boolean
        id:
          description: Идентификатор действия
          type: string
      required:
        - id
        - enabled
        - disable_reason
      title: Продление невозможно
      type: object
    EmployersEmployerVacancyAreasResponse:
      allOf:
        - $ref: '#/components/schemas/EmployersEmployerVacancyAreasItems'
        - $ref: '#/components/schemas/_IncludesPagination'
      title: Успешный ответ
    EmployersEmployerVacancyAreasItems:
      properties:
        items:
          description: Список регионов
          items:
            $ref: '#/components/schemas/_IncludesArea'
          minItems: 0
          type: array
      required:
        - items
      title: Список регионов
    ResumesByStatusResponse:
      properties:
        already_applied:
          description: 'Список резюме, уже использованных для отклика на данную вакансию'
          items:
            $ref: '#/components/schemas/ResumesSuitableResumeItem'
          minItems: 0
          type: array
        counters:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/_IncludesNullableObject'
            - $ref: '#/components/schemas/ResumesByStatusCounters'
          type: object
        not_published:
          description: 'Список неопубликованных резюме (в [статусе](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume) `not_published` или `blocked`)'
          items:
            $ref: '#/components/schemas/ResumesSuitableResumeItem'
          minItems: 0
          type: array
        suitable:
          description: 'Список резюме, которыми можно откликнуться на данную вакансию'
          items:
            $ref: '#/components/schemas/ResumesSuitableResumeItem'
          minItems: 0
          type: array
        unavailable:
          description: 'Список резюме, которыми невозможно откликнуться на данную вакансию (например, из-за конфликтующих настроек видимости)'
          items:
            $ref: '#/components/schemas/ResumesSuitableResumeItem'
          minItems: 0
          type: array
      required:
        - suitable
        - not_published
        - already_applied
        - unavailable
      title: 'Резюме, сгруппированные по возможности отклика'
      type: object
    ResumesByStatusCounters:
      description: Количество резюме в списках
      properties:
        already_applied:
          description: 'Количество резюме, уже использованных для отклика на данную вакансию'
          type: number
        not_published:
          description: 'Количество неопубликованных резюме (в [статусе](#tag/Rezyume.-Prosmotr-informacii/Status-rezyume) `not_published` или `blocked`)'
          type: number
        suitable:
          description: 'Количество резюме, которыми можно откликнуться на данную вакансию'
          type: number
        unavailable:
          description: 'Количество резюме, которыми невозможно откликнуться на данную вакансию (например, из-за конфликтующих настроек видимости)'
          type: number
      required:
        - suitable
        - not_published
        - already_applied
        - unavailable
      title: Количество резюме
      type: object
    ErrorsSavedSearchForbiddenErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              example: Forbidden
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsSavedSearchForbiddenError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки
    ErrorsSavedSearchForbiddenError:
      additionalProperties: false
      properties:
        allowed_accounts:
          description: |
            Список доступных для токена аккаунтов менеджера в случае, если используемый рабочий аккаунт заблокирован.
            Актуально только в случае авторизации работодателя
          items:
            $ref: '#/components/schemas/ManagerAccount'
          minItems: 1
          type: array
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - saved_searches
            - forbidden
            - oauth
          example: oauth
          type: string
        value:
          description: |
            Возможные ошибки:
            * `cant_send_to_yourself` — Нельзя передать сохраненный поиск самому себе
            * `user_auth_expected` — Передана авторизация приложения, метод требует [авторизации пользователя](#section/Avtorizaciya/Avtorizaciya-polzovatelya)
          enum:
            - cant_send_to_yourself
            - user_auth_expected
          example: user_auth_expected
          type: string
      required:
        - type
      title: Ошибка
      type: object
    SuggestsPositions:
      additionalProperties: false
      description: Подсказки по должностям
      properties:
        items:
          description: Информация о найденных должностях
          items:
            $ref: '#/components/schemas/SuggestsPositionItem'
          title: Массив найденных должностей
          type: array
      required:
        - items
      title: Подсказки по должностям резюме
      type: object
    SuggestsPositionItem:
      properties:
        id:
          description: Идентификатор должности
          example: '2063'
          type: string
        professional_roles:
          description: 'Информация о профессиональных ролях, соответствующих должности'
          items:
            $ref: '#/components/schemas/SuggestsProfessionalRoleItemWithName'
          minItems: 1
          title: 'Массив профессиональных ролей, соответствующих должности'
          type: array
        specializations:
          description: 'Информация о специализациях, соответствующих должности'
          items:
            $ref: '#/components/schemas/SuggestsSpecializationsWithName'
          minItems: 1
          title: 'Массив специализаций, соответствующих должности'
          type: array
        text:
          description: Название должности
          example: Личный водитель
          type: string
      required:
        - id
        - text
        - professional_roles
      title: Информация о найденных позициях
      type: object
    SuggestsSpecializationsWithName:
      properties:
        id:
          description: Идентификатор специализации
          example: '21.17'
          type: string
        name:
          description: Название специализации
          example: Автоперевозки
          type: string
        profarea_id:
          description: Идентификатор профессиональной области
          example: '21'
          type: string
        profarea_name:
          description: Название профессиональной области
          example: 'Транспорт, логистика'
          type: string
      required:
        - id
        - name
        - profarea_id
        - profarea_name
      title: Информация о найденных специализациях с именем
      type: object
    ArtifactsArtifactConditions:
      properties:
        counters:
          allOf:
            - $ref: '#/components/schemas/ArtifactsCounters'
            - type: object
          description: Счетчик артефактов данного типа
        fields:
          allOf:
            - $ref: '#/components/schemas/ArtifactsFields'
            - type: object
          description: Условия для полей артефакта
      required:
        - fields
        - counters
      title: Условия загрузки артефакта
      type: object
    ArtifactsCounters:
      properties:
        max:
          description: 'Максимально возможное количество артефактов данного типа, которое можно загрузить'
          type: number
        uploaded:
          description: Количество уже загруженных артефактов данного типа
          type: number
      required:
        - max
        - uploaded
      title: Счетчик артефактов данного типа
    ArtifactsFields:
      properties:
        description:
          allOf:
            - $ref: '#/components/schemas/ArtifactsDescription'
            - type: object
          description: Условия для поля `description`
        file:
          allOf:
            - $ref: '#/components/schemas/ArtifactsFile'
            - type: object
          description: Условия для поля `file`
        type:
          allOf:
            - $ref: '#/components/schemas/ArtifactsType'
            - type: object
          description: Условия для поля `type`
      required:
        - description
        - file
        - type
      title: Условия для полей артефакта
    ArtifactsDescription:
      properties:
        max_length:
          description: Максимальный размер текстового поля `description`
          type: number
        min_length:
          description: Минимальный размер текстового поля `description`
          type: number
        required:
          description: Является ли поле `description` обязательным
          type: boolean
      required:
        - max_length
        - min_length
        - required
      title: Условия для поля `description`
    ArtifactsFile:
      properties:
        max_size:
          description: Максимальный размер файла
          type: number
        mime_type:
          description: 'Список допустимых [MIME-типов](https://www.iana.org/assignments/media-types/media-types.xhtml) файлов'
          items:
            type: string
          type: array
        required:
          description: Является ли поле `file` обязательным
          type: boolean
      required:
        - max_size
        - mime_type
        - required
      title: Условия для поля `file`
    ArtifactsType:
      properties:
        required:
          description: Является ли поле `type` обязательным
          type: boolean
      required:
        - required
      title: Условия для поля `type`
    AuthRefreshToken:
      additionalProperties: false
      properties:
        grant_type:
          description: Cпособ запроса токена
          enum:
            - refresh_token
          example: refresh_token
          type: string
        refresh_token:
          description: 'Refresh-токен, полученный ранее при [получении пары токенов](#section/Avtorizaciya/Obnovlenie-pary-access-i-refresh-tokenov) или прошлом обновлении пары'
          example: xuLNvUSv7FYM4MPfXDP9aJWe
          minLength: 1
          type: string
      required:
        - grant_type
        - refresh_token
      title: Параметры для обновление пары access и refresh токенов
      type: object
    ArtifactsArtifactPhotoResponse:
      allOf:
        - $ref: '#/components/schemas/ArtifactsArtifactPhotoItems'
        - $ref: '#/components/schemas/_IncludesPagination'
      title: Успешный ответ
    ArtifactsArtifactPhotoItems:
      properties:
        items:
          description: Список изображений
          items:
            $ref: '#/components/schemas/ArtifactsArtifactItem'
          minItems: 0
          type: array
      required:
        - items
      title: Коллекция изображений
    NegotiationsMessageSent:
      allOf:
        - $ref: '#/components/schemas/NegotiationsMessage'
        - properties:
            address:
              nullable: true
              oneOf:
                - $ref: '#/components/schemas/VacancyAddressOutput'
                - $ref: '#/components/schemas/_IncludesNullableObject'
              type: object
          type: object
      title: Подтверждение отправки
      type: object
    ResumesCreationAvailability:
      properties:
        created:
          description: Количество созданных резюме
          type: number
        is_creation_available:
          description: Доступно ли создание новых резюме для данного пользователя
          type: boolean
        max:
          description: Максимально возможное количество резюме
          type: number
        remaining:
          description: Количество доступных для создания резюме
          type: number
      required:
        - is_creation_available
        - max
        - created
        - remaining
      title: Информация о возможности создания резюме
      type: object
    DictionariesSalaryStatisticsEmployeeLevelResponse:
      description: Список уровней компетенций
      items:
        $ref: '#/components/schemas/_IncludesIdNameDesc'
      title: Список уровней компетенций
      type: array
    ErrorsEmployerBlacklistedNotFoundErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsEmployerBlacklistedNotFoundError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Не найдено
    ErrorsEmployerBlacklistedNotFoundError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - employers_blacklist
          example: employers_blacklist
          type: string
        value:
          description: |
            Название поля с ошибкой. Возможные значения:
            * `not_found` — работодатель для добавления в список не найден
          enum:
            - not_found
          example: not_found
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    ResumeResumeViewResponse:
      anyOf:
        - $ref: '#/components/schemas/ResumeResumeForEmployer'
        - $ref: '#/components/schemas/ResumeResumeForApplicant'
      description: Информация о резюме
      title: Резюме
      type: object
    ResumeResumeForEmployer:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeFull'
        - $ref: '#/components/schemas/ResumeEmployerFields'
      title: Информация о резюме для работодателя
      type: object
    ResumeEmployerFields:
      properties:
        actions:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsActions'
          description: Дополнительные действия
          type: object
        can_view_full_info:
          description: Наличие права просмотра контактной информации в резюме
          nullable: true
          type: boolean
        favorited:
          description: Добавлено ли резюме в избранные
          type: boolean
        job_search_status:
          allOf:
            - $ref: '#/components/schemas/_IncludesIdNameLastChangeTime'
          description: |
            Для получения данных нужно передать параметр `with_job_search_status=true`. 
            Возможные значения перечислены в поле `job_search_statuses_employer` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
        negotiations_history:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsNegotiationsHistoryForEmployer'
          description: Краткая история откликов/приглашений по резюме
          type: object
        owner:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsOwner'
          description: Информация о владельце резюме
          type: object
        paid_services:
          $ref: '#/components/schemas/ResumeObjectsEmployerPaidServices'
        photo:
          $ref: '#/components/schemas/ResumeObjectsOneOfPhotoNoId'
        portfolio:
          description: Список изображений в портфолио пользователя
          items:
            $ref: '#/components/schemas/ResumeObjectsPortfolioNoId'
          type: array
      required:
        - negotiations_history
        - owner
        - favorited
        - portfolio
        - paid_services
        - actions
      title: 'Поля, возвращаемые для работодателя'
      type: object
    ResumeObjectsPortfolioNoId:
      properties:
        description:
          description: Описание изображения в портфолио
          type: string
        medium:
          description: |
            URL среднего по размеру изображения. Изображение по данному url доступно ограниченное время, после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернётся `404 Not Found`
          type: string
        small:
          description: |
            URL уменьшенного изображения. Изображение по данному url доступно ограниченное время, после получения ответа. Приложение должно быть готово к тому, что на запрос изображения вернётся `404 Not Found`
          type: string
      required:
        - small
        - medium
      title: Портфолио
      type: object
    ResumeObjectsNegotiationsHistoryForEmployer:
      allOf:
        - $ref: '#/components/schemas/ResumeObjectsNegotiationsHistoryUrl'
        - properties:
            vacancies:
              description: Массив вакансий
              items:
                $ref: '#/components/schemas/ResumesResumeNegotiationsHistoryVacancy'
              nullable: true
              type: array
          type: object
      title: История откликов/приглашений
      type: object
    ResumeObjectsOneOfPhotoNoId:
      description: Фотография пользователя
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/ResumeObjectsPhotoNoId'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Фотография
      type: object
    ResumeObjectsEmployerPaidServices:
      description: |
        Платные услуги по резюме для работодателя

        Работодателю может быть предложен список платных услуг по резюме.

        Например, если полные данные по резюме недоступны, то будет выдано предложение покупки рекомендованной услуги, чтобы такой доступ получить
      items:
        properties:
          description:
            description: Примечание к использованию услуги
            type: string
          id:
            description: Идентификатор услуги
            type: string
          name:
            description: Название услуги
            type: string
          price_list:
            description: Прайс на услугу
            properties:
              alternate_url:
                description: 'Ссылка на сайт, по которой доступен полный прайс на услугу'
                type: string
            required:
              - alternate_url
            type: object
          quick_purchase:
            description: 'Описание быстрой покупки услуги, если доступно'
            properties:
              alternate_url:
                description: 'Ссылка на сайт, по которой будет предложено купить услугу'
                type: string
              currency:
                description: Валюта услуги
                properties:
                  abbr:
                    description: Краткое обозначение
                    type: string
                  code:
                    description: Код
                    type: string
                  name:
                    description: Название
                    type: string
                required:
                  - abbr
                  - code
                  - name
                type: object
              name:
                description: Название действия по заказу услуги
                type: string
              price:
                description: Цена услуги
                type: number
            required:
              - alternate_url
              - currency
              - name
              - price
            type: object
        required:
          - id
          - name
          - price_list
        type: object
      title: Платные услуги по резюме
      type: array
    ResumeResumeFull:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeProfile'
        - properties:
            birth_date:
              description: День рождения (в формате `ГГГГ-ММ-ДД`)
              nullable: true
              type: string
            business_trip_readiness:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              description: 'Готовность к командировкам. Элемент справочника [business_trip_readiness](#tag/Obshie-spravochniki/operation/get-dictionaries)'
            citizenship:
              description: 'Список гражданств соискателя. Элементы [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)'
              items:
                $ref: '#/components/schemas/_IncludesIdNameUrl'
              type: array
            contact:
              description: Список контактов соискателя
              items:
                $ref: '#/components/schemas/_IncludesContact'
              type: array
            creds:
              $ref: '#/components/schemas/CredsResumeCreds'
            driver_license_types:
              description: Список категорий водительских прав соискателя
              items:
                $ref: '#/components/schemas/ResumeObjectsDriverLicenseTypes'
              type: array
            employment:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              deprecated: true
            employments:
              description: 'Список подходящих соискателю типов занятостей. Элементы справочника [employment](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              items:
                $ref: '#/components/schemas/_IncludesIdName'
              type: array
            has_vehicle:
              description: Наличие личного автомобиля у соискателя
              nullable: true
              type: boolean
            language:
              description: 'Список языков, которыми владеет соискатель. Элементы справочника [languages](#tag/Obshie-spravochniki/operation/get-languages)'
              items:
                $ref: '#/components/schemas/_IncludesLanguageLevel'
              type: array
            metro:
              $ref: '#/components/schemas/ResumeObjectsOneOfMetroStation'
            paid_services:
              description: Платные услуги по резюме
              items:
                $ref: '#/components/schemas/ResumeObjectsPaidServices'
              type: array
            professional_roles:
              description: Массив объектов профролей
              items:
                $ref: '#/components/schemas/_IncludesIdName'
              nullable: true
              type: array
            recommendation:
              description: Список рекомендаций
              items:
                $ref: '#/components/schemas/ResumeObjectsRecommendation'
              type: array
            relocation:
              allOf:
                - $ref: '#/components/schemas/ResumeObjectsRelocationPublic'
              description: Возможность переезда
              type: object
            resume_locale:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              description: 'Язык, на котором составлено резюме (локаль). Элемент справочника [локали резюме](#tag/Obshie-spravochniki/operation/get-locales)'
              type: object
            schedule:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              deprecated: true
            schedules:
              description: 'Список подходящих соискателю графиков работы. Элементы справочника [schedule](#tag/Obshie-spravochniki/operation/get-dictionaries)'
              items:
                $ref: '#/components/schemas/_IncludesIdName'
              type: array
            site:
              description: Профили в соц. сетях и других сервисах
              items:
                $ref: '#/components/schemas/ResumeObjectsSite'
              type: array
            skill_set:
              description: Ключевые навыки (список уникальных строк)
              items:
                type: string
              type: array
            skills:
              description: 'Дополнительная информация, описание навыков в свободной форме'
              nullable: true
              type: string
            tags:
              description: Теги к резюме
              items:
                $ref: '#/components/schemas/_IncludesId'
              type: array
            travel_time:
              allOf:
                - $ref: '#/components/schemas/_IncludesIdName'
              description: 'Желательное время в пути до работы. Элемент справочника [travel_time](#tag/Obshie-spravochniki/operation/get-dictionaries)'
            work_ticket:
              description: |
                Список регионов, в которых соискатель имеет разрешение на работу. Элементы [справочника регионов](#tag/Obshie-spravochniki/operation/get-areas)
              items:
                $ref: '#/components/schemas/_IncludesIdNameUrl'
              type: array
          required:
            - contact
            - resume_locale
            - citizenship
            - work_ticket
            - recommendation
            - relocation
            - employments
            - schedule
            - schedules
            - site
            - travel_time
            - business_trip_readiness
            - skill_set
            - driver_license_types
            - language
            - paid_services
          type: object
      title: Полное представление резюме
      type: object
    CredsResumeCreds:
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/CredsCreds'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Креды
      type: object
    CredsCreds:
      description: |
        Документы, подтверждающие наличие у соискателя опыта или квалификации для выполнения определенного вида деятельности. 
        Зависят от профессиональных ролей резюме
      properties:
        answers:
          additionalProperties:
            $ref: '#/components/schemas/CredsAnswers'
          title: 'Ответы на креды, передается в виде answer_id -> object'
          type: object
        question_to_answer_map:
          additionalProperties:
            items:
              type: string
            type: array
          title: Выбранные для кредов ответы пользователя
          type: object
        questions:
          additionalProperties:
            $ref: '#/components/schemas/CredsQuestions'
          title: Тело вопроса в виде question_id -> object
          type: object
      title: 'Общее тело кредов, включает в себя список вопросов, ответов, и ответы пользователя'
      type: object
    CredsAnswers:
      properties:
        answer_group:
          description: 'Группа данного ответа, positive, negative, neutral'
          type: string
        answer_id:
          description: Идентификатор ответа (совпадает с ключом объекта)
          type: string
        ask_questions_after:
          description: Вопросы которые нужно задать после использования пользователем данного ответа
          items:
            description: Массив из question_id
            type: string
          type: array
        description:
          description: Описание ответа
          nullable: true
          type: string
        positive_title:
          description: Текст ответа который можно использовать для отображения без самого вопроса
          type: string
        skip_at_result:
          description: Нужно ли пропускать данный ответ на форме с отображением кредов пользователя
          type: boolean
        title:
          description: Текст ответа который нужно отрисовать для сбора ответов от пользователя
          type: string
      title: Ответы
      type: object
    CredsQuestions:
      properties:
        description:
          description: Описание вопроса
          nullable: true
          type: string
        is_active:
          description: 'Показан ли вопрос изначально, актуально для динамических вопросов'
          type: boolean
        possible_answers:
          description: 'Возможные ответы на вопрос, гарантировано придут в поле answers'
          items:
            description: Значение гарантировано означает что есть ответ с переданным ключом
            type: string
          minItems: 1
          type: array
        question_id:
          description: Идентификатор вопроса (совпадает с ключом объекта)
          type: string
        question_title:
          description: Текст вопроса отображаемый на форме
          type: string
        question_type:
          description: Возможность мульти выбора ответов на данный вопрос "single_choice" / "multi_select"
          type: string
        required:
          description: Обязателен ли вопрос для получения ответа
          type: boolean
        skip_title_at_view:
          description: 'Пропускать ли текст вопроса на просмотре, если false - ответы внутри placeholder, если true - просто перечисляем без текста вопроса'
          type: boolean
        view_title:
          description: Текст вопроса на просмотре
          nullable: true
          type: string
      title: Вопросы
      type: object
    ResumeObjectsOneOfMetroStation:
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/ResumeObjectsMetroStation'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Станция метро
      type: object
    ResumeObjectsMetroStation:
      description: |
        Ближайшая станция метро. Элемент справочника [metro](#tag/Obshie-spravochniki/operation/get-metro-stations)
      properties:
        id:
          description: Идентификатор станции метро
          type: string
        lat:
          description: Широта
          type: number
        line:
          allOf:
            - $ref: '#/components/schemas/ResumeObjectsMetroLine'
          description: Линия метро
          type: object
        lng:
          description: Долгота
          type: number
        name:
          description: Название станции метро
          type: string
        order:
          description: Порядковый номер станции в линии метро
          type: number
      required:
        - id
        - lat
        - lng
        - order
        - line
      title: Станция метро
      type: object
    ResumeObjectsMetroLine:
      properties:
        hex_color:
          description: Цвет линии в HEX-формате `RRGGBB` (от `000000` до `FFFFFF`)
          type: string
        id:
          description: Идентификатор линии
          type: string
        name:
          description: Название линии
          type: string
      required:
        - id
        - hex_color
        - name
      title: Линия метро
      type: object
    ResumeResumeForApplicant:
      allOf:
        - $ref: '#/components/schemas/ResumeResumeFull'
        - $ref: '#/components/schemas/ResumeStatusReadiness'
        - $ref: '#/components/schemas/ResumeApplicantFields'
        - $ref: '#/components/schemas/ResumePhotoPortfolio'
        - properties: {}
          type: object
      title: Информация о резюме для владельца
      type: object
    ResumePhotoPortfolio:
      properties:
        photo:
          $ref: '#/components/schemas/ResumeObjectsOneOfPhoto'
        portfolio:
          description: Список изображений в портфолио пользователя
          items:
            $ref: '#/components/schemas/ResumeObjectsPortfolio'
          type: array
      required:
        - portfolio
      title: Портфолио и фото пользователя
      type: object
    ResumeObjectsOneOfPhoto:
      description: Фотография пользователя
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/ResumeObjectsPhoto'
        - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Фотография
      type: object
    EmployerServicesEmployerServices:
      properties:
        items:
          items:
            $ref: '#/components/schemas/EmployerServicesEmployerServiceItem'
          minItems: 0
          title: Перечень услуг
          type: array
      required:
        - items
      title: Перечень услуг
    EmployerServicesEmployerServiceItem:
      properties:
        activated_at:
          description: 'Время активации услуги (в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          pattern: '^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?((\+|-)[0-1][0-9]{3})?$'
          type: string
        balance:
          $ref: '#/components/schemas/EmployerServicesBalance'
          description: Значения баланса. Только для пакетных услуг
          nullable: true
          type: object
        expires_at:
          description: 'Время истечения услуги (в формате [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) с точностью до секунды: `YYYY-MM-DDThh:mm:ss±hhmm`'
          pattern: '^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?((\+|-)[0-1][0-9]{3})?$'
          type: string
        id:
          description: Идентификатор услуги
          type: string
        service_type:
          $ref: '#/components/schemas/EmployerServicesServiceType'
          description: Тип услуги
      required:
        - id
        - service_type
        - activated_at
        - expires_at
      title: Услуга
    EmployerServicesBalance:
      properties:
        actual:
          description: Текущее значение баланса
          type: integer
        initial:
          description: Значение баланса на момент активации услуги
          type: integer
      required:
        - actual
        - initial
      title: Баланс услуг
    EmployerServicesServiceType:
      properties:
        id:
          description: Идентификатор типа услуги
          type: string
        name:
          description: Локализованное название типа услуги
          type: string
      required:
        - id
        - name
      title: Тип услуги
    VacanciesVacanciesBlacklistedResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
        - $ref: '#/components/schemas/VacanciesVacanciesBlacklisted'
          type: object
      title: Скрытые вакансии
      type: object
    VacanciesVacanciesBlacklisted:
      properties:
        items:
          description: Массив скрытых вакансий
          items:
            $ref: '#/components/schemas/VacanciesVacanciesBlacklistedItem'
          type: array
        limit_reached:
          description: Превышено ли максимальное количество элементов в списке
          type: boolean
      title: Скрытые вакансии
    VacanciesVacanciesBlacklistedItem:
      properties:
        address:
          $ref: '#/components/schemas/VacancyAddress'
        adv_response_url:
          description: URL для регистрации нажатия кнопки отклика
          type: string
        alternate_url:
          description: Ссылка на представление вакансии на сайте
          type: string
        apply_alternate_url:
          description: Ссылка на отклик на вакансию на сайте
          type: string
        archived:
          description: Находится ли данная вакансия в архиве
          type: boolean
        area:
          $ref: '#/components/schemas/_IncludesArea'
          type: object
        created_at:
          description: Дата и время публикации вакансии
          type: string
        department:
          $ref: '#/components/schemas/VacancyDepartment'
        employer:
          $ref: '#/components/schemas/VacanciesEmployerPublic'
        has_test:
          description: Информация о наличии прикрепленного тестового задании к вакансии
          type: boolean
        id:
          description: Идентификатор вакансии
          type: string
        insider_interview:
          $ref: '#/components/schemas/VacanciesObjectsInsiderInterview'
        name:
          $ref: '#/components/schemas/VacancyName'
        premium:
          description: Является ли данная вакансия премиум-вакансией
          type: boolean
        published_at:
          description: Дата и время публикации вакансии
          type: string
        relations:
          $ref: '#/components/schemas/VacancyRelations'
        response_letter_required:
          $ref: '#/components/schemas/VacancyResponseLetterRequired'
        response_url:
          $ref: '#/components/schemas/VacancyResponseUrl'
        salary:
          $ref: '#/components/schemas/VacancySalary'
        sort_point_distance:
          $ref: '#/components/schemas/VacancySortPointDistance'
        type:
          $ref: '#/components/schemas/VacancyTypeOutput'
        url:
          description: URL вакансии
          type: string
      required:
        - id
        - premium
        - name
        - department
        - has_test
        - response_letter_required
        - area
        - salary
        - type
        - published_at
        - archived
        - apply_alternate_url
        - url
        - alternate_url
        - relations
        - employer
      title: Скрытая вакансия
      type: object
    ErrorsVacancyBlacklistedBadRequestErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            description:
              description: Описание ошибки
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsVacancyBlacklistedBadRequestError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибка добавления вакансии в скрытые
    ErrorsVacancyBlacklistedBadRequestError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - vacancies_blacklist
          example: vacancies_blacklist
          type: string
        value:
          description: |
            Название поля с ошибкой:

            * `limit_exceeded` — превышен лимит на количество вакансий в списке скрытых
          enum:
            - limit_exceeded
          example: limit_exceeded
          type: string
      required:
        - type
      title: Ошибка в параметре запроса
      type: object
    NegotiationsNegotiationMessageTemplates:
      properties:
        mail:
          $ref: '#/components/schemas/NegotiationsNegotiationMessageTemplate'
          description: Список шаблонов сообщений
          type: object
        sms:
          $ref: '#/components/schemas/NegotiationsNegotiationMessageTemplate'
          description: Список шаблонов сообщений
          type: object
      required:
        - mail
      title: Список шаблонов откликов/приглашений
      type: object
    NegotiationsNegotiationMessageTemplate:
      properties:
        employer_state:
          description: 'Работодательский статус, соответствующий данному шаблону; может отсутствовать если шаблон не связан с каким-либо статусом'
          type: string
        template_modified:
          description: Был ли изменен шаблон работодателем или же используется стандартный шаблон с текстом от Хэдхантер
          type: boolean
        text:
          description: Текст шаблона
          type: string
      required:
        - text
        - template_modified
      title: Шаблон ответа соискателю
    VacancyDraftVacanciesDraftResponse:
      nullable: false
      properties:
        vacancy_ids:
          example:
            - 30251619
            - 30251620
          items:
            type: number
          minItems: 1
          type: array
      title: Ответ на создание черновика
      type: object
    MetroMetroResponse:
      items:
        $ref: '#/components/schemas/MetroMetroItem'
      title: Список всех станций метро во всех городах
      type: array
    MetroMetroItem:
      properties:
        id:
          description: Идентификатор города
          type: string
        lines:
          description: Список линий метро в городе
          items:
            $ref: '#/components/schemas/MetroMetroLineWithStations'
          type: array
        name:
          description: Название города
          type: string
        url:
          description: URL запроса
          type: string
      required:
        - id
        - url
        - name
        - lines
      title: Город
    ErrorsResumeTooManyRequestsErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsResumeTooManyRequestsError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибки действий с резюме
    ErrorsResumeTooManyRequestsError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - resumes
          example: resumes
          type: string
        value:
          description: Значение ошибки
          enum:
            - touch_limit_exceeded
          example: touch_limit_exceeded
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    EmployerDictionariesTestsResponse:
      properties:
        items:
          items:
            $ref: '#/components/schemas/EmployerDictionariesTestItem'
          minItems: 0
          title: Список тестов
          type: array
      required:
        - items
      title: Успешный ответ
    EmployerDictionariesTestItem:
      properties:
        id:
          description: Идентификатор теста
          type: string
        name:
          description: Название теста
          type: string
      required:
        - id
        - name
      title: Тест
    VacanciesDeletedVacancyListResponse:
      allOf:
        - $ref: '#/components/schemas/_IncludesPagination'
        - $ref: '#/components/schemas/VacanciesDeletedVacancyListItems'
      title: Успешный ответ
    VacanciesDeletedVacancyListItems:
      properties:
        items:
          description: Список удаленных вакансий
          items:
            $ref: '#/components/schemas/VacanciesVacancyArchived'
          minItems: 0
          type: array
      required:
        - items
      title: Список удаленных вакансий
    WebhookBadDataError:
      description: Ошибка параметров запроса
      oneOf:
        - $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
        - $ref: '#/components/schemas/WebhookErrors'
      title: Ошибка параметров запроса
    WebhookErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/WebhookError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Бизнес ошибки
    WebhookError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          example: notifications
          type: string
        value:
          description: |
            Описание ошибки:
              * already_exist - У текущего пользователя/компании уже есть подписка для данного приложения (включая подписку на резюме)
          enum:
            - already_exist
          example: already_exist
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    MeSetInSearch:
      properties:
        is_in_search:
          description: 'Флаг «ищу работу». Возможные значения: `true`/`false`'
          example: 'true'
          type: string
      required:
        - is_in_search
      title: Флаг «ищу работу»
      type: object
    ManagerAccounts:
      additionalProperties: false
      description: Информация о рабочих аккаунтах менеджера
      properties:
        current_account_id:
          description: |
            Идентификатор текущего рабочего аккаунта менеджера. Совпадает со значением переданного в заголовке `X-Manager-Account-Id`
          example: '87654321'
          type: string
        is_primary_account_blocked:
          description: Заблокирован ли главный рабочий аккаунт менеджера
          example: false
          type: boolean
        items:
          description: Список рабочих аккаунтов менеджера
          items:
            $ref: '#/components/schemas/ManagerAccount'
          minItems: 0
          type: array
        primary_account_id:
          description: Идентификатор главного рабочего аккаунта менеджера
          example: '12345678'
          type: string
      required:
        - items
        - current_account_id
        - primary_account_id
        - is_primary_account_blocked
      title: Рабочие аккаунты менеджера
      type: object
    DictionariesSalaryStatisticsAreaResponse:
      items:
        $ref: '#/components/schemas/DictionariesSalaryStatisticsAreaItem'
      title: Список регионов
      type: array
    DictionariesSalaryStatisticsAreaItem:
      properties:
        areas:
          description: Дочерние регионы
          items:
            $ref: '#/components/schemas/DictionariesSalaryStatisticsAreaItem'
          minItems: 0
          type: array
        id:
          description: Идентификатор региона
          type: string
        name:
          description: Название региона
          type: string
      required:
        - id
        - name
      title: Регион
    VacancyEdit:
      anyOf:
        - $ref: '#/components/schemas/VacancyEditCommon'
        - $ref: '#/components/schemas/VacancyEditBillingType'
        - $ref: '#/components/schemas/VacancyEditManager'
      title: Редактируемые поля вакансии
      type: object
    VacancyEditBillingType:
      description: 'Поле, передаваемое в запросе при смене биллингового типа вакансии. Биллинговый тип можно только улучшать'
      properties:
        billing_type:
          $ref: '#/components/schemas/VacancyBillingType'
          nullable: true
      required:
        - billing_type
      title: Смена биллингового типа
      type: object
    VacancyEditManager:
      description: 'Поле, передаваемое в запросе при смене менеджера вакансии'
      properties:
        manager:
          allOf:
            - $ref: '#/components/schemas/_IncludesId'
          description: 'Идентификатор менеджера, которому надо передать автопоиск из ([списка менеджеров компании](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers))'
          nullable: true
      required:
        - manager
      title: Смена менеджера вакансии
      type: object
    VacancyEditCommon:
      allOf:
        - $ref: '#/components/schemas/VacancyCommonFields'
        - $ref: '#/components/schemas/VacancyEditFields'
      title: 'Поля вакансии, которые можно отредактировать одновременно'
      type: object
    VacancyEditFields:
      description: 'Поля, передаваемые в запросе на редактирование вакансии'
      properties:
        description:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyDescription'
            - $ref: '#/components/schemas/_IncludesNullableObject'
        name:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/VacancyName'
            - $ref: '#/components/schemas/_IncludesNullableObject'
      title: Поля для редактирование вакансии
      type: object
    ErrorsNegotiationEditMessageForbiddenErrors:
      anyOf:
        - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        - $ref: '#/components/schemas/ErrorsNegotiationEditMessageErrors'
      title: Ошибки
    ErrorsNegotiationEditMessageErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsNegotiationEditMessageError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Oшибки при работе с перепиской соискателя(отклики/приглашения)
    ErrorsNegotiationEditMessageError:
      additionalProperties: false
      properties:
        type:
          description: Тип ошибки
          enum:
            - negotiations
          example: negotiations
          type: string
        value:
          description: |
            Причина ошибки:

            * `message_cannot_be_empty` — сообщение в переписке не может быть пустым.
            * `message_already_viewed` — редактирование сообщения запрещено. Принимающая сторона уже успела прочитать сообщение.
            * `vacancy_not_found` — вакансия, на которую совершался отклик, не найдена
            * `resume_not_found` — резюме из отклика/приглашения было скрыто, либо удалено, либо не найдено
            * `vacancy_archived` — вакансия, на которую совершался отклик, заархивирована
          enum:
            - message_cannot_be_empty
            - message_already_viewed
            - vacancy_not_found
            - resume_not_found
            - vacancy_archived
          example: message_already_viewed
          type: string
      required:
        - type
        - value
      title: Ошибка
      type: object
    EmployerAddressesEmployerAddressesResponse:
      allOf:
        - $ref: '#/components/schemas/EmployerAddressesEmployerAddressItems'
        - $ref: '#/components/schemas/_IncludesPagination'
      example:
        $ref: '#/components/examples/EmployerAddresses/value'
      title: Успешный ответ
    EmployerAddressesEmployerAddressItems:
      properties:
        items:
          description: Список адресов работодателя
          items:
            $ref: '#/components/schemas/EmployerAddressesEmployerAddressItem'
          type: array
      required:
        - items
      title: JSON c параметрами адреса
    EmployerAddressesEmployerAddressItem:
      properties:
        building:
          description: Номер дома
          nullable: true
          type: string
        can_edit:
          description: Имеет ли текущий пользователь право редактировать этот адрес
          type: boolean
        city:
          description: Город
          nullable: true
          type: string
        deleted:
          description: Удалён ли адрес
          type: boolean
        description:
          description: Дополнительная информация об адресе
          nullable: true
          type: string
        id:
          description: Идентификатор адреса
          type: string
        lat:
          description: Географическая широта
          nullable: true
          type: number
        lng:
          description: Географическая долгота
          nullable: true
          type: number
        manager:
          description: Информация о менеджере создавшем адрес
          nullable: true
          properties:
            full_name:
              description: Полное имя менеджера
              type: string
            id:
              description: Идентификатор менеджера
              type: string
          type: object
        metro_stations:
          items:
            $ref: '#/components/schemas/_IncludesMetroStation'
          type: array
        raw:
          description: Полный адрес
          nullable: true
          type: string
        street:
          description: Улица
          nullable: true
          type: string
      required:
        - city
        - lat
        - lng
      title: Адрес
    ArtifactsArtifactUploadBody:
      properties:
        description:
          description: Текстовое описание. Имеет смысл для `portfolio`
          nullable: true
          type: string
        file:
          description: Файл изображения
          format: binary
          type: string
        type:
          description: 'Тип артефакта: `photo` или `portfolio`'
          type: string
      required:
        - type
        - file
      title: Загрузка изображения
    SavedSearchesSavedSearchResponse:
      allOf:
        - $ref: '#/components/schemas/SavedSearchesSavedSearchItems'
          type: object
        - $ref: '#/components/schemas/_IncludesPagination'
          type: object
      title: Успешный ответ
    SavedSearchesSavedSearchItems:
      properties:
        items:
          description: Список сохраненных поисков вакансий/резюме
          items:
            $ref: '#/components/schemas/SavedSearchesSavedSearchItem'
          minItems: 0
          type: array
      required:
        - items
      title: Список сохраненных поисков вакансий/резюме
    ManagerSettings:
      additionalProperties: false
      description: Информация о предпочтениях менеджера
      properties:
        default_currency:
          $ref: '#/components/schemas/ManagerSettingsCurrency'
        default_vacancy_branded_template:
          $ref: '#/components/schemas/VacancyBrandedTemplate'
        use_sms_notification:
          description: |
            Предпочтение по использованию флага `send_sms`
            при [приглашении соискателя](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#add-invite)
          example: true
          type: boolean
      required:
        - default_currency
        - use_sms_notification
      title: Предпочтения менеджера
      type: object
    ManagerSettingsCurrency:
      additionalProperties: false
      description: |
        Предпочитаемая валюта при [публикации вакансии](#tag/Upravlenie-vakansiyami/operation/publish-vacancy)
      properties:
        abbr:
          description: Краткое обозначение валюты
          example: руб.
          type: string
        code:
          description: Код валюты
          example: RUR
          type: string
        name:
          description: Название валюты
          example: Рубли
          type: string
      required:
        - code
        - name
        - abbr
      title: Предпочитаемая валюта
      type: object
    EmployerServicesMethodAccess:
      properties:
        items:
          items:
            $ref: '#/components/schemas/EmployerServicesMethodAccessItem'
          minItems: 0
          title: Перечень групп с доступом к платным методам
          type: array
      required:
        - items
      title: Перечень групп с доступом к платным методам
    EmployerServicesMethodAccessItem:
      properties:
        access:
          description: Информация о доступе к платному методу
          properties:
            has_access:
              description: Признак наличия доступа к группе методов
              type: boolean
          required:
            - has_access
          type: object
        description:
          description: Описание группы методов
          type: string
        id:
          description: Идентификатор группы методов
          type: string
      required:
        - id
        - description
        - access
      title: Группа методов
    EmployerAddressesEmployerAddressItemResponse:
      allOf:
        - $ref: '#/components/schemas/EmployerAddressesEmployerAddressItem'
      example:
        $ref: '#/components/examples/EmployerAddressItem/value'
      title: Успешный ответ
    ErrorsCommonConflictBothChangedErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            bad_argument:
              description: 'Имя аргумента, с которым связана ошибка'
              enum:
                - name
                - subscription
              type: string
            bad_arguments:
              description: 'Список аргументов, с которыми связаны ошибки'
              items:
                $ref: '#/components/schemas/_IncludesNameDescription'
              type: array
            description:
              description: Описание причины ошибки
              type: string
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsCommonConflictBothChangedError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Ошибка конфликта запроса при одновременном изменении параметров
    ErrorsCommonConflictBothChangedError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - bad_argument
          example: bad_argument
          type: string
        value:
          description: Имя конфликтующего аргумента
          enum:
            - name
            - subscription
            - email_subscription
          example: name
          type: string
      required:
        - type
        - value
      title: Ошибка конфликта запроса при одновременном изменении параметров
      type: object
    ErrorsSavedSearchNotFoundErrors:
      allOf:
        - $ref: '#/components/schemas/ErrorsCommonErrorRequestId'
        - properties:
            errors:
              description: Массив с данными ошибок
              items:
                $ref: '#/components/schemas/ErrorsSavedSearchNotFoundError'
              minItems: 1
              type: array
          required:
            - errors
          type: object
      description: Информация о возникших ошибках
      title: Автопоиск или менеджер не найден
    ErrorsSavedSearchNotFoundError:
      additionalProperties: false
      properties:
        type:
          description: Текстовый идентификатор типа ошибки
          enum:
            - saved_searches
            - not_found
          example: saved_searches
          type: string
        value:
          description: |
            Название поля запроса с ошибкой. Возможные значения:
            * `saved_search_not_found` — автопоиск не найден или не принадлежит текущему пользователю.
            * `manager_not_found` — менеджер не найден
          enum:
            - saved_search_not_found
            - manager_not_found
          example: saved_search_not_found
          type: string
      required:
        - type
      title: Ошибка
      type: object
  securitySchemes:
    OauthToken:
      description: |
        Токен доступа для авторизации в формате `Bearer {ACCESS_TOKEN}` (см. [Авторизация](#section/Avtorizaciya))
      scheme: bearer
      type: http
info:
  contact:
    email: api@hh.ru
    name: API Support
    url: 'https://api.hh.ru/openapi/redoc'
  description: |
    По-русски | [Switch to English](https://api.hh.ru/openapi/en/redoc)

    В OpenAPI ведется пока что только небольшая часть документации
    [Основная документация](https://github.com/hhru/api).

    Для поиска по документации можно использовать Ctrl+F.

    # Общая информация

    * Всё API работает по протоколу HTTPS.
    * Авторизация осуществляется по протоколу OAuth2.
    * Все данные доступны только в формате JSON.
    * Базовый URL — `https://api.hh.ru/`
    * Возможны запросы к данным [любого сайта группы компаний HeadHunter](#section/Obshaya-informaciya/Vybor-sajta)
    * <a name="date-format"></a> Даты форматируются в соответствии с
    [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601): `YYYY-MM-DDThh:mm:ss±hhmm`.


    <a name="request-requirements"></a>
    ## Требования к запросам

    В запросе необходимо передавать заголовок `User-Agent`, но если ваша реализация
    http клиента не позволяет, можно отправить `HH-User-Agent`. Если не отправлен ни
    один заголовок, то ответом будет `400 Bad Request`.
    Указание в заголовке названия приложения и контактной почты разработчика
    позволит нам оперативно с вами связаться в случае необходимости.
    Заголовки `User-Agent` и `HH-User-Agent` взаимозаменяемы, в случае, если вы отправите оба заголовка,
    обработан будет только `HH-User-Agent`.

    ```
    User-Agent: MyApp/1.0 (my-app-feedback@example.com)
    ```

    Подробнее про [ошибки в заголовке User-Agent](https://github.com/hhru/api/blob/master/docs/errors.md#user-agent).


    <a name="request-body"></a>
    ## Формат тела запроса при отправке JSON

    Данные, передающиеся в теле запроса, должны удовлетворять требованиям:

    * Валидный JSON (допускается передача как минифицированного варианта, так и
    pretty print варианта с дополнительными пробелами и сбросами строк).
    * Рекомендуется использование кодировки UTF-8 без дополнительного экранирования
    (`{"name": "Иванов Иван"}`).
    * Также возможно использовать ascii кодировку с экранированием
    (`{"name": "\u0418\u0432\u0430\u043d\u043e\u0432 \u0418\u0432\u0430\u043d"}`).
    * К типам данных в определённым полях накладываются дополнительные условия,
    описанные в каждом конкретном методе. В JSON типами данных являются `string`,
    `number`, `boolean`, `null`, `object`, `array`.

    ### Ответ
    Ответ свыше определенной длины будет сжиматься методом gzip.

    ### Ошибки и коды ответов

    API широко использует информирование при помощи кодов ответов.
    Приложение должно корректно их обрабатывать.

    В случае неполадок и сбоев, возможны ответы с кодом `503` и `500`.

    При каждой ошибке, помимо кода ответа, в теле ответа может быть выдана
    дополнительная информация, позволяющая разработчику понять
    причину соответствующего ответа.

    [Более подробно про возможные ошибки](https://github.com/hhru/api/blob/master/docs/errors.md).


    ## Недокументированные поля и параметры запросов

    В ответах и параметрах API можно найти ключи, не описанные в документации.
    Обычно это означает, что они оставлены для совместимости со старыми версиями.
    Их использование не рекомендуется. Если ваше приложение использует такие ключи,
    перейдите на использование актуальных ключей, описанных в документации.


    ## Пагинация

    К любому запросу, подразумевающему выдачу списка объектов, можно в параметрах
    указать `page=N&per_page=M`. Нумерация идёт с нуля, по умолчанию выдаётся
    первая (нулевая) страница с 20 объектами на странице. Во всех ответах, где
    доступна пагинация, единообразный корневой объект:

    ```json
    {
      "found": 1,
      "per_page": 1,
      "pages": 1,
      "page": 0,
      "items": [{}]
    }
    ```
    ## Выбор сайта

    API HeadHunter позволяет получать данные со всех сайтов группы компании
    HeadHunter.

    В частности:

    * hh.ru
    * rabota.by
    * hh1.az
    * hh.uz
    * hh.kz
    * headhunter.ge
    * headhunter.kg

    Запросы к данным на всех сайтах следует направлять на `https://api.hh.ru/`.

    При необходимости учесть специфику сайта, можно добавить в запрос параметр
    `?host=`. По умолчанию используется `hh.ru`.

    Например, для получения [локализаций](https://api.hh.ru/openapi/redoc#tag/Obshie-spravochniki/operation/get-locales), доступных на hh.kz необходимо
    сделать GET запрос на `https://api.hh.ru/locales?host=hh.kz`.

    ## CORS (Cross-Origin Resource Sharing)

    API поддерживает технологию CORS для запроса данных из
    браузера с произвольного домена. Этот метод более предпочтителен, чем
    использование JSONP. Он не ограничен методом GET. Для отладки CORS доступен
    [специальный метод](https://github.com/hhru/api/blob/master/docs/cors.md). Для использования JSONP передайте параметр
    `?callback=callback_name`.

    * [CORS specification on w3.org](http://www.w3.org/TR/cors/)
    * [HTML5Rocks CORS Tutorial](http://www.html5rocks.com/en/tutorials/cors/)
    * [CORS on dev.opera.com](http://dev.opera.com/articles/view/dom-access-control-using-cross-origin-resource-sharing/)
    * [CORS on caniuse.com](http://caniuse.com/#feat=cors)
    * [CORS on en.wikipedia.org](http://en.wikipedia.org/wiki/Cross-origin_resource_sharing)


    ## Внешние ссылки на статьи и стандарты

    * [HTTP/1.1](http://tools.ietf.org/html/rfc2616)
    * [JSON](http://json.org/)
    * [URI Template](http://tools.ietf.org/html/rfc6570)
    * [OAuth 2.0](http://tools.ietf.org/html/rfc6749)
    * [REST](http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm)
    * [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601)

    # Авторизация

    API поддерживает следующие уровни авторизации:
      - [авторизация приложения](#tag/Avtorizaciya-prilozheniya)
      - [авторизация пользователя](#section/Avtorizaciya/Avtorizaciya-polzovatelya)

    * [Авторизация пользователя](#section/Avtorizaciya/Avtorizaciya-polzovatelya)
      * [Правила формирования специального redirect_uri](#section/Avtorizaciya/Pravila-formirovaniya-specialnogo-redirect_uri)
      * [Процесс авторизации](#section/Avtorizaciya/Process-avtorizacii)
      * [Успешное получение временного `authorization_code`](#get-authorization_code)
      * [Получение access и refresh токенов](#section/Avtorizaciya/Poluchenie-access-i-refresh-tokenov)
    * [Обновление пары access и refresh токенов](#section/Avtorizaciya/Obnovlenie-pary-access-i-refresh-tokenov)
    * [Инвалидация токена](#tag/Avtorizaciya-rabotodatelya/operation/invalidate-token)
    * [Запрос авторизации под другим пользователем](#section/Avtorizaciya/Zapros-avtorizacii-pod-drugim-polzovatelem)
    * [Авторизация под разными рабочими аккаунтами](#section/Avtorizaciya/Avtorizaciya-pod-raznymi-rabochimi-akkauntami)
    * [Авторизация приложения](#tag/Avtorizaciya-prilozheniya)    


    ## Авторизация пользователя
    Для выполнения запросов от имени пользователя необходимо пользоваться токеном пользователя.

    В начале приложению необходимо направить пользователя (открыть страницу) по адресу:

    ```
    https://hh.ru/oauth/authorize?
    response_type=code&
    client_id={client_id}&
    state={state}&
    redirect_uri={redirect_uri}
    ```

    Обязательные параметры:

    * `response_type=code` — указание на способ получения авторизации, используя `authorization code`
    * `client_id` — идентификатор, полученный при создании приложения


    Необязательные параметры:

    * `state` — в случае указания, будет включен в ответный редирект.
    Это позволяет исключить возможность взлома путём подделки межсайтовых
    запросов. Подробнее об этом:
    [RFC 6749. Section 10.12](http://tools.ietf.org/html/rfc6749#section-10.12)
    * `redirect_uri` — uri для перенаправления пользователя после
    авторизации. Если не указать, используется из настроек приложения. При
    наличии происходит валидация значения. Вероятнее всего, потребуется сделать
    urlencode значения параметра.

    ## Правила формирования специального redirect_uri

    К примеру, если в настройках сохранен `http://example.com/oauth`, то разрешено
    указывать:

    * `http://www.example.com/oauth` — поддомен;
    * `http://www.example.com/oauth/sub/path` — уточнение пути;
    * `http://example.com/oauth?lang=RU` — дополнительный параметр;
    * `http://www.example.com/oauth/sub/path?lang=RU` — всё вместе.

    Запрещено:

    * `https://example.com/oauth` — различные протоколы;
    * `http://wwwexample.com/oauth` — различные домены;
    * `http://wwwexample.com/` — другой путь;
    * `http://example.com/oauths` — другой путь;
    * `http://example.com:80/oauths` — указание изначально отсутствующего порта;

    ## Процесс авторизации

    Если пользователь не авторизован на сайте, ему будет показана форма
    авторизации на сайте. После прохождения авторизации на сайте, пользователю
    будет выведена форма с запросом разрешения доступа вашего приложения к его
    персональным данным.

    Если пользователь не разрешает доступ приложению, пользователь будет
    перенаправлен на указанный `redirect_uri` с `?error=access_denied` и
    `state={state}`, если таковой был указан при первом запросе.

    <a name="get-authorization_code"></a>
    ### Успешное получение временного `authorization_code`

    В случае разрешения прав, в редиректе будет указан
    временный `authorization_code`:

    ```http
    HTTP/1.1 302 FOUND
    Location: {redirect_uri}?code={authorization_code}
    ```

    Если пользователь авторизован на сайте и доступ данному приложению однажды
    ранее выдан, ответом будет сразу вышеописанный редирект с `authorization_code`
    (без показа формы логина и выдачи прав).

    ## Получение access и refresh токенов

    После получения `authorization_code` приложению необходимо сделать сервер-сервер запрос `POST https://api.hh.ru/token` для обмена полученного
    `authorization_code` на `access_token` (старый запрос `POST https://hh.ru/oauth/token` считается устаревшим).

    В теле запроса необходимо передать [дополнительные параметры](#required_parameters).

    Тело запроса необходимо передавать в стандартном
    `application/x-www-form-urlencoded` с указанием соответствующего заголовка
    `Content-Type`.

    `authorization_code` имеет довольно короткий срок жизни, при его истечении
    необходимо запросить новый.

    ## Обновление пары access и refresh токенов
    `access_token` также имеет срок жизни (ключ `expires_in`, в секундах), при его
    истечении приложение должно сделать запрос с `refresh_token` для получения
    нового.

    Запрос необходимо делать в `application/x-www-form-urlencoded`.

    ```
    POST https://api.hh.ru/token
    ```

    (старый запрос `POST https://hh.ru/oauth/token` считается устаревшим)

    В теле запроса необходимо передать [дополнительные параметры](#required_parameters)

    `refresh_token` можно использовать только один раз и только по истечению
    срока действия `access_token`.

    После получения новой пары access и refresh токенов, их необходимо использовать
    в дальнейших запросах в api и запросах на продление токена.

    ## Запрос авторизации под другим пользователем

    Возможен следующий сценарий:

    1. Приложение перенаправляет пользователя на сайт с запросом авторизации.
    2. Пользователь на сайте уже авторизован и данному приложение доступ уже был
    разрешен.
    3. Пользователю будет предложена возможность продолжить работу под текущим аккаунтом,
    либо зайти под другим аккаунтом.

    Если есть необходимость, чтобы на шаге 3 сразу происходило перенаправление (redirect) с временным токеном,
    необходимо добавить к запросу `/oauth/authorize...` параметр `skip_choose_account=true`.
    В этом случае автоматически выдаётся доступ пользователю авторизованному на сайте.

    Если есть необходимость всегда показывать форму авторизации, приложение может
    добавить к запросу `/oauth/authorize...` параметр `force_login=true`. В этом
    случае, пользователю будет показана форма авторизации с логином и паролем
    даже в случае, если пользователь уже авторизован.

    Это может быть полезно приложениям, которые предоставляют сервис только для
    соискателей. Если пришел пользователь-работодатель, приложение может предложить
    пользователю повторно разрешить доступ на сайте, уже указав
    другую учетную запись.

    Также, после авторизации приложение может показать пользователю сообщение:

    ```
    Вы вошли как %Имя_Фамилия%. Это не вы?
    ```
    и предоставить ссылку с `force_login=true` для возможности захода под
    другим логином.

    ## Авторизация под разными рабочими аккаунтами

    Для получения списка рабочих аккаунтов менеджера и для работы под разными рабочими аккаунтами менеджера необходимо прочитать документацию по [рабочим аккаунтам менеджера](#tag/Menedzhery-rabotodatelya/operation/get-manager-accounts)

    В случае компрометации токена необходимо [инвалидировать](#tag/Avtorizaciya-rabotodatelya/operation/invalidate-token) скомпрометированный токен и запросить токен заново!

    <!-- ReDoc-Inject: <security-definitions> -->
  termsOfService: 'https://dev.hh.ru/admin/developer_agreement'
  title: HeadHunter API
  version: 1.0.0
  x-logo:
    altText: HH Logo
    url: 'https://hhcdn.ru/icms/10132131.svg'
openapi: 3.0.3
security:
  - OauthToken: []
servers:
  - description: Api production server
    url: 'https://api.hh.ru'
tags:
  - description: |
      Токен приложения необходимо сгенерировать 1 раз.
      В случае, если токен был скомпрометирован, его нужно запросить еще раз. При этом ранее выданный токен отзывается.
      Владелец приложения может посмотреть актуальный `access_token` для приложения на сайте [https://dev.hh.ru/admin](https://dev.hh.ru/admin). В случае, если вы еще ни разу [не получали токен приложения](#section/Avtorizaciya/Avtorizaciya-prilozheniya), токен отображаться не будет.

      <a name="get-client-token"></a>
      ### Получение токена приложения
      Для получения `access_token` необходимо сделать запрос:

      ```
      POST https://api.hh.ru/token
      ```

      (старый запрос `POST https://hh.ru/oauth/token` считается устаревшим)

      В теле запроса необходимо передать [дополнительные параметры](#required_parameters).
      Тело запроса необходимо передавать в стандартном
      `application/x-www-form-urlencoded` с указанием соответствующего заголовка `Content-Type`.

      Данный `access_token` имеет **неограниченный** срок жизни. При повторном запросе ранее выданный токен отзывается и выдается новый. Запрашивать `access_token` можно не чаще, чем один раз в 5 минут
    name: Авторизация приложения
  - description: 'Методы для получение токена [пользователя](#section/Avtorizaciya/Avtorizaciya-polzovatelya)'
    name: Авторизация соискателя
  - description: 'Методы для получение токена [пользователя](#section/Avtorizaciya/Avtorizaciya-polzovatelya)'
    name: Авторизация работодателя
  - description: Методы для работы с черновиками вакансий
    name: Черновики вакансий
  - description: Действия с резюме соискателя связанные с отправкой/получением информации на его телефон
    name: Резюме. Работа с телефоном
  - description: |
      Просмотр информации о резюме

      ## Статус резюме

      Ключ `status` определяет текущее состояние резюме и содержит элемент из массива `resume_status` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries).

      Только что созданное резюме находится в статусе `not_published`. В этом статусе оно видно только для пользователя, который может перейти к его заполнению, а также сохранить. Незаполненные обязательные поля перечислены в списке `progress.mandatory`.

      После того, как все обязательные поля будут заполнены, флаг `can_publish_or_update` перейдет в значение `true`, и резюме можно будет [опубликовать](#tag/Rezyume.-Publikaciya/operation/publish-resume). Публикация резюме переводит его в статус `published`. В этом статусе резюме доступно для поиска, если это позволяет [видимость резюме](#tag/Prosmotr-rezyume/operation/get-resume) (атрибут 'access').

      После перехода в статус `published`, резюме станет доступно модераторам и может быть заблокировано (статус `blocked`), если поля резюме некорректно или малоинформативно заполнены. Причины блокировки резюме указаны в поле `moderation_note`. Заблокированное резюме пропадает из поиска и не может быть использовано для отклика на вакансию.

      После исправления, резюме можно отправить на повторное рассмотрение модератору. В этом случае резюме переходит в статус `on_moderation`, откуда может снова перейти в `blocked` или `published`, в зависимости от решения модератора.

      После публикации резюме (`published`) его нельзя перевести обратно в `not_published`, но можно скрыть, настроив [видимость резюме](#tag/Prosmotr-rezyume/operation/get-resume) (атрибут 'access').

      В статусе `published` резюме можно использовать для [отклика на вакансию](#tag/Vakansii/operation/apply-to-vacancy). Также оно появится в [списке подходящих для отклика](#tag/Rezyume.-Prosmotr-informacii/operation/get-suitable-resumes) для тех вакансий, на которые пользователь еще не откликался данным резюме
    name: Резюме. Просмотр информации
  - description: Методы для работы с менеджерами работодателя
    name: Менеджеры работодателя
  - description: 'Методы для получения справочной информации, независимые от авторизации'
    name: Общие справочники
  - description: Методы для работы с адресами работодателя
    name: Адреса работодателя
  - description: 'Методы для получения справочной информации в виде списка, элементы которого частично или полностью могут совпадать со значением, отправленным в одном из параметров'
    name: Подсказки
  - description: Методы для просмотра информации об авторизованном менеджере
    name: Информация о менеджере
  - description: Методы для просмотра информации об авторизованном соискателе
    name: Информация о соискателе
  - description: Методы для просмотра информации о приложении
    name: Информация о приложении
  - description: Методы для получения информации о компании текущего менеджера
    name: Информация о работодателе
  - description: 'Сохраненный поиск (автопоиск) — это сохраненный набор параметров поиска, по которому можно отслеживать новые резюме по заданному запросу. Помимо сохранения параметров поисковых запросов, автопоиск позволяет получать оповещения о новых результатах поиска. Для удобства автопоиску можно задавать имя'
    name: Сохраненные поиски вакансий
  - description: 'Сохраненный поиск (автопоиск) — это сохраненный набор параметров поиска, по которому можно отслеживать новые резюме по заданному запросу. Помимо сохранения параметров поисковых запросов, автопоиск позволяет получать оповещения о новых результатах поиска. Для удобства автопоиску можно задавать имя'
    name: Сохраненные поиски резюме
  - description: Методы поиска вакансий доступные соискателю
    name: Поиск вакансий для соискателя
  - description: |
      Методы поиска вакансий, доступные для всех типов авторизации

      ## Кластеры в поиске вакансий

      При [поиске вакансий](#tag/Poisk-vakansij/operation/get-vacancies) иногда требуется получить информацию о том, как вакансии распределены по тому или иному критерию поиска. Например, в каком количестве вакансий указана зарплата, или в каком она больше определенной суммы. Чтобы получить эти данные обычным методом, нужно формировать отдельный запрос на каждый интересующий критерий.

      Значительно проще воспользоваться специальной возможностью поиска — разбиением данных на кластеры. Кластер содержит ссылку на поисковую выдачу вакансий, которые отвечают заданным критериям. Пример использования кластеров на сайте hh.ru можно увидеть в левой колонке на [странице результатов поиска вакансий](https://hh.ru/search/vacancy).

      Кластеры объединены в группы (элементы массива `clusters`). В группу попадают кластеры со значениями одного типа. Например, группа `Зарплата` может содержать кластеры `от 45000 руб.` и `от 75000 руб.`. Набор групп кластеров зависит от параметров поискового запроса. Список всех возможных групп кластеров содержится в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `vacancy_cluster`.

      Чтобы получить данные по кластерам, передайте в поисковом запросе параметр `?clusters=true`. В ответе, помимо стандартной поисковой выдачи, вернется разбивка вакансий по кластерам.

      Чтобы получить в ответе только кластеры, без стандартной поисковой выдачи, укажите в запросе `?per_page=0`
    name: Поиск вакансий
  - description: |
      Документация по *переписке для работодателя доступна в [отдельной статье](#negotiation_workflow).*

      В процессе использования сайта соискатели выбирают вакансии.  Для того чтобы
      связаться с работодателем на предмет трудоустройства, соискатель может
      откликнуться на выбранную вакансию. Так же и работодатель, найдя интересное
      резюме, может предложить соискателю рассмотреть вакансию (приглашение).

      Для указанных целей служат специальные сущности — отклики/приглашения.  В них
      может быть указана вакансия, резюме и переписка соискателя с работодателем, в
      каждый момент времени такие сущности находятся в одном из состояний. Переход
      между состояниями сопровождается появлением сообщений с опциональным текстовым
      описанием и прочими полями. Сообщения со статусом `null` не переводят весь
      отклик в новое состояние.

      Чтобы связаться с работодателем, соискатель может откликнуться на выбранную вакансию. Работодатель также может пригласить соискателя рассмотреть вакансию.

      В сервисе для этого используются специальные сущности — _отклики/приглашения_. В них может быть указана вакансия, резюме и переписка соискателя с работодателем.

      В каждый момент времени отклик/приглашение находится в одном из состояний (`state`, `consider`, `response`, `invitation` и др.) и не может находиться в двух состояниях одновременно. Сообщения со статусом `null` не переводят весь отклик в новое состояние.

      Подробнее о концепции откликов/приглашений см. в разделе [Переписка (отклики/приглашения) для работодателя](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md)
    name: Переписка (отклики/приглашения) для соискателя
  - description: |
      Методы для работы с вакансиями от имени менеджера работодателя.
      ## Восстановление вакансии из архива

      Для восстановления вакансии необходимо использовать метод публикации и руководствоваться правилом использования параметра previous_id, описанным в [методе](#previous_id)
    name: Управление вакансиями
  - description: Методы для управления подписками на уведомления
    name: Webhook API
  - description: |
      Общие сведения для работы с отликами/приглашениями

        <a name="negotiation_workflow"></a>
        ### Модель работы, термины и процедуры

        Отклики и приглашения соответствуют модели, которая выражается в запросах и
        ответах API. Если приложение использует модель правильно, то изменение
        бизнес-логики откликов и приглашений не будет требовать переработки или
        исправления.
        
        В откликах и приглашениях используются понятия:
        
        * *отклик* – объект, порождённый по инициативе соискателя (отклик на вакансию).
        Отклик всегда происходит одним резюме на одну вакансию.
        
        * *приглашение* – объект, порождённый по инициативе работодателя (приглашение на вакансию).
        Приглашение всегда происходит к одному резюме на одну вакансию.
        
        Кроме процесса появления объекта, работа с откликом или приглашением происходит
        одинаково.
        
        * <a name="term-collection"></a> *коллекция* – набор откликов/приглашений,
        объединённых по определённым критериям. Коллекции используются, когда в вашем
        приложении требуется **отобразить** список откликов/приглашений. Не стоит
        полагаться на то, что в определённые этапы обработки отклика/приглашения
        оно будет входить в известные коллекции, так как эта логика может изменяться.
        
        * <a name="term-state"></a> *соискательское состояние отклика/приглашения* –
        статус отклика/приглашения ([поле `state`](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-collection-negotiations-list)), который **видит соискатель**. Возможные значения
        выдаются [в справочнике `negotiations_state`](#tag/Obshie-spravochniki/operation/get-dictionaries) и
        не зависят от вакансии в отклике/приглашении.
        
        * <a name="term-employer-state"></a> *работодательское состояние отклика/приглашения* –
        статус отклика/приглашения у работодателя. Может отличаться от
        соискательского. Список возможных статусов
        **зависит от вакансии и работодателя**, поэтому список
        [необходимо запрашивать](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations), передавая нужную вакансию.
        
        * <a name="term-action"></a> *действие по отклику/приглашению* – действие, которое
        можно выполнить над откликом/приглашением. В результате действия
        работодательское и соискательское состояния отклика/приглашения могут как
        поменяться, так и остаться прежними.
        
        Не следует путать *действие*, *коллекцию* и *состояние* – они могут быть похожи,
        но предназначены для разных целей.
        
        ### Общее описание процесса работы с откликами/приглашениями
        
        Вся работа с откликами/приглашениями происходит в рамках
        **одной выбранной вакансии**. Даже у одного работодателя могут быть вакансии
        с различными правилами работы по откликам/приглашениям.
        
        Сначала необходимо получить список
        [коллекций и работодательских состояний](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations). Используйте коллекции
        для **получения списков откликов/приглашений**. Предлагайте пользователю
        выбирать, какую из коллекций он хочет получить. Для получения всех
        откликов/приглашений нужно последовательно получить все коллекции. Список
        состояний используется только как справочник.
        
        Для **создания приглашения** необходимо запросить вакансии работодателя,
        применимые к выбранному резюме. Получить эту информацию можно в
        [списке вакансий работодателя](#tag/Upravlenie-vakansiyami/operation/get-active-vacancy-list), там же
        будут указаны необходимые параметры (ключ `arguments`) и состояние созданного
        отклика (ключ `resulting_employer_state`). У разных работодателей и разных
        вакансий могут быть различные правила и состояния добавляемого отклика. Для
        каждой пары *вакансия + резюме* может быть только один отклик/приглашение.
        
        Для создания приглашения, работодатель должен иметь активированный доступ к базе
        резюме. Для работы с существующим откликом/приглашением доступ не требуется. Это
        позволяет обрабатывать отклики на вакансии, даже не имея доступ к базе резюме.
        
        Если вам необходимо **совершить действие** по отклику/приглашению,
        ориентируйтесь на [список действий](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#actions-info), который будет доступен в
        [списке (коллекции) откликов/приглашений](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-collection-negotiations-list) и в
        [отдельном отклике/приглашении](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiation-item). Если действие приводит
        к смене состояния по отклику/приглашению, это будет явно указано в ключе
        `resulting_employer_state`. Не все действия приводят к смене состояния.
        
        После приглашения соискателя вы можете начать с ним
        [свободную переписку](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#get-messages). Вы сможете
        [отправлять сообщения](#tag/Otklikipriglasheniya-rabotodatelya/operation/send-negotiation-message), а соискатель — вам отвечать.
        При необходимости переписку для конкретной вакансии
        [можно отключить](#tag/Vakansii/operation/get-vacancy) (поле `allow_messages`).
        
        Чтобы соискательский отклик считался просмотренным работодателем, необходимо сделать одно из следующих действий:
        * запросить список сообщений по URL,
        пришедшему при запросе [списка (коллекции) откликов/приглашений](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-collection-negotiations-list) или
        [отдельного отклика/приглашения](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiation-item),
        * [запросить сообщения](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#get-messages) по отклику,
        * запросить резюме по URL, пришедшему при запросе [списка (коллекции) откликов/приглашений](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-collection-negotiations-list)
        или [отдельного отклика/приглашения](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiation-item)
        * с помощью отдельного метода [отметить определенные отклики как прочитанные](#tag/Otklikipriglasheniya-rabotodatelya/operation/post-negotiations-topics-read)
    name: Отклики/приглашения работодателя
x-tagGroups:
  - name: Работодатель
    tags:
      - Авторизация работодателя
      - Информация о менеджере
      - Информация о работодателе
      - Черновики вакансий
      - Услуги работодателя
      - Менеджеры работодателя
      - Адреса работодателя
      - Webhook API
      - Комментарии к соискателю
      - Отклики/приглашения работодателя
      - Управление вакансиями
      - Сохраненные поиски резюме
      - Поиск резюме
      - Просмотр резюме
      - Банк данных о зарплатах
  - name: Соискатель
    tags:
      - Авторизация соискателя
      - Резюме. Работа с телефоном
      - Резюме. Создание и обновление
      - Резюме. Публикация
      - Резюме. Просмотр информации
      - Резюме. Условия заполнения полей
      - Поиск вакансий для соискателя
      - Резюме. Списки видимости
      - Вакансии
      - Скрытые вакансии
      - Скрытые работодатели
      - Отобранные вакансии
      - Сохраненные поиски вакансий
      - Информация о соискателе
      - Работа с артефактами
      - Переписка (отклики/приглашения) для соискателя
  - name: Общедоступные методы
    tags:
      - Поиск вакансий
      - Общие справочники
      - Подсказки
      - Работодатель
      - Справочники Банка данных заработных плат
  - name: Приложение
    tags:
      - Авторизация приложения
      - Информация о приложении
  - name: Интеграция работодателя
    tags: []
paths:
  /resume_phone_confirm:
    x-name: /resume_phone_confirm
    post:
      operationId: confirm-phone-in-resume
      tags:
        - Резюме. Работа с телефоном
      summary: Подтвердить телефон кодом
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                phone:
                  description: Телефон который надо подтвердить
                  type: string
                  example: 8(454)555-55-55
                confirmation_code:
                  description: Код для подтверждения
                  type: string
                  example: '5675'
              required:
                - phone
                - confirmation_code
      responses:
        '200':
          description: 'Успешный ответ, номер верифицирован'
        '400':
          description: Ошибки в аргументах
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/employers/{employer_id}/managers/{manager_id}/settings':
    x-name: '/employers/{employer_id}/managers/{manager_id}/settings'
    get:
      operationId: get-manager-settings
      tags:
        - Менеджеры работодателя
      summary: Предпочтения менеджера
      description: |
        Возвращает информацию о предпочтениях менеджера.

        Проще всего получить URL из поля `manager_settings_url` объекта `manager`
        в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info).

        Предпочтения менеджера *не влияют* на действия в API по умолчанию. Например, брендированный шаблон оформления
        (`default_vacancy_branded_template`) не будет применен автоматически при публикации вакансии, если шаблон не был передан.
        Приложение может использовать эту информацию для того, чтобы реализовать логику предзаполнения полей
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
          example: '1455'
        - name: manager_id
          in: path
          description: 'Идентификатор менеджера. Можно узнать из списка [менеджеров](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers)'
          required: true
          schema:
            type: string
          example: '87654321'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagerSettings'
        '403':
          description: Текущий пользователь не является менеджером
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Менеджер не существует, либо просмотр его настроек не доступен'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/managers/{manager_id}/limits/resume':
    x-name: '/employers/{employer_id}/managers/{manager_id}/limits/resume'
    get:
      operationId: get-employer-manager-limits
      tags:
        - Менеджеры работодателя
      summary: Дневной лимит просмотра резюме для текущего менеджера
      description: Метод доступен менеджеру только для просмотра своего дневного лимита
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: 'Идентификатор менеджера, который можно узнать в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerManagersEmployerManagerLimits'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerManagerLimits'
        '403':
          description: Неподходящая авторизация
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель или менеджер не существует или у текущего пользователя нет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/addresses':
    x-name: '/employers/{employer_id}/addresses'
    get:
      operationId: get-employer-addresses
      tags:
        - Адреса работодателя
        - Адреса работодателя на уровне работодателя
      summary: Список адресов работодателя
      description: 'Возвращает список адресов работодателя. Для компаний с большим количеством адресов, возможна ситуация, когда между созданием адреса и его чтением будет задержка. То есть, только что созданный адрес не будет содержаться в теле ответа'
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: changed_after
          in: query
          description: 'Позволяет загрузить все адреса, изменённые после этой даты (добавление, удаление или изменение адреса). Изменения возвращаются без пагинации. Значение указывается в формате [ISO 8601](#date-format) - `YYYY-MM-DDThh:mm:ss` или c указанием отступа для часового пояса `YYYY-MM-DDThh:mm:ss±hhmm`. Максимальное значение отступа от текущей даты - 7 дней. При передаче этого параметра, для каждого адреса в теле ответа возвращается поле `deleted`, указывающее на то, удалён ли адрес. Также, в случае передачи этого параметра, игнорируются все остальные'
          required: false
          schema:
            type: string
            pattern: '^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d(?:\.\d+)?((\+|-)[0-1][0-9]{3})?$'
        - name: manager_id
          in: query
          description: Идентификатор менеджера создавшего адрес
          required: false
          schema:
            type: string
        - name: with_manager
          in: query
          description: 'Если true, ответ будет содержать информацию о менеджере создавшем адрес'
          required: false
          schema:
            type: boolean
        - name: per_page
          in: query
          description: |
            Количество элементов на странице выдачи. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). Значение по умолчанию и максимальное значение per_page составляет 10000
          required: false
          schema:
            type: integer
        - name: page
          in: query
          description: |
            Порядковый номер страницы в выдаче. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). По умолчанию нумерация начинается с 0 страницы
          required: false
          schema:
            type: integer
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: 'Успешный ответ, в поле `items` содержится список адресов компании'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerAddressesEmployerAddressesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerAddresses'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerAddressErrors'
        '403':
          description: Текущий пользователь не имеет прав на просмотр адресов данного работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель не существует или у текущего пользователя нет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/managers':
    x-name: '/employers/{employer_id}/managers'
    get:
      operationId: get-employer-managers
      tags:
        - Менеджеры работодателя
        - Менеджеры работодателя на уровне работодателя
      summary: Список менеджеров работодателя
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: Номер страницы
          required: false
          schema:
            type: number
            default: 0
        - name: per_page
          in: query
          description: Количество элементов
          required: false
          schema:
            type: number
            default: 200
            maximum: 200
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerManagersResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerManagers'
        '403':
          description: Текущий пользователь не имеет прав на просмотр менеджеров данного работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель не существует или у текущего пользователя нет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    post:
      operationId: add-employer-manager
      tags:
        - Менеджеры работодателя
      summary: Добавление менеджера
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя. Чтобы получить его, используйте метод [Информация о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmployerManagersAddEmployerManager'
            examples:
              Пример запроса:
                $ref: '#/components/examples/AddEmployerManager'
      responses:
        '201':
          description: Менеджер добавлен
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerManagersEmployerManagerId'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerManagerId'
        '400':
          description: Параметры во входном JSON переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadArgumentErrors'
        '403':
          description: Неподходящая авторизация или другие причины
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadAuthorizationErrors'
        '404':
          description: 'Указанный работодатель не существует, или пользователь не имеет прав на создание менеджера'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/manager_types':
    x-name: '/employers/{employer_id}/manager_types'
    get:
      operationId: get-employer-manager-types
      tags:
        - Менеджеры работодателя
        - Менеджеры работодателя на уровне работодателя
      summary: Справочник типов и прав менеджера
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerManagerTypesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerManagerTypes'
        '403':
          description: Текущий пользователь не имеет прав на просмотр типов менеджеров данного работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель не существует или у текущего пользователя нет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /manager_accounts/mine:
    x-name: /manager_accounts/mine
    get:
      operationId: get-manager-accounts
      tags:
        - Менеджеры работодателя
      summary: Рабочие аккаунты менеджера
      description: |
        Возвращает список рабочих аккаунтов менеджера и информацию об основном и текущем аккаунте.

        Для работы под определенным аккаунтом необходимо передать значение account_id, полученное из списка, в заголовке:

        `X-Manager-Account-Id: {account_id}`

        Использовать данный заголовок можно во всех методах, доступных для работодателей.

        В заголовке можно передавать account_id основного аккаунта, который также подразумевается по умолчанию, при отсутствии заголовка
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagerAccounts'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /resume_should_send_sms:
    x-name: /resume_should_send_sms
    get:
      operationId: get-applicant-phone-info
      tags:
        - Резюме. Работа с телефоном
      summary: Получить информацию о телефоне соискателя
      parameters:
        - name: phone
          in: query
          description: Номер телефона в любом формате
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumeShouldSendSmsContainer'
        '400':
          description: Ошибки в аргументах
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/employers/{employer_id}/addresses/{address_id}':
    x-name: '/employers/{employer_id}/addresses/{address_id}'
    get:
      operationId: get-address
      tags:
        - Адреса работодателя
        - Адреса работодателя на уровне работодателя
      summary: Получение адреса
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя. Чтобы получить его, используйте метод [Информация о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: address_id
          in: path
          description: Идентификатор адреса работодателя
          required: true
          schema:
            type: string
        - name: with_manager
          in: query
          description: 'Если true, ответ будет содержать информацию о менеджере создавшем адрес'
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerAddressesEmployerAddressItemResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerAddressItem'
        '403':
          description: Неподходящая авторизация
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель или адрес не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/managers/{manager_id}':
    x-name: '/employers/{employer_id}/managers/{manager_id}'
    put:
      operationId: edit-employer-manager
      tags:
        - Менеджеры работодателя
      summary: Редактирование менеджера
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: 'Идентификатор менеджера. Можно узнать из списка [менеджеров](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/EmployerManagersManagerData'
            examples:
              Пример запроса:
                $ref: '#/components/examples/EditEmployerManagers'
      responses:
        '200':
          description: Параметры менеджера отредактированы
        '400':
          description: Параметры запроса переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadArgumentErrors'
        '403':
          description: Текущий пользователь не имеет прав на редактирование менеджера или иные причины
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadAuthorizationErrors'
        '404':
          description: 'Указанный работодатель или менеджер не существует, или пользователь не имеет прав на редактирование менеджера'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    get:
      operationId: get-employer-manager
      tags:
        - Менеджеры работодателя
        - Менеджеры работодателя на уровне работодателя
      summary: Получение информации о менеджере
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: Идентификатор менеджера
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerManagersEmployerManagerInfo'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerManagerInfo'
        '404':
          description: Указанный работодатель или менеджер не существует или у текущего пользователя нет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: delete-employer-manager
      tags:
        - Менеджеры работодателя
      summary: Удаление менеджера
      description: 'Удаление менеджера занимает некоторое время. По этой причине, если сразу после успешного удаления менеджера вы запросите, например, список менеджеров, в ответе может вернуться удаленный менеджер'
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: Идентификатор менеджера
          required: true
          schema:
            type: string
        - name: successor_id
          in: query
          description: 'Идентификатор менеджера, которому передаются данные, связанные с удаляемым менеджером, в частности: вакансии, отклики, папки отобранных резюме, комментарии к соискателю, автопоиски и прочее'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          description: 'Успешное выполнение запроса, менеджер удалён'
        '400':
          description: Параметры запроса переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadArgumentErrors'
        '403':
          description: Неподходящая авторизация или иные причины отказа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerManagerBadAuthorizationErrors'
        '404':
          description: 'Указанный работодатель или менеджер не существует, или пользователь не имеет прав на удаление данного менеджера'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /resume_phone_generate_code:
    x-name: /resume_phone_generate_code
    post:
      operationId: send-code-for-verify-phone-in-resume
      tags:
        - Резюме. Работа с телефоном
      summary: Отправить код подтверждения для телефона резюме
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                phone:
                  description: Телефон на который надо отправить подтверждающий код
                  type: string
              required:
                - phone
      responses:
        '201':
          description: Успешно отправлено
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumePhoneGenerateCodeGenerateCode'
        '400':
          description: Ошибки в аргументах
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /oauth/token:
    x-name: /oauth/token
    post:
      operationId: authorize
      tags:
        - Авторизация приложения
        - Авторизация работодателя
        - Авторизация соискателя
      summary: Получение access-токена
      servers:
        - url: 'https://hh.ru'
      requestBody:
        description: |
          В зависимости от способа получения токена `grant_type` необходимо передавать различные наборы параметров <a name="required_parameters"></a>
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              oneOf:
                - $ref: '#/components/schemas/AuthCode'
                - $ref: '#/components/schemas/AuthRefreshToken'
                - $ref: '#/components/schemas/AuthClientCredentials'
            examples:
              authorization_code:
                value:
                  grant_type: authorization_code
                  client_id: ETVQdMs2n9VKw7SMXkh9nX5H
                  client_secret: 95dNjB8FmtxQsmygm6dtEy53
                  redirect_uri: 'http://www.example.com/oauth'
                  code: 29CtxMcaA8pRFDYyC8e8Gkm4
              refresh_token:
                value:
                  grant_type: refresh_token
                  refresh_token: xuLNvUSv7FYM4MPfXDP9aJWe
              client_credentials:
                value:
                  grant_type: client_credentials
                  client_id: ETVQdMs2n9VKw7SMXkh9nX5H
                  client_secret: 95dNjB8FmtxQsmygm6dtEy53
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthUserTokenAndAppToken'
              examples:
                user auth:
                  value:
                    access_token: Bh3JBzcbPxcwxQJtWuHTUV7H
                    token_type: bearer
                    expires_in: 1209600
                    refresh_token: xuLNvUSv7FYM4MPfXDP9aJWe
                app auth:
                  value:
                    access_token: Bh3JBzcbPxcwxQJtWuHTUV7H
                    token_type: bearer
        '400':
          description: Ошибка параметров запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationBadParameters'
              examples:
                account not found:
                  value:
                    summary: Передана неправильная пара `client_id` и `client_secret`
                    error: invalid_request
                    error_description: account not found
                account is locked:
                  value:
                    summary: 'Пользовательский аккаунт заблокирован, пользователь должен обратиться в [службу поддержки сайта](https://github.com/hhru/api#feedback)'
                    error: invalid_request
                    error_description: account is locked
        '403':
          description: Действие запрещено
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
    delete:
      operationId: invalidate-token
      tags:
        - Авторизация работодателя
        - Авторизация соискателя
        - Авторизация на уровне работодателя
      summary: Инвалидация токена
      description: |
        Инвалидация работает только на действующем access-токене.
        После инвалидации токен нельзя будет запросить с помощью refresh-токена - для работы необходимо будет заново авторизоваться в API 
        Таким образом нельзя инвалидировать токен приложения <a name="invalidate_token"></a>.
        В случае компрометации токена необходимо инвалидировать скомпрометированный токен и запросить токен заново!
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Запрос выполнен не с авторизацией пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  /me:
    x-name: /me
    get:
      operationId: get-current-user-info
      tags:
        - Информация о соискателе
        - Информация о менеджере
        - Информация о приложении
        - Информация о работодателе
        - Информация об интеграции работодателя
      summary: Информация о текущем пользователе
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MeProfile'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
    post:
      operationId: edit-current-user-info
      tags:
        - Информация о соискателе
      summary: Редактирование информации авторизованного пользователя
      description: Редактирование ФИО или изменение флага «ищу работу». Данные можно редактировать только группами
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              oneOf:
                - $ref: '#/components/schemas/MeChangeName'
                - $ref: '#/components/schemas/MeSetInSearch'
      responses:
        '204':
          description: 'Успешный ответ, данные переданы'
        '400':
          description: 'Переданы не все поля, или параметры относятся к разным группам'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Ошибка авторизации. Пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /locales/resume:
    x-name: /locales/resume
    get:
      operationId: get-locales-for-resume
      tags:
        - Общие справочники
      summary: Список доступных локалей для резюме
      description: |
        Возвращает справочник возможных локалей резюме. Подколлекция [справочника локалей](#tag/Obshie-spravochniki/operation/get-locales-for-resume).

        Изменив локаль, можно, например, создать резюме на английском языке
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocalesResumeLocales'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/LocalesResumeLocales'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /locales:
    x-name: /locales
    get:
      operationId: get-locales
      tags:
        - Общие справочники
      summary: Список доступных локалей
      description: |
        Возвращает список возможных значений (доступных локалей) в поле `id`. Список локалей будет зависеть от указанного сайта (параметр `host`). В любом запросе к API можно указывать параметр `?locale=` для передачи значения локали (языка)
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocalesLocales'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/LocalesLocales'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /suggests/positions:
    x-name: /suggests/positions
    get:
      operationId: get-positions-suggestions
      tags:
        - Подсказки
      summary: Подсказки по должностям резюме
      parameters:
        - name: text
          in: query
          description: Текст для поиска должности. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
          example: водитель
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsPositions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsSuggestsPositions'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/educational_institutions:
    x-name: /suggests/educational_institutions
    get:
      operationId: get-educational-institutions-suggests
      tags:
        - Подсказки
      summary: Подсказки по названиям учебных заведений
      description: 'Чтобы узнать список факультетов, обратитесь к [соответствующему методу](#tag/Obshie-spravochniki/operation/get-educational-institutions-dictionary)'
      parameters:
        - name: text
          in: query
          description: Текст для поиска учебного заведения. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsEducationalInstitutions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsEducationalInstitutions'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/area_leaves:
    x-name: /suggests/area_leaves
    get:
      operationId: get-area-leaves-suggests
      tags:
        - Подсказки
      summary: 'Подсказки по регионам, являющимися листами в дереве регионов'
      description: 'Также доступна загрузка [полного дерева регионов](#tag/Obshie-spravochniki/operation/get-areas) и [части дерева от определенного элемента](#tag/Obshie-spravochniki/operation/get-areas-from-specified)'
      parameters:
        - name: text
          in: query
          description: Текст для поиска региона. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - name: area_id
          in: query
          description: 'Идентификатор региона из [справочника](#tag/Obshie-spravochniki/operation/get-areas). Сужает подсказки поддеревом переданного идентификатора региона'
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsAreas'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsSuggestsAreas'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/skill_set:
    x-name: /suggests/skill_set
    get:
      operationId: get-skill-set-suggests
      tags:
        - Подсказки
      summary: Подсказки по ключевым навыкам
      parameters:
        - name: text
          in: query
          description: Текст для поиска ключевых навыков. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsSkillSet'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsSkillSet'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/vacancy_positions:
    x-name: /suggests/vacancy_positions
    get:
      operationId: get-vacancy-positions-suggests
      tags:
        - Подсказки
      summary: Подсказки по должностям вакансий
      parameters:
        - name: text
          in: query
          description: Текст для поиска должности в вакансии. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
          example: водитель
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsVacancyPositions'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/professional_roles:
    x-name: /suggests/professional_roles
    get:
      operationId: get-professional-roles-suggests
      tags:
        - Подсказки
      summary: Подсказки по профессиональным ролям
      parameters:
        - name: text
          in: query
          description: Текст для поиска профессиональной роли. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
          example: водитель
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsProfessionalRoles'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/resume_search_keyword:
    x-name: /suggests/resume_search_keyword
    get:
      operationId: get-resume-search-keywords-suggests
      tags:
        - Подсказки
      summary: Подсказки по ключевым словам поиска резюме
      description: 'Предназначены для использования в поле `text` при [поиске резюме](#tag/Poisk-rezyume/operation/search-for-resumes). Содержит названия должностей, компаний и другие фразы, часто используемые при поиске резюме'
      parameters:
        - name: text
          in: query
          description: Текст для поиска ключевого слова. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsSearchKeyword'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsResumeSearchKeyword'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/areas:
    x-name: /suggests/areas
    get:
      operationId: get-areas-suggests
      tags:
        - Подсказки
      summary: Подсказки по регионам
      description: 'Также доступна загрузка [полного дерева регионов](#tag/Obshie-spravochniki/operation/get-areas) и [части дерева от определенного элемента](#tag/Obshie-spravochniki/operation/get-areas-from-specified)'
      parameters:
        - name: text
          in: query
          description: Текст для поиска региона. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - name: area_id
          in: query
          description: 'Идентификатор региона из [справочника](#tag/Obshie-spravochniki/operation/get-areas). Сужает подсказки поддеревом переданного идентификатора региона'
          required: false
          schema:
            type: string
        - name: include_parent
          in: query
          description: 'Включать ли в ответ регион, переданный в параметре `area_id`, если он подходит по искомому тексту'
          required: false
          schema:
            type: boolean
            default: false
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsAreas'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsSuggestsAreas'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/vacancy_search_keyword:
    x-name: /suggests/vacancy_search_keyword
    get:
      operationId: get-vacancy-search-keywords
      tags:
        - Подсказки
      summary: Подсказки по ключевым словам поиска вакансий
      description: 'Предназначены для использования в поле `text` при [поиске вакансий](#tag/Poisk-vakansij/operation/get-vacancies). Содержит названия должностей, компаний и другие фразы, часто используемые при поиске вакансий'
      parameters:
        - name: text
          in: query
          description: Текст для поиска ключевого слова. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsSearchKeyword'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsVacancySearchKeyword'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/fields_of_study:
    x-name: /suggests/fields_of_study
    get:
      operationId: get-fields-of-study-suggestions
      tags:
        - Подсказки
      summary: Подсказки по специализациям
      parameters:
        - name: text
          in: query
          description: Текст для поиска специализаций. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsFieldsOfStudy'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsFieldsOfStudy'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  /suggests/companies:
    x-name: /suggests/companies
    get:
      operationId: get-registered-companies-suggests
      tags:
        - Подсказки
      summary: Подсказки по зарегистрированным организациям
      description: 'Данные из этой подсказки можно использовать, например, для выбора компании при заполнении опыта работы [в резюме](#tag/Rezyume.-Sozdanie-i-obnovlenie). Чтобы найти организации, которые могут публиковать вакансии, используйте [поиск](#tag/Rabotodatel/operation/search-employer)'
      parameters:
        - name: text
          in: query
          description: Текст для поиска организации. Искомый текст должен быть длиной два или более символа и не более 3 000 символов
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsCompanies'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsCompanies'
        '400':
          description: Ошибки запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsErrors'
  '/employers/{employer_id}/services/payable_api_actions/active':
    x-name: '/employers/{employer_id}/services/payable_api_actions/active'
    get:
      operationId: get-payable-api-actions
      tags:
        - Услуги работодателя
      summary: Информация по активным услугам API для платных методов
      description: |
        Каждая подключенная услуга отображается отдельным объектом в массиве `items`, даже при условии, что подключено несколько услуг одного типа.
        Если у работодателя нет активных услуг, то в ответе придет пустой массив `items`
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerServicesEmployerServices'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ServicesEmployerServices'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель не существует или у текущего пользователя нет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/managers/{manager_id}/method_access':
    x-name: '/employers/{employer_id}/managers/{manager_id}/method_access'
    get:
      operationId: get-payable-api-method-access
      tags:
        - Услуги работодателя
      summary: Проверка доступа к платным методам
      description: |
        Начиная с 16 июля 2018 года, некоторые методы API HH для работодателей стали платными.

        Такие методы отмечены в [оглавлении GitHub](https://github.com/hhru/api/blob/master/README.md#content) лейблом <img src="http://hhru.github.io/api/badges/emp_paid.png" alt="employer with paid access" />

        Чтобы приобрести доступ к платным методам, обратитесь к своему персональному менеджеру.

        > Если вы работаете от имени нескольких учетных записей работодателя, проверьте [информацию о подключенных услугах](#tag/Uslugi-rabotodatelya/operation/get-payable-api-actions) — каждой учетной записи должен быть предоставлен доступ к платным методам API. При отсутствии доступа будет выдана ошибка `403 Forbidden`.

        Метод возвращает информацию о доступе к группам платных методов. Существующие группы:

        1. Наличие доступа к методам резюме:
          * [Просмотр резюме](#tag/Prosmotr-rezyume/operation/get-resume).
          * [Работа с откликами](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md).
          * [Переписка с соискателем](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#get-messages).
        2. Наличие доступа к методам поиска вакансий:
          * [Поиск резюме](#tag/Poisk-rezyume/operation/search-for-resumes).
          * [Сохраненные поиски резюме](#tag/Sohranennye-poiski-rezyume/operation/get-saved-resume-searches).
        3. Наличие доступа к [просмотру резюме](#tag/Prosmotr-rezyume/operation/get-resume), у которого есть отклик или приглашение.
        4. Наличие доступа к [просмотру резюме](#tag/Prosmotr-rezyume/operation/get-resume), найденных через [поиск по базе](#tag/Poisk-rezyume/operation/search-for-resumes).

        **Внимание!** Изменился доступ к контактной информации резюме, подробнее [о новой модели работы с базой резюме](https://github.com/hhru/api/blob/master/docs/payable/resume.md)
      parameters:
        - name: employer_id
          in: path
          description: |
            Идентификатор работодателя. Можно узнать в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: |
            Идентификатор менеджера. Можно узнать в [информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerServicesMethodAccess'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ServicesMethodAccess'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель или менеджер не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /saved_searches/vacancies:
    x-name: /saved_searches/vacancies
    get:
      operationId: get-saved-vacancy-searches
      tags:
        - Сохраненные поиски вакансий
      summary: Список сохраненных поисков вакансий
      parameters:
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию - 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию - 10, максимальное значение - 10)'
          required: false
          schema:
            type: number
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavedSearchesSavedSearchResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SavedSearchesSavedSearchesVacancies'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
    post:
      operationId: create-saved-vacancy-search
      tags:
        - Сохраненные поиски вакансий
      summary: Создание нового сохраненного поиска вакансий
      description: |
        Некоторые параметры принимают множественные значения: `key=value&key=value`.

        При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше 2000. Например, возможен запрос `per_page=10&page=199` (выдача с 1991 по 2000 вакансию), но запрос с `per_page=10&page=200` вернёт ошибку (выдача с 2001 до 2010 вакансию)
      parameters:
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию - 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию - 10, максимальное значение - 100)'
          required: false
          schema:
            type: number
        - name: text
          in: query
          description: 'Переданное значение ищется в полях вакансии, указанных в параметре `search_field`. Доступен [язык запросов](https://hh.ru/article/1175). Специально для этого поля есть [автодополнение](#tag/Podskazki/operation/get-vacancy-search-keywords)'
          required: false
          schema:
            type: string
        - name: search_field
          in: query
          description: |
            Область поиска. Справочник с возможными значениями: `vacancy_search_fields` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            По умолчанию, используются все поля. Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Необходимо передавать `id` из справочника `experience` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employment
          in: query
          description: |
            Тип занятости. Необходимо передавать `id` из справочника `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: schedule
          in: query
          description: |
            График работы. Необходимо передавать `id` из справочника `schedule` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: |
            Регион. Необходимо передавать `id` из справочника [/areas](#tag/Obshie-spravochniki/operation/get-areas). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: metro
          in: query
          description: |
            Ветка или станция метро. Необходимо передавать `id` из справочника [/metro](#tag/Obshie-spravochniki/operation/get-metro-stations). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: professional_role
          in: query
          description: |
            Профессиональная область. Необходимо передавать `id` из справочника [/professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)
          required: false
          schema:
            type: string
        - name: industry
          in: query
          description: |
            Индустрия компании, разместившей вакансию. Необходимо передавать `id` из справочника [/industries](#tag/Obshie-spravochniki/operation/get-industries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employer_id
          in: query
          description: |
            Идентификатор [работодателя](#tag/Rabotodatel). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Справочник с возможными значениями: `currency` (ключ `code`) в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Имеет смысл указывать только совместно с параметром `salary`
          required: false
          schema:
            type: string
        - name: salary
          in: query
          description: |
            Размер заработной платы. Если указано это поле, но не указано `currency`, то для `currency` используется значение RUR.

            При указании значения будут найдены вакансии, в которых вилка зарплаты близка к указанной в запросе. При этом значения пересчитываются по текущим курсам ЦБ РФ. Например, при указании `salary=100&currency=EUR` будут найдены вакансии, где вилка зарплаты указана в рублях и после пересчёта в Евро близка к 100 EUR.

            По умолчанию будут также найдены вакансии, в которых вилка зарплаты не указана, чтобы такие вакансии отфильтровать, используйте `only_with_salary=true`
          required: false
          schema:
            type: number
        - name: label
          in: query
          description: |
            Фильтр по меткам вакансий. Необходимо передавать `id` из справочника `vacancy_label` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: only_with_salary
          in: query
          description: |
            Показывать вакансии только с указанием зарплаты. По умолчанию `false`
          required: false
          schema:
            type: boolean
        - name: period
          in: query
          description: |
            Количество дней, в пределах которых производится поиск по вакансиям
          required: false
          schema:
            type: number
        - name: date_from
          in: query
          description: |
            Дата, которая ограничивает снизу диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.

            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: date_to
          in: query
          description: |
            Дата, которая ограничивает сверху диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.

            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: top_lat
          in: query
          description: |
            Верхняя граница широты.

            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.

            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: bottom_lat
          in: query
          description: |
            Нижняя граница широты.

            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.

            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: left_lng
          in: query
          description: |
            Левая граница долготы.

            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.

            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: right_lng
          in: query
          description: |
            Правая граница долготы.

            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.

            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: order_by
          in: query
          description: |
            Сортировка списка вакансий. Справочник с возможными значениями: `vacancy_search_order` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).

            Если выбрана сортировка по удалённости от гео-точки `distance`, необходимо также задать её координаты: `sort_point_lat`, `sort_point_lng`
          required: false
          schema:
            type: string
        - name: sort_point_lat
          in: query
          description: |
            Значение географической широты точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: sort_point_lng
          in: query
          description: |
            Значение географической долготы точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: clusters
          in: query
          description: |
            Возвращать ли [кластеры для данного поиска](#tag/Poisk-vakansij/Klastery-v-poiske-vakansij). По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: describe_arguments
          in: query
          description: |
            Возвращать ли описание использованных параметров поиска. Успешный ответ будет содержать поле [`arguments`]((#tag/Poisk-vakansij/operation/get-vacancies))). 
            По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: no_magic
          in: query
          description: |
            Если значение `true` — автоматическое преобразование вакансий отключено. По умолчанию – false.

            При включённом автоматическом преобразовании, будет предпринята попытка изменить текстовый запрос пользователя на набор параметров. Например, запрос `text=москва бухгалтер 100500` будет преобразован в `text=бухгалтер&only_with_salary=true&area=1&salary=100500`
          required: false
          schema:
            type: boolean
        - name: premium
          in: query
          description: |
            Если значение `true` — в сортировке вакансий будет учтены премиум вакансии. Такая сортировка используется на сайте. По умолчанию — false
          required: false
          schema:
            type: boolean
        - name: responses_count_enabled
          in: query
          description: |
            Если значение `true` — дополнительное поле `counters` с количеством откликов для вакансии включено. По-умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: part_time
          in: query
          description: |
            Вакансии для подработки. Возможные значения:

            * Все элементы из `working_days` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_intervals` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_modes` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элементы `part` или `project` из `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элемент `accept_temporary`, показывает вакансии только с временным трудоустройством.

            Можно указать несколько значений
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '201':
          description: Успешно создано
          content:
            text/html:
              schema:
                type: string
          headers:
            Location:
              schema:
                type: string
                description: 'Путь к созданному автопоиску. Пример: `/saved_searches/vacancies/123`, где `123` — `id` созданного автопоиска'
        '400':
          description: Ошибки в аргументах
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/vacancies/{vacancy_id}/visitors':
    x-name: '/vacancies/{vacancy_id}/visitors'
    get:
      operationId: get-vacancy-visitors
      tags:
        - Управление вакансиями
      summary: Посмотревшие вакансию
      description: |
        Возвращает список сокращенных резюме соискателей, просмотревших вакансию за последнюю неделю. Список отсортирован по убыванию по дате просмотра. Если у пользователя несколько резюме, то вернется резюме с наиболее поздней датой обновления.

        В списке `items` не отображаются резюме, которые соискатель удалил или скрыл от работодателя. Но они учитываются при пагинации (`per_page`) и при подсчете найденных резюме (`found`), а в поле `hidden_on_page` показано количество таких пропущенных резюме на странице
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию — 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию — 20, максимальное значение — 50)'
          required: false
          schema:
            type: number
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVisitorsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVisitors'
        '400':
          description: Параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '404':
          description: Вакансия не найдена или недоступна текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/{vacancy_id}':
    x-name: '/vacancies/{vacancy_id}'
    get:
      operationId: get-vacancy
      tags:
        - Вакансии
        - Управление вакансиями
      summary: Просмотр вакансии
      description: Возвращает подробную информацию по указанной вакансии
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacancy'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancy'
        '403':
          description: Требуется ввести капчу
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonCaptchaErrors'
        '404':
          description: Указанная вакансия не существует или у пользователя нет прав на просмотр вакансии
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    put:
      operationId: edit-vacancy
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Редактирование вакансий
      description: |
        Изменяет поля вакансии, передаваемые в теле запроса.

        Составные поля (например, `salary`, `contacts`, `professional_roles`) можно редактировать только целиком, передавая полный объект. Например, для изменения валюты в зарплате, необходимо передавать также и значение зарплаты.

        Поля `billing_type` и `manager` необходимо передавать в отдельном запросе
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - name: ignore_duplicates
          in: query
          description: 'Игнорировать [появление дубликата](https://github.com/hhru/api/blob/master/docs/employer_vacancies.md#edit-ignore-duplicates), после редактирования вакансии. По умолчанию — `false`'
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/VacancyEdit'
      responses:
        '204':
          description: Успешный ответ
        '400':
          description: Ошибка в теле запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyAddEditCombinedBadJsonDataErrors'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyAddEditBadAuthForbiddenErrors'
        '404':
          description: Вакансия с переданным идентификатором не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /vacancies/blacklisted:
    x-name: /vacancies/blacklisted
    get:
      operationId: get-blacklisted-vacancies
      tags:
        - Скрытые вакансии
      summary: Список скрытых вакансий
      description: 'Возвращает [подмножество вакансий](#tag/Vakansii/operation/get-vacancy), скрытых пользователем, а также один дополнительный параметр'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacanciesBlacklistedResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacanciesBlacklisted'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /vacancies:
    x-name: /vacancies
    post:
      operationId: publish-vacancy
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Публикация вакансии
      description: |
        Создает новую вакансию с полями, передаваемыми в теле запроса. 

        В соответствии с [законом РФ № 1032-1 от 19.04.1991 в ред. от 02.07.2013 г.](https://hh.ru/article/13967) запрещено размещать информацию, ограничивающую права или устанавливающую преимущества для соискателей по полу, возрасту, семейному положению и другим обстоятельствам, не связанным с деловыми качествами работников.

        Примечания:

        * При успешной публикации будут списаны соответствующие услуги.
        * Все вакансии проходят ручную модерацию.
        * В течение нескольких минут после публикации вакансия станет доступна в поиске.

        Полезные ссылки:

        * [Правила размещения вакансий](https://hh.ru/article/341)
        * [Как составить хорошее описание вакансии](https://hh.ru/article/16239)
      parameters:
        - name: ignore_duplicates
          in: query
          description: Форсирование добавления дубликатов
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              $ref: '#/components/schemas/VacancyCreate'
            examples:
              Пример запроса:
                $ref: '#/components/examples/VacancyCreate'
      responses:
        '201':
          description: Успешный ответ
          headers:
            Location:
              schema:
                type: string
                description: 'Ссылка на добавленную вакансию, например: `/vacancies/78789890`'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/_IncludesId'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/Id'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyAddEditCombinedBadJsonDataErrors'
        '403':
          description: Ошибка авторизации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyAddEditBadAuthForbiddenErrors'
    get:
      operationId: get-vacancies
      tags:
        - Поиск вакансий
      summary: Поиск по вакансиям
      description: |
        Возвращает список вакансий, размещенных в сервисе. Список вакансий фильтруется согласно переданным параметрам запроса.

        Особенности работы метода:

        * Неизвестные параметры и параметры с ошибкой в названии игнорируются.
        * Если не передан токен авторизации, то после первого запроса будет предложено пройти капчу.
        * Список вакансий зависит от типа авторизации пользователя. Например, для соискателей вакансии фильтруются по [списку скрытых вакансий](#tag/Skrytye-vakansii) и [списку скрытых компаний](#tag/Skrytye-rabotodateli).
        * Список вакансий также зависит от [выбранного сайта](#section/Obshaya-informaciya/Vybor-sajta) (параметр `host`). Однако выбор регионального сайта, например hh.kz, не ограничивает список вакансиями данного региона. Чтобы ограничить список по региону, используйте параметр `area`.
        * При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше `2000`. Например, возможен запрос `per_page=10&page=199` (выдача с `1991` по `2000` вакансию), но запрос с `per_page=10&page=200` вернёт ошибку (выдача с `2001` по `2010` вакансию)
      parameters:
        - name: page
          in: query
          description: Номер страницы
          required: false
          schema:
            type: number
            default: 0
        - name: per_page
          in: query
          description: Количество элементов
          required: false
          schema:
            type: number
            default: 10
            maximum: 100
        - name: text
          in: query
          description: 'Переданное значение ищется в полях вакансии, указанных в параметре `search_field`. Доступен [язык запросов](https://hh.ru/article/1175). Специально для этого поля есть [автодополнение](#tag/Podskazki/operation/get-vacancy-search-keywords)'
          required: false
          schema:
            type: string
        - name: search_field
          in: query
          description: |
            Область поиска. Справочник с возможными значениями: `vacancy_search_fields` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            По умолчанию, используются все поля. Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Необходимо передавать `id` из справочника `experience` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employment
          in: query
          description: |
            Тип занятости. Необходимо передавать `id` из справочника `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: schedule
          in: query
          description: |
            График работы. Необходимо передавать `id` из справочника `schedule` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: |
            Регион. Необходимо передавать `id` из справочника [/areas](#tag/Obshie-spravochniki/operation/get-areas). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: metro
          in: query
          description: |
            Ветка или станция метро. Необходимо передавать `id` из справочника [/metro](#tag/Obshie-spravochniki/operation/get-metro-stations). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: professional_role
          in: query
          description: |
            Профессиональная область. Необходимо передавать `id` из справочника [/professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)
          required: false
          schema:
            type: string
        - name: industry
          in: query
          description: |
            Индустрия компании, разместившей вакансию. Необходимо передавать `id` из справочника [/industries](#tag/Obshie-spravochniki/operation/get-industries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employer_id
          in: query
          description: |
            Идентификатор [работодателя](#tag/Rabotodatel). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Справочник с возможными значениями: `currency` (ключ `code`) в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Имеет смысл указывать только совместно с параметром `salary`
          required: false
          schema:
            type: string
        - name: salary
          in: query
          description: |
            Размер заработной платы. Если указано это поле, но не указано `currency`, то для `currency` используется значение RUR.
            При указании значения будут найдены вакансии, в которых вилка зарплаты близка к указанной в запросе. При этом значения пересчитываются по текущим курсам ЦБ РФ. Например, при указании `salary=100&currency=EUR` будут найдены вакансии, где вилка зарплаты указана в рублях и после пересчёта в Евро близка к 100 EUR.
            По умолчанию будут также найдены вакансии, в которых вилка зарплаты не указана, чтобы такие вакансии отфильтровать, используйте `only_with_salary=true`
          required: false
          schema:
            type: number
        - name: label
          in: query
          description: |
            Фильтр по меткам вакансий. Необходимо передавать `id` из справочника `vacancy_label` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: only_with_salary
          in: query
          description: |
            Показывать вакансии только с указанием зарплаты. По умолчанию `false`
          required: false
          schema:
            type: boolean
        - name: period
          in: query
          description: |
            Количество дней, в пределах которых производится поиск по вакансиям
          required: false
          schema:
            type: number
        - name: date_from
          in: query
          description: |
            Дата, которая ограничивает снизу диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.
            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: date_to
          in: query
          description: |
            Дата, которая ограничивает сверху диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.
            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: top_lat
          in: query
          description: |
            Верхняя граница широты.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: bottom_lat
          in: query
          description: |
            Нижняя граница широты.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: left_lng
          in: query
          description: |
            Левая граница долготы.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: right_lng
          in: query
          description: |
            Правая граница долготы.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: order_by
          in: query
          description: |
            Сортировка списка вакансий. Справочник с возможными значениями: `vacancy_search_order` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            Если выбрана сортировка по удалённости от гео-точки `distance`, необходимо также задать её координаты: `sort_point_lat`, `sort_point_lng`
          required: false
          schema:
            type: string
        - name: sort_point_lat
          in: query
          description: |
            Значение географической широты точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: sort_point_lng
          in: query
          description: |
            Значение географической долготы точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: clusters
          in: query
          description: |
            Возвращать ли [кластеры для данного поиска](#tag/Poisk-vakansij/Klastery-v-poiske-vakansij). По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: describe_arguments
          in: query
          description: |
            Возвращать ли описание использованных параметров поиска (массив `arguments`). По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: no_magic
          in: query
          description: |
            Если значение `true` — автоматическое преобразование вакансий отключено. По умолчанию – false.
            При включённом автоматическом преобразовании, будет предпринята попытка изменить текстовый запрос пользователя на набор параметров. Например, запрос `text=москва бухгалтер 100500` будет преобразован в `text=бухгалтер&only_with_salary=true&area=1&salary=100500`
          required: false
          schema:
            type: boolean
        - name: premium
          in: query
          description: |
            Если значение `true` — в сортировке вакансий будет учтены премиум вакансии. Такая сортировка используется на сайте. По умолчанию — false
          required: false
          schema:
            type: boolean
        - name: responses_count_enabled
          in: query
          description: |
            Если значение `true` — дополнительное поле `counters` с количеством откликов для вакансии включено. По-умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: part_time
          in: query
          description: |
            Вакансии для подработки. Возможные значения:
            * Все элементы из `working_days` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_intervals` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_modes` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элементы `part` или `project` из `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элемент `accept_temporary`, показывает вакансии только с временным трудоустройством.
            Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: accept_temporary
          in: query
          description: |
            Если значение `true` — то поиск происходит только по вакансиям временной работы.
            По-умолчанию — `false`
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacanciesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancies'
        '400':
          description: Параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Требуется ввести капчу
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonCaptchaErrors'
        '404':
          description: Указанная вакансия не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/saved_searches/vacancies/{id}':
    x-name: '/saved_searches/vacancies/{id}'
    get:
      operationId: get-saved-vacancy-search
      tags:
        - Сохраненные поиски вакансий
      summary: Получение единичного сохраненного поиска вакансий
      parameters:
        - name: id
          in: path
          description: Идентификатор сохраненного поиска
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavedSearchesSavedSearchItem'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SavedSearchesSavedSearchVacancyItem'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Сохраненный поиск не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    put:
      operationId: update-saved-vacancy-search
      tags:
        - Сохраненные поиски вакансий
      summary: Обновление сохраненного поиска вакансий
      description: У сохраненного поиска можно изменить имя (`name`) и статус подписки (`subscription`). В одном запросе можно передать только один из параметров
      parameters:
        - name: id
          in: path
          description: Идентификатор сохраненного поиска
          required: true
          schema:
            type: string
        - name: name
          in: query
          description: Новое имя сохраненного поиска
          required: false
          schema:
            type: string
        - name: subscription
          in: query
          description: Статус подписки
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          $ref: '#/components/responses/ErrorBadArgument'
        '403':
          $ref: '#/components/responses/ErrorBadAuthorization'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '409':
          $ref: '#/components/responses/ErrorBothChangedConflict'
    delete:
      operationId: delete-saved-vacancy-search
      tags:
        - Сохраненные поиски вакансий
      summary: Удаление сохраненного поиска вакансий
      parameters:
        - name: id
          in: path
          description: Идентификатор сохраненного поиска
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          $ref: '#/components/responses/ErrorBadAuthorization'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
  '/vacancies/{vacancy_id}/similar_vacancies':
    x-name: '/vacancies/{vacancy_id}/similar_vacancies'
    get:
      operationId: get-vacancies-similar-to-vacancy
      tags:
        - Поиск вакансий
      summary: 'Поиск по вакансиям, похожим на вакансию'
      description: |
        Если не передан токен авторизации, то после первого запроса будет предложено пройти капчу.

        При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше `2000`. Например, возможен запрос `per_page=10&page=199` (выдача с `1991` по `2000` вакансию), но запрос с `per_page=10&page=200` вернёт ошибку (выдача с `2001` по `2010` вакансию)
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: Номер страницы
          required: false
          schema:
            type: number
            default: 0
        - name: per_page
          in: query
          description: Количество элементов
          required: false
          schema:
            type: number
            default: 10
            maximum: 100
        - name: text
          in: query
          description: 'Переданное значение ищется в полях вакансии, указанных в параметре `search_field`. Доступен [язык запросов](https://hh.ru/article/1175). Специально для этого поля есть [автодополнение](#tag/Podskazki/operation/get-vacancy-search-keywords)'
          required: false
          schema:
            type: string
        - name: search_field
          in: query
          description: |
            Область поиска. Справочник с возможными значениями: `vacancy_search_fields` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            По умолчанию, используются все поля. Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Необходимо передавать `id` из справочника `experience` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employment
          in: query
          description: |
            Тип занятости. Необходимо передавать `id` из справочника `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: schedule
          in: query
          description: |
            График работы. Необходимо передавать `id` из справочника `schedule` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: |
            Регион. Необходимо передавать `id` из справочника [/areas](#tag/Obshie-spravochniki/operation/get-areas). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: metro
          in: query
          description: |
            Ветка или станция метро. Необходимо передавать `id` из справочника [/metro](#tag/Obshie-spravochniki/operation/get-metro-stations). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: professional_role
          in: query
          description: |
            Профессиональная область. Необходимо передавать `id` из справочника [/professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)
          required: false
          schema:
            type: string
        - name: industry
          in: query
          description: |
            Индустрия компании, разместившей вакансию. Необходимо передавать `id` из справочника [/industries](#tag/Obshie-spravochniki/operation/get-industries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employer_id
          in: query
          description: |
            Идентификатор [работодателя](#tag/Rabotodatel). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Справочник с возможными значениями: `currency` (ключ `code`) в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Имеет смысл указывать только совместно с параметром `salary`
          required: false
          schema:
            type: string
        - name: salary
          in: query
          description: |
            Размер заработной платы. Если указано это поле, но не указано `currency`, то для `currency` используется значение RUR.
            При указании значения будут найдены вакансии, в которых вилка зарплаты близка к указанной в запросе. При этом значения пересчитываются по текущим курсам ЦБ РФ. Например, при указании `salary=100&currency=EUR` будут найдены вакансии, где вилка зарплаты указана в рублях и после пересчёта в Евро близка к 100 EUR.
            По умолчанию будут также найдены вакансии, в которых вилка зарплаты не указана, чтобы такие вакансии отфильтровать, используйте `only_with_salary=true`
          required: false
          schema:
            type: number
        - name: label
          in: query
          description: |
            Фильтр по меткам вакансий. Необходимо передавать `id` из справочника `vacancy_label` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: only_with_salary
          in: query
          description: |
            Показывать вакансии только с указанием зарплаты. По умолчанию `false`
          required: false
          schema:
            type: boolean
        - name: period
          in: query
          description: |
            Количество дней, в пределах которых производится поиск по вакансиям
          required: false
          schema:
            type: number
        - name: date_from
          in: query
          description: |
            Дата, которая ограничивает снизу диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.
            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: date_to
          in: query
          description: |
            Дата, которая ограничивает сверху диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.
            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: top_lat
          in: query
          description: |
            Верхняя граница широты.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: bottom_lat
          in: query
          description: |
            Нижняя граница широты.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: left_lng
          in: query
          description: |
            Левая граница долготы.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: right_lng
          in: query
          description: |
            Правая граница долготы.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: order_by
          in: query
          description: |
            Сортировка списка вакансий. Справочник с возможными значениями: `vacancy_search_order` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            Если выбрана сортировка по удалённости от гео-точки `distance`, необходимо также задать её координаты: `sort_point_lat`, `sort_point_lng`
          required: false
          schema:
            type: string
        - name: sort_point_lat
          in: query
          description: |
            Значение географической широты точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: sort_point_lng
          in: query
          description: |
            Значение географической долготы точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: clusters
          in: query
          description: |
            Возвращать ли [кластеры для данного поиска](#tag/Poisk-vakansij/Klastery-v-poiske-vakansij). По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: describe_arguments
          in: query
          description: |
            Возвращать ли описание использованных параметров поиска. Успешный ответ будет содержать поле [`arguments`]((#tag/Poisk-vakansij/operation/get-vacancies))).
            По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: no_magic
          in: query
          description: |
            Если значение `true` — автоматическое преобразование вакансий отключено. По умолчанию – false.
            При включённом автоматическом преобразовании, будет предпринята попытка изменить текстовый запрос пользователя на набор параметров. Например, запрос `text=москва бухгалтер 100500` будет преобразован в `text=бухгалтер&only_with_salary=true&area=1&salary=100500`
          required: false
          schema:
            type: boolean
        - name: premium
          in: query
          description: |
            Если значение `true` — в сортировке вакансий будет учтены премиум вакансии. Такая сортировка используется на сайте. По умолчанию — false
          required: false
          schema:
            type: boolean
        - name: responses_count_enabled
          in: query
          description: |
            Если значение `true` — дополнительное поле `counters` с количеством откликов для вакансии включено. По-умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: part_time
          in: query
          description: |
            Вакансии для подработки. Возможные значения:
            * Все элементы из `working_days` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_intervals` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_modes` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элементы `part` или `project` из `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элемент `accept_temporary`, показывает вакансии только с временным трудоустройством.
            Можно указать несколько значений
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacanciesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancies'
        '400':
          description: Параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Требуется ввести капчу
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonCaptchaErrors'
        '404':
          description: Указанная вакансия не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/{vacancy_id}/upgrades':
    x-name: '/vacancies/{vacancy_id}/upgrades'
    get:
      operationId: get-vacancy-upgrade-list
      tags:
        - Управление вакансиями
      summary: Список улучшений для вакансии
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacancyUpgradeListResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancyUpgradeList'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Вакансия не найдена или у пользователя нет прав на просмотр данной вакансии
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/similar_vacancies':
    x-name: '/resumes/{resume_id}/similar_vacancies'
    get:
      operationId: get-vacancies-similar-to-resume
      tags:
        - Поиск вакансий для соискателя
      summary: 'Поиск по вакансиям, похожим на резюме'
      description: |
        Данные доступны только автору резюме.

        При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше `2000`. Например, возможен запрос `per_page=10&page=199` (выдача с `1991` по `2000` вакансию), но запрос с `per_page=10&page=200` вернёт ошибку (выдача с `2001` по `2010` вакансию)
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию - 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию - 10, максимальное значение - 100)'
          required: false
          schema:
            type: number
        - name: text
          in: query
          description: 'Переданное значение ищется в полях вакансии, указанных в параметре `search_field`. Доступен [язык запросов](https://hh.ru/article/1175). Специально для этого поля есть [автодополнение](#tag/Podskazki/operation/get-vacancy-search-keywords)'
          required: false
          schema:
            type: string
        - name: search_field
          in: query
          description: |
            Область поиска. Справочник с возможными значениями: `vacancy_search_fields` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            По умолчанию, используются все поля. Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Необходимо передавать `id` из справочника `experience` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employment
          in: query
          description: |
            Тип занятости. Необходимо передавать `id` из справочника `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: schedule
          in: query
          description: |
            График работы. Необходимо передавать `id` из справочника `schedule` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: |
            Регион. Необходимо передавать `id` из справочника [/areas](#tag/Obshie-spravochniki/operation/get-areas). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: metro
          in: query
          description: |
            Ветка или станция метро. Необходимо передавать `id` из справочника [/metro](#tag/Obshie-spravochniki/operation/get-metro-stations). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: professional_role
          in: query
          description: |
            Профессиональная область. Необходимо передавать `id` из справочника [/professional_roles](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary)
          required: false
          schema:
            type: string
        - name: industry
          in: query
          description: |
            Индустрия компании, разместившей вакансию. Необходимо передавать `id` из справочника [/industries](#tag/Obshie-spravochniki/operation/get-industries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: employer_id
          in: query
          description: |
            Идентификатор [работодателя](#tag/Rabotodatel). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Справочник с возможными значениями: `currency` (ключ `code`) в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Имеет смысл указывать только совместно с параметром `salary`
          required: false
          schema:
            type: string
        - name: salary
          in: query
          description: |
            Размер заработной платы. Если указано это поле, но не указано `currency`, то для `currency` используется значение RUR.
            При указании значения будут найдены вакансии, в которых вилка зарплаты близка к указанной в запросе. При этом значения пересчитываются по текущим курсам ЦБ РФ. Например, при указании `salary=100&currency=EUR` будут найдены вакансии, где вилка зарплаты указана в рублях и после пересчёта в Евро близка к 100 EUR.
            По умолчанию будут также найдены вакансии, в которых вилка зарплаты не указана, чтобы такие вакансии отфильтровать, используйте `only_with_salary=true`
          required: false
          schema:
            type: number
        - name: label
          in: query
          description: |
            Фильтр по меткам вакансий. Необходимо передавать `id` из справочника `vacancy_label` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: only_with_salary
          in: query
          description: |
            Показывать вакансии только с указанием зарплаты. По умолчанию `false`
          required: false
          schema:
            type: boolean
        - name: period
          in: query
          description: |
            Количество дней, в пределах которых производится поиск по вакансиям
          required: false
          schema:
            type: number
        - name: date_from
          in: query
          description: |
            Дата, которая ограничивает снизу диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.
            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: date_to
          in: query
          description: |
            Дата, которая ограничивает сверху диапазон дат публикации вакансий. Нельзя передавать вместе с параметром `period`.
            Значение указывается в формате `ISO 8601 - YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Указанное значение будет округлено до ближайших пяти минут
          required: false
          schema:
            type: string
        - name: top_lat
          in: query
          description: |
            Верхняя граница широты.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: bottom_lat
          in: query
          description: |
            Нижняя граница широты.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: left_lng
          in: query
          description: |
            Левая граница долготы.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: right_lng
          in: query
          description: |
            Правая граница долготы.
            При поиске используется значение указанного в вакансии адреса. Принимаемое значение — градусы в виде десятичной дроби.
            Необходимо передавать одновременно все четыре параметра гео-координат, иначе вернется ошибка
          required: false
          schema:
            type: number
        - name: order_by
          in: query
          description: |
            Сортировка списка вакансий. Справочник с возможными значениями: `vacancy_search_order` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            Если выбрана сортировка по удалённости от гео-точки `distance`, необходимо также задать её координаты: `sort_point_lat`, `sort_point_lng`
          required: false
          schema:
            type: string
        - name: sort_point_lat
          in: query
          description: |
            Значение географической широты точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: sort_point_lng
          in: query
          description: |
            Значение географической долготы точки, по расстоянию от которой будут отсортированы вакансии. Необходимо указывать только, если `order_by` установлено в `distance`
          required: false
          schema:
            type: number
        - name: clusters
          in: query
          description: |
            Возвращать ли [кластеры для данного поиска](#tag/Poisk-vakansij/Klastery-v-poiske-vakansij). По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: describe_arguments
          in: query
          description: |
            Возвращать ли описание использованных параметров поиска. Успешный ответ будет содержать поле [`arguments`]((#tag/Poisk-vakansij/operation/get-vacancies))).
            По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: no_magic
          in: query
          description: |
            Если значение `true` — автоматическое преобразование вакансий отключено. По умолчанию – false.
            При включённом автоматическом преобразовании, будет предпринята попытка изменить текстовый запрос пользователя на набор параметров. Например, запрос `text=москва бухгалтер 100500` будет преобразован в `text=бухгалтер&only_with_salary=true&area=1&salary=100500`
          required: false
          schema:
            type: boolean
        - name: premium
          in: query
          description: |
            Если значение `true` — в сортировке вакансий будет учтены премиум вакансии. Такая сортировка используется на сайте. По умолчанию — false
          required: false
          schema:
            type: boolean
        - name: responses_count_enabled
          in: query
          description: |
            Если значение `true` — дополнительное поле `counters` с количеством откликов для вакансии включено. По-умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: part_time
          in: query
          description: |
            Вакансии для подработки. Возможные значения:
            * Все элементы из `working_days` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_intervals` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Все элементы из `working_time_modes` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элементы `part` или `project` из `employment` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries).
            * Элемент `accept_temporary`, показывает вакансии только с временным трудоустройством.
            Можно указать несколько значений
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacanciesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancies'
        '400':
          description: Параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '404':
          description: Указанное резюме не существует или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /vacancies/favorited:
    x-name: /vacancies/favorited
    get:
      operationId: get-favorite-vacancies
      tags:
        - Отобранные вакансии
      summary: Список отобранных вакансий
      description: 'Возвращает [подмножество вакансий](#tag/Vakansii/operation/get-vacancy), добавленных пользователем в отобранные, а также ряд дополнительных полей'
      parameters:
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию - 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: Количество элементов на странице
          required: false
          schema:
            type: number
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacanciesFavoritedResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacanciesFavorited'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/vacancies/blacklisted/{vacancy_id}':
    x-name: '/vacancies/blacklisted/{vacancy_id}'
    put:
      operationId: add-vacancy-to-blacklisted
      tags:
        - Скрытые вакансии
      summary: Добавление вакансии в список скрытых
      description: 'Добавляет указанную вакансию в [список скрытых вакансий](#tag/Skrytye-vakansii/operation/get-blacklisted-vacancies)'
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Превышен лимит на количество элементов в списке
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyBlacklistedBadRequestErrors'
        '403':
          description: Текущий пользователь не является соискателем или не имеет прав на добавление вакансии в скрытые
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Вакансия не найдена
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyBlacklistedNotFoundErrors'
    delete:
      operationId: delete-vacancy-from-blacklisted
      tags:
        - Скрытые вакансии
      summary: Удаление вакансии из списка скрытых
      description: 'Удаляет указанную вакансию из [списка скрытых вакансий](#tag/Skrytye-vakansii/operation/get-blacklisted-vacancies)'
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Вакансия не найдена
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyBlacklistedNotFoundErrors'
  '/employers/{employer_id}/vacancies/active':
    x-name: '/employers/{employer_id}/vacancies/active'
    get:
      operationId: get-active-vacancy-list
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Просмотр списка опубликованных вакансий
      description: |
        Возвращает список опубликованных вакансий.

        Если передан параметр `resume_id`, то в список попадут только те вакансии, которые подходят для указанного резюме. Кроме того, ответ будет содержать дополнительные поля
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: Номер страницы (считается от 0)
          required: false
          schema:
            type: number
            default: 0
        - name: per_page
          in: query
          description: Количество элементов
          required: false
          schema:
            type: number
            default: 20
            maximum: 50
        - name: manager_id
          in: query
          description: |
            Идентификатор менеджера, вакансии которого будут получены в ответе. По умолчанию возвращаются вакансии текущего пользователя. 
            Если передать несколько `manager_id`, будет использован последний. Значения можно взять из [списка](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers)
          required: false
          schema:
            type: string
        - name: text
          in: query
          description: Строка для поиска по названию вакансии
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: 'Идентификатор региона с вакансией. Чтобы получить идентификаторы регионов, в которых есть активные вакансии, воспользуйтесь [соответствующим методом](#tag/Informaciya-o-rabotodatele/operation/get-employer-vacancy-areas)'
          required: false
          schema:
            type: string
        - name: resume_id
          in: query
          description: 'Идентификатор резюме. Этот параметр нельзя передавать в комбинации с другими параметрами, только отдельно. Если параметр передан, в ответе возвращаются только те вакансии, которые подходят для указанного резюме, а также дополнительные поля'
          required: false
          schema:
            type: string
        - name: order_by
          in: query
          description: 'Способ сортировки вакансий. Доступные значения перечислены в поле `employer_active_vacancies_order` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacancyListResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesActiveList'
                Пример ответа при указанном resume_id:
                  $ref: '#/components/examples/VacanciesMatchList'
        '400':
          description: Ошибка параметров запроса или передана несочетаемая пара параметров
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Менеджер с переданным идентификатором не существует или у текущего пользователя нет прав на просмотр опубликованных вакансий
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/vacancies/hidden':
    x-name: '/employers/{employer_id}/vacancies/hidden'
    get:
      operationId: get-hidden-vacancies
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Список удаленных вакансий
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: manager_id
          in: query
          description: |
            Идентификатор менеджера. Передайте, если требуется получить удаленные вакансии другого менеджера. 
            Если передать несколько параметров `manager_id`, будет использоваться только последний.
            По умолчанию возвращаются вакансии текущего пользователя
          required: false
          schema:
            type: string
        - name: order_by
          in: query
          description: |
            Сортировка списка вакансий в архиве. Справочник с возможными значениями: `employer_hidden_vacancies_order` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: per_page
          in: query
          description: |
            Количество элементов на странице выдачи. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). Значение по умолчанию и максимальное значение `per_page` составляет 1000
          required: false
          schema:
            type: integer
        - name: page
          in: query
          description: |
            Порядковый номер страницы в выдаче. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). По умолчанию нумерация начинается с 0 страницы
          required: false
          schema:
            type: integer
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesDeletedVacancyListResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesDeletedVacancyList'
        '400':
          description: Параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: 'Текущий пользователь не является работодателем, либо указан неверный идентификатор работодателя'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: У текущего пользователя нет прав на просмотр удаленных вакансий
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/vacancies/hidden/{vacancy_id}':
    x-name: '/employers/{employer_id}/vacancies/hidden/{vacancy_id}'
    put:
      operationId: add-vacancy-to-hidden
      tags:
        - Управление вакансиями
      summary: Удаление вакансий
      description: Удалить можно только вакансию из архива
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: 'Текущий пользователь не является работодателем или вы пытаетесь удалить вакансию, которая не находится в архиве'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Указан неверный идентификатор работодателя или вакансии, либо у текущего пользователя нет прав на удаление вакансии из архива'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: restore-vacancy-from-hidden
      tags:
        - Управление вакансиями
      summary: Восстановление вакансии из удаленных
      description: Восстановить можно только удаленную из архива вакансию. Вакансия вернется в архив
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: 'Текущий пользователь не является работодателем или вы пытаетесь восстановить вакансию, которая не удалена'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Указан неверный идентификатор работодателя или вакансии, либо у текущего пользователя нет прав на удаление вакансии из архива'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /vacancy_conditions:
    x-name: /vacancy_conditions
    get:
      operationId: get-vacancy-conditions
      tags:
        - Управление вакансиями
      summary: Условия заполнения полей при добавлении и редактировании вакансий
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacancyConditions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancyConditions'
        '403':
          description: Условия заполнения полей вакансии недоступны данному пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/vacancies/{vacancy_id}/prolongate':
    x-name: '/vacancies/{vacancy_id}/prolongate'
    get:
      operationId: get-prolongation-vacancy-info
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Информация о возможности продления вакансии
      description: |
        Условия продления:

            * Стоимость продления вакансии равна стоимости новой публикации.
            * Стандартные вакансии можно продлевать, если с момента предыдущего продления прошло не менее 1 минуты.
            * Вакансии "стандарт-плюс" можно продлевать не ранее, чем за 7 дней до окончания срока публикации
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacancyProlongate'
              examples:
                'Пример ответа, когда продление возможно':
                  $ref: '#/components/examples/VacanciesVacancyProlongateAvailable'
                'Пример ответа, когда продление невозможно':
                  $ref: '#/components/examples/VacanciesVacancyProlongateUnavailable'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Текущему пользователю недоступно получение информации о вакансии или вакансия не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    post:
      operationId: vacancy-prolongation
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Продление вакансии
      description: |
        Продлевает срок размещения указанной вакансии.

        Условия продления:

        * Стоимость продления вакансии равна стоимости новой публикации.
        * Стандартные вакансии можно продлевать, если с момента предыдущего продления прошло не менее 1 минуты.
        * Вакансии "стандарт-плюс" можно продлевать не ранее, чем за 7 дней до окончания срока публикации
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является работодателем или продление невозможно
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyProlongateForbidden'
        '404':
          description: Текущему пользователю недоступно получение информации о вакансии или вакансия не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/vacancies/archived/{vacancy_id}':
    x-name: '/employers/{employer_id}/vacancies/archived/{vacancy_id}'
    put:
      operationId: add-vacancy-to-archive
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Архивация вакансии
      description: Переносит вакансию в архив
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Указан неверный идентификатор работодателя, либо у текущего пользователя нет прав на архивацию вакансии, либо вакансия с переданным идентификатором не существует'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/{id}/preferred_negotiations_order':
    x-name: '/vacancies/{id}/preferred_negotiations_order'
    get:
      operationId: get-pref-negotiations-order
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Просмотр предпочитаемой сортировки откликов
      parameters:
        - name: id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesPreferredNegotiationsOrder'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesPreferredNegotiationsOrder'
        '404':
          description: Вакансия не найдена или просмотр откликов/приглашений по ней недоступен
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    put:
      operationId: put-pref-negotiations-order
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Изменение предпочитаемой сортировки откликов
      parameters:
        - name: id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/VacanciesPreferredNegotiationsOrderRequest'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Идентификатор типа сортировки передан с ошибкой или данный тип сортировки недоступен
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '404':
          description: Вакансия не найдена или просмотр откликов/приглашений по ней недоступен
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/favorited/{vacancy_id}':
    x-name: '/vacancies/favorited/{vacancy_id}'
    put:
      operationId: add-vacancy-to-favorite
      tags:
        - Отобранные вакансии
      summary: Добавление вакансии в список отобранных
      description: 'Добавляет указанную вакансию в [список отобранных вакансий](#tag/Otobrannye-vakansii/operation/get-favorite-vacancies)'
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является соискателем или не имеет прав на добавление вакансии в отобранные
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyFavoritedCombinedBadAuthErrors'
        '404':
          description: Вакансия не найдена
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: delete-vacancy-from-favorite
      tags:
        - Отобранные вакансии
      summary: Удаление вакансии из списка отобранных
      description: 'Удаляет указанную вакансию из [списка отобранных вакансий](#tag/Otobrannye-vakansii/operation/get-favorite-vacancies)'
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Вакансия не найдена
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/managers/{manager_id}/vacancies/available_types':
    x-name: '/employers/{employer_id}/managers/{manager_id}/vacancies/available_types'
    get:
      operationId: get-available-vacancy-types
      tags:
        - Информация о менеджере
      summary: Варианты публикации вакансий у текущего менеджера
      description: 'Метод позволяет понять, может ли менеджер публиковать вакансии и какие типы вакансий ему доступны. Возвращает все возможные типы публикации'
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: 'Идентификатор менеджера, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesAvailableVacancyTypeResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesAvailableVacancyType'
        '403':
          description: Текущий пользователь не является работодателем или не имеет доступа к данным
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Менеджер или компания не существуют или не доступны для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/{vacancy_id}/stats':
    x-name: '/vacancies/{vacancy_id}/stats'
    get:
      operationId: get-vacancy-stats
      tags:
        - Управление вакансиями
      summary: Статистика по вакансии
      description: |
        Возвращает статистику за последние пять дней существования вакансии.

        При этом:

        * Если вакансия создана менее пяти дней назад, то первой датой в ответе будет дата создания вакансии. Для будущих дат в полях `responses` и `views` вернется `null`.
        * Если вакансия находится в архиве или удалена, то последней датой будет дата архивации
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesVacancyStatsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesVacancyStats'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Вакансия не найдена
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/vacancies/archived':
    x-name: '/employers/{employer_id}/vacancies/archived'
    get:
      operationId: get-archived-vacancies
      tags:
        - Управление вакансиями
        - Управление вакансиями на уровне работодателя
      summary: Список архивных вакансий
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - name: manager_id
          in: query
          description: |
            Идентификатор менеджера из [списка менеджеров работодателя](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers). Передайте, если требуется получить вакансии другого менеджера. 

            Если передать несколько параметров `manager_id`, будет использоваться только последний.

            По умолчанию возвращаются вакансии текущего пользователя
          required: false
          schema:
            type: string
        - name: order_by
          in: query
          description: |
            Сортировка списка вакансий в архиве. Справочник с возможными значениями: `employer_archived_vacancies_order` в [/dictionaries](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: per_page
          in: query
          description: |
            Количество элементов на странице выдачи. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). Значение по умолчанию и максимальное значение `per_page` составляет 1000
          required: false
          schema:
            type: integer
        - name: page
          in: query
          description: |
            Порядковый номер страницы в выдаче. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). По умолчанию нумерация начинается с 0 страницы
          required: false
          schema:
            type: integer
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacanciesArchivedVacancyListResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacanciesArchivedVacancyList'
        '400':
          description: Параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: 'Текущий пользователь не является работодателем, либо указан неверный идентификатор работодателя'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: У текущего пользователя нет прав на просмотр архивных вакансий
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /artifacts/portfolio/conditions:
    x-name: /artifacts/portfolio/conditions
    get:
      operationId: get-artifacts-portfolio-conditions
      tags:
        - Работа с артефактами
      summary: Условия загрузки портфолио
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactsArtifactConditions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ArtifactsArtifactConditions'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/artifacts/{id}':
    x-name: '/artifacts/{id}'
    put:
      operationId: edit-artifact
      tags:
        - Работа с артефактами
      summary: Редактирование артефакта
      description: Метод позволяет отредактировать описание портфолио
      parameters:
        - name: id
          in: path
          description: 'Идентификатор артефакта. Чтобы получить его, используйте метод [Получение портфолио](#tag/Rabota-s-artefaktami/operation/get-artifacts-portfolio)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ArtifactsPortfolioDescription'
            examples:
              Пример запроса:
                $ref: '#/components/examples/ArtifactsPortfolioDescription'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Артефакт не существует или не принадлежит текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: delete-artifact
      tags:
        - Работа с артефактами
      summary: Удаление артефакта
      parameters:
        - name: id
          in: path
          description: 'Идентификатор артефакта. Чтобы получить его, используйте метод [Получение портфолио](#tag/Rabota-s-artefaktami/operation/get-artifacts-portfolio) или [Получение фотографий](#tag/Rabota-s-artefaktami/operation/get-artifact-photos)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Артефакт не существует или не принадлежит текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /artifacts:
    x-name: /artifacts
    post:
      operationId: load-artifact
      tags:
        - Работа с артефактами
      summary: Загрузка артефакта
      description: |
        Запрос загружает файл с локальной машины в сервис. 

        Ограничения на типы файлов и их размер доступны в [условиях загрузки артефактов](#tag/Rabota-s-artefaktami).

        Для прикрепления загруженных изображений в резюме, необходимо передать `id` артефакта в [соответствующее поле резюме](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#resume-fields). Для удаления артефакта из резюме укажите `null`
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              $ref: '#/components/schemas/ArtifactsArtifactUploadBody'
            encoding:
              file:
                contentType: 'image/png, image/jpeg'
      responses:
        '201':
          description: Результат отправки файла
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactsArtifactItem'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ArtifactsArtifactUpload'
        '400':
          description: Ошибка в параметрах запроса или добавление изображения невозможно
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsArtifactUploadBadJsonData'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '413':
          description: Изображение слишком большое
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsRequestEntityTooLargeErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /artifacts/portfolio:
    x-name: /artifacts/portfolio
    get:
      operationId: get-artifacts-portfolio
      tags:
        - Работа с артефактами
      summary: Получение портфолио
      description: Возвращает список ранее загруженных изображений с портфолио. Их можно использовать при создании/редактировании резюме
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactsArtifactPortfolioResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ArtifactsArtifactsPortfolio'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /artifacts/photo/conditions:
    x-name: /artifacts/photo/conditions
    get:
      operationId: get-artifact-photos-conditions
      tags:
        - Работа с артефактами
      summary: Условия загрузки фотографий
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactsArtifactConditions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ArtifactsArtifactConditions'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /artifacts/photo:
    x-name: /artifacts/photo
    get:
      operationId: get-artifact-photos
      tags:
        - Работа с артефактами
      summary: Получение фотографий
      description: Возвращает список ранее загруженных изображений с фотографиями. Их можно использовать при создании/редактировании резюме
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ArtifactsArtifactPhotoResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ArtifactsArtifactsPhoto'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /dictionaries:
    x-name: /dictionaries
    get:
      operationId: get-dictionaries
      tags:
        - Общие справочники
      summary: Справочники полей
      description: 'Справочники полей и сущностей, используемых в API. Значения в справочниках могут поменяться в любой момент'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesDictResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesDictionaries'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /languages:
    x-name: /languages
    get:
      operationId: get-languages
      tags:
        - Общие справочники
      summary: Список всех языков
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesLangResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/Languages'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /educational_institutions:
    x-name: /educational_institutions
    get:
      operationId: get-educational-institutions-dictionary
      tags:
        - Общие справочники
      summary: Основная информация об учебных заведениях
      parameters:
        - name: id
          in: query
          description: 'Идентификаторы учебных заведений. Идентификатор конкретного заведения можно узнать в [подсказке](#tag/Podskazki/operation/get-educational-institutions-suggests). Передать можно не более 50 значений. Например: `?id=39196&id=45470&id=0`. Если был передан идентификатор несуществующего заведения, для него не вернется никакой информации'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuggestsEducationalInstitutions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SuggestsEducationalInstitutions'
        '400':
          description: 'Неверные параметры запроса, либо ошибка [bulk-запроса](https://github.com/hhru/api/blob/master/docs/errors.md#bulk-request)'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
  /skills:
    x-name: /skills
    get:
      operationId: get-skills
      tags:
        - Общие справочники
      summary: Справочник ключевых навыков
      description: |
        Метод возвращает информацию по запрашиваемым ключевым навыкам.

        Значения в справочнике могут поменяться в любой момент
      parameters:
        - name: id
          in: query
          description: 'Идентификаторы ключевых навыков. Идентификатор конкретного навыка можно узнать по [подсказке](#tag/Podskazki/operation/get-skill-set-suggests). Передать можно не более 50 значений. Например: `?id=2716&id=3019&id=0`. Если был передан идентификатор несуществующего ключевого навыка, для него не вернется никакой информации'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesSkillsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesSkills'
        '400':
          description: 'Неверные параметры запроса, либо ошибка [bulk-запроса](https://github.com/hhru/api/blob/master/docs/errors.md#bulk-request)'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
  /professional_roles:
    x-name: /professional_roles
    get:
      operationId: get-professional-roles-dictionary
      tags:
        - Общие справочники
      summary: Справочник профессиональных ролей
      description: |
        Возвращает профессиональные роли, их категории и другую информацию о профессиональных ролях
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProfessionalRolesCatalog'
        '400':
          $ref: '#/components/responses/ErrorBadArgument'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/educational_institutions/{id}/faculties':
    x-name: '/educational_institutions/{id}/faculties'
    get:
      operationId: get-faculties
      tags:
        - Общие справочники
      summary: Список факультетов учебного заведения
      description: Возвращает список факультетов указанного учебного заведения
      parameters:
        - name: id
          in: path
          description: 'Идентификатор учебного заведения, который можно узнать из [подсказки](#tag/Podskazki/operation/get-educational-institutions-suggests)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesFacultiesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesFaculties'
        '404':
          description: Указанное учебное заведение не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /industries:
    x-name: /industries
    get:
      operationId: get-industries
      tags:
        - Общие справочники
      summary: Отрасли компаний
      description: Возвращает двухуровневый справочник всех отраслей
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesIndustriesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesIndustries'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /areas/countries:
    x-name: /areas/countries
    get:
      operationId: get-countries
      tags:
        - Общие справочники
      summary: Справочник стран
      description: 'Возвращает подмножество регионов, являющихся странами'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesCountriesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/AreasCountries'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /areas:
    x-name: /areas
    get:
      operationId: get-areas
      tags:
        - Общие справочники
      summary: Дерево всех регионов
      description: |
        Возвращает древовидный список всех регионов.

        Значения в справочнике могут поменяться в любой момент
      parameters:
        - name: additional_case
          in: query
          description: |
            Применимо только к русской локализации.

            В дополнительном поле вернется название региона в указанном падеже. Поддерживается только значение `prepositional` — предложный падеж
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesAreaResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/AreasAreas'
        '400':
          description: Ошибки в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsDictionariesBadArgumentErrors'
  '/areas/{area_id}':
    x-name: '/areas/{area_id}'
    get:
      operationId: get-areas-from-specified
      tags:
        - Общие справочники
      summary: 'Справочник регионов, начиная с указанного'
      description: |
        Возвращает древовидный список регионов, начиная с указанного.

        Значения в справочнике могут поменяться в любой момент
      parameters:
        - name: area_id
          in: path
          description: 'Идентификатор региона из справочника [/areas](#tag/Obshie-spravochniki/operation/get-areas)'
          required: true
          schema:
            type: string
        - name: additional_case
          in: query
          description: |
            Применимо только к русской локализации.

            В дополнительном поле вернется название региона в указанном падеже. Поддерживается только значение `prepositional` — предложный падеж
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesAreaItem'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/AreasAreaItem'
        '400':
          description: Ошибки в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsDictionariesBadArgumentErrors'
  /salary_statistics/dictionaries/employee_levels:
    x-name: /salary_statistics/dictionaries/employee_levels
    get:
      operationId: get-salary-employee-levels
      tags:
        - Справочники Банка данных заработных плат
      summary: Уровни компетенций
      description: Возвращает список уровней компетенций
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesSalaryStatisticsEmployeeLevelResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesSalaryStatisticsEmployeeLevel'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /salary_statistics/dictionaries/salary_areas:
    x-name: /salary_statistics/dictionaries/salary_areas
    get:
      operationId: get-salary-salary-areas
      tags:
        - Справочники Банка данных заработных плат
      summary: Регионы и города
      description: 'Возвращает список регионов, областей и городов'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesSalaryStatisticsAreaResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesSalaryStatisticsSalaryAreas'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /salary_statistics/dictionaries/professional_areas:
    x-name: /salary_statistics/dictionaries/professional_areas
    get:
      operationId: get-salary-professional-areas
      tags:
        - Справочники Банка данных заработных плат
      summary: Профобласти и специализации
      description: Возвращает список профобластей и специализаций
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesSalaryStatisticsProfessionalAreasResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesSalaryStatisticsProfessionalAreas'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /salary_statistics/dictionaries/salary_industries:
    x-name: /salary_statistics/dictionaries/salary_industries
    get:
      operationId: get-salary-industries
      tags:
        - Справочники Банка данных заработных плат
      summary: Отрасли и сферы деятельности
      description: Возвращает двухуровневый список отраслей и сфер деятельности
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesIndustriesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DictionariesIndustries'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /negotiations:
    x-name: /negotiations
    post:
      operationId: apply-to-vacancy
      tags:
        - Вакансии
      summary: Отклик на вакансию
      description: |
        Запрос позволяет пользователю откликнуться на вакансию.

        Чтобы узнать, какими резюме возможно откликнуться на конкретную вакансию, воспользуйтесь [списком подходящих резюме](#tag/Rezyume.-Prosmotr-informacii/operation/get-suitable-resumes)
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              $ref: '#/components/schemas/VacanciesVacancyApplicationBody'
      responses:
        '201':
          description: Результат отклика на обычную вакансию
          content:
            text/html:
              schema:
                type: string
          headers:
            Location:
              schema:
                type: string
                description: 'Путь к созданному отклику. Пример: `/negotiations/123`, где `123` — `id` созданного отклика'
        '303':
          description: Результат отклика на вакансию с прямым откликом
          content:
            text/html:
              schema:
                type: string
          headers:
            Location:
              schema:
                type: string
                description: 'Содержит внешний URL на сайт работодателя. Пример: `http://example.com/respond/vacancy`. Используйте этот URL, чтобы предложить пользователю откликнуться на вакансию на сайте работодателя вместо стандартного механизма откликов'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ErrorsVacancyApplyBadRequestErrors'
        '403':
          description: Невозможно откликнуться на вакансию
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyApplyForbiddenErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
    get:
      operationId: get-negotiations
      tags:
        - Переписка (отклики/приглашения) для соискателя
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Список откликов/приглашений
      description: |
        Возвращает список откликов соискателя или список коллекций откликов/приглашений по [вакансии](#tag/Upravlenie-vakansiyami/operation/get-active-vacancy-list) работодателя.

        По умолчанию отклики сортируются по дате последнего обновления — от новых к старым.

        Чтобы получить список активных откликов, передайте в запросе параметр `?status=active`
      parameters:
        - name: page
          in: query
          description: Номер страницы
          required: false
          schema:
            type: number
            default: 0
        - name: per_page
          in: query
          description: Количество элементов на странице
          required: false
          schema:
            type: number
            default: 20
        - name: order_by
          in: query
          description: 'Тип сортировки. Возможные значения указаны в поле `negotiations_order` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - name: order
          in: query
          description: 'Направление сортировки. Возможные значения: `asc` — по возрастанию, `desc` — по убыванию'
          required: false
          schema:
            type: string
        - name: vacancy_id
          in: query
          description: Фильтр по ID вакансии. Обязательный для работодателя
          required: false
          schema:
            type: string
        - name: status
          in: query
          description: |
            Запрос вернет только те отклики, которые находятся в определенном статусе.

            Возможные значения указаны в поле `applicant_negotiation_status` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: has_updates
          in: query
          description: |
            Если передан `true`, запрос вернет только те отклики, для которых есть непросмотренные сообщения. По умолчанию `false`
          required: false
          schema:
            type: boolean
        - name: with_job_search_status
          in: query
          description: |
            Если передан `true`, запрос вернет статус поиска работы кандидатом
          required: false
          schema:
            type: boolean
        - name: with_generated_collections
          in: query
          description: |
            Если передан `true`, запрос вернет информацию по [сгенерированным коллекциям](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#term-collection) откликов/приглашений для данной вакансии.

            Чтобы получить выгрузку по нескольким коллекциям, запросите их последовательно. По умолчанию `false`
          required: false
          schema:
            type: boolean
            default: false
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsListResponse'
              examples:
                Пример ответа (соискатель):
                  $ref: '#/components/examples/NegotiationsListResponse'
                Пример ответа (работодатель):
                  $ref: '#/components/examples/NegotiationsEmployerListResponse'
        '400':
          description: Ошибка параметров запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadRequestBadArgumentBadRequestAndBadArgumentErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанная вакансия не существует или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/managers/{manager_id}/negotiations_statistics':
    x-name: '/employers/{employer_id}/managers/{manager_id}/negotiations_statistics'
    get:
      operationId: get-negotiations-statistics-manager
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Статистика откликов для менеджера
      description: |
        Запрос выводит статистику по работе с откликами для вакансий менеджера за период (30 дней). Статистика менеджера доступна самому менеджеру, а также менеджерам с [типом](#tag/Menedzhery-rabotodatelya/operation/get-employer-manager-types) `main_contact_person`.

        Дополнительно рассчитывается [индекс вежливости](https://hh.ru/article/23734) менеджера по всем вакансиям
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
          example: '1455'
        - name: manager_id
          in: path
          description: Идентификатор менеджера
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsNegotiationsStatisticsManagerResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsNegotiationsStatisticsManager'
        '403':
          description: Текущий пользователь не является менеджером или работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Запрашиваемый работодатель или менеджер не существует или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /negotiations/active:
    x-name: /negotiations/active
    get:
      operationId: get-active-negotiations
      tags:
        - Переписка (отклики/приглашения) для соискателя
      summary: Список активных откликов
      deprecated: true
      description: |
        Возвращает список активных откликов соискателя.

        Запрос является устаревшим и поддерживается для обратной совместимости. Вместо него используйте [запрос списка откликов](#tag/Perepiska-(otklikipriglasheniya)-dlya-soiskatelya/operation/get-negotiations) с параметром `?status=active`
      parameters:
        - name: page
          in: query
          description: Номер страницы
          required: false
          schema:
            type: number
            default: 0
        - name: per_page
          in: query
          description: Количество элементов на странице
          required: false
          schema:
            type: number
            default: 20
        - name: order_by
          in: query
          description: 'Тип сортировки. Возможные значения указаны в поле `negotiations_order` [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - name: order
          in: query
          description: 'Направление сортировки. Возможные значения: `asc` — по возрастанию, `desc` — по убыванию'
          required: false
          schema:
            type: string
        - name: vacancy_id
          in: query
          description: Фильтр по ID вакансии
          required: false
          schema:
            type: string
        - name: has_updates
          in: query
          description: |
            Если передан `true`, запрос вернет только те отклики, для которых есть непросмотренные сообщения. По умолчанию `false`
          required: false
          schema:
            type: boolean
        - name: with_job_search_status
          in: query
          description: |
            Если передан `true`, запрос вернет статус поиска работы кандидатом
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsListResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsListResponse'
        '400':
          description: Ошибка параметров запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/message_templates/{template}':
    x-name: '/message_templates/{template}'
    get:
      operationId: get-negotiation-message-templates
      tags:
        - Отклики/приглашения работодателя
      summary: Список шаблонов ответов для отклика/приглашения
      description: |
        Метод требует наличия [платного доступа для работодателя](#operation/get-payable-api-method-access).

        Возвращает список шаблонов ответов для отклика/приглашения или резюме. Может использоваться в отправляемых соискателю приглашениях на вакансию или [действиях по откликам/приглашениям](#tag/Otklikipriglasheniya-rabotodatelya/operation/put-negotiations-collection-to-next-state).

        > Количество доступных шаблонов будет зависеть от конкретного отклика/приглашения или вакансии и их статусов.

        Рекомендуется использовать URL из поля `templates.url` в [списке откликов/приглашений](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations). Примеры:

        ```
        GET /message_templates/{template}?topic_id={topic_id}
        GET /message_templates/{template}?vacancy_id={vacancy_id}&resume_id={resume_id}
        ```
      parameters:
        - name: template
          in: path
          description: |
            Название шаблона. Возможные варианты:

            * `invite` — текст при приглашении соискателя на вакансию;
            * `invite_after_response` — текст при [приглашении после отклика со стороны соискателя](#tag/Otklikipriglasheniya-rabotodatelya/operation/put-negotiations-collection-to-next-state);
            * `discard_after_response` — текст при [отказе после отклика](#tag/Otklikipriglasheniya-rabotodatelya/operation/put-negotiations-collection-to-next-state);
            * `discard_after_interview` — текст при [отказе после приглашения соискателя на интервью](#tag/Otklikipriglasheniya-rabotodatelya/operation/put-negotiations-collection-to-next-state).

            Список шаблонов может быть расширен
          required: true
          schema:
            type: string
        - name: topic_id
          in: query
          description: Идентификатор существующего отклика/приглашения. Не может передаваться одновременно с другими параметрами
          schema:
            type: string
        - name: vacancy_id
          in: query
          description: Идентификатор вакансии для приглашения. Передается только вместе с параметром `resume_id`
          schema:
            type: string
        - name: resume_id
          in: query
          description: Идентификатор резюме для приглашения на вакансию. Передается только вместе с параметром `vacancy_id`
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsNegotiationMessageTemplates'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsNegotiationMessageTemplates'
        '400':
          description: |
            Переданы конфликтующие параметры запроса (`topic_id` одновременно с `resume_id` или `vacancy_id`) или параметры не переданы совсем. Расшифровка возможных ошибок:

            * `topic_id` — 1) указанного отклика/приглашения не существует, либо у текущего пользователя нет к нему доступа; 2) вакансия из отклика/приглашения была заархивирована; 3) резюме из отклика/приглашения было скрыто/удалено;
            * `resume_id` — указанного резюме не существует, либо у текущего пользователя нет к нему доступа;
            * `vacancy_id` — 1) указанной вакансии не существует; 2) вакансия скрыта/заархивирована; 3) у текущего пользователя нет доступа к вакансии
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: 'Ошибка авторизации, либо отсутствует доступ к платному методу'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Запрашиваемый шаблон не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /negotiations/response:
    x-name: /negotiations/response
    get:
      operationId: get-collection-negotiations-list
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Список откликов/приглашений коллекции
      description: |
        Возвращает список откликов/приглашений для заданной коллекции. URL для запроса необходимо брать из поля `collections[].url` [списка коллекций](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations).

        > Вместо `response` необходимо указывать параметр `{collection_name}` — название коллекции. Возможные значения указаны в поле `generated_collections.name` [списка коллекций](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations).

        В ответе будет только основная информация о резюме. Чтобы получить дополнительную информацию, например, контактный телефон, необходимо [запросить полное резюме](#tag/Upravlenie-vakansiyami/operation/get-vacancy).

        Некоторые параметры запроса могут принимать множественные значения: `key=value&key=value`. Если параметр может принимать несколько значений, об этом явно указано в его описании. Неизвестные параметры и параметры с ошибкой в названии игнорируются.

        > Коллекция `phone_calls` принимает только параметры `vacancy_id`, `order_by`, `page` и `per_page`
      parameters:
        - name: vacancy_id
          in: query
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - name: order_by
          in: query
          description: |
            Тип сортировки. Возможные значения указаны в поле `order_types` [списка коллекций](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations)
          required: false
          schema:
            type: string
        - name: page
          in: query
          description: |
            Порядковый номер страницы в выдаче. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). По умолчанию нумерация начинается с 0 страницы
          required: false
          schema:
            type: integer
            default: 0
        - name: per_page
          in: query
          description: |
            Количество элементов на странице выдачи. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). Максимальное значение — `50`
          required: false
          schema:
            type: integer
            default: 20
        - name: age_from
          in: query
          description: Нижняя граница возраста соискателя в годах
          required: false
          schema:
            type: string
        - name: age_to
          in: query
          description: Верхняя граница возраста соискателя в годах
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: |
            Регион. Возможные значения указаны в [справочнике регионов](#tag/Obshie-spravochniki/operation/get-areas). Можно указать несколько значений.

            По умолчанию выбираются резюме, в которых соискатели живут в указанных регионах или готовы в них переехать. Поменять это поведение поиска можно, указав параметр `relocation`
          required: false
          schema:
            type: string
        - name: citizenship
          in: query
          description: |
            Страна гражданства соискателя. Возможные значения перечислены в [справочнике стран](#tag/Obshie-spravochniki/operation/get-countries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Возможные значения перечислены в поле `currency.code` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: driver_license_types
          in: query
          description: |
            Категории водительских прав соискателя. Возможные значения перечислены в поле `driver_license_types` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: educational_institution
          in: query
          description: |
            Учебные заведения соискателя. В качестве параметров используются [подсказки по названиям университетов](#tag/Podskazki/operation/get-educational-institutions-suggests). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: education_level
          in: query
          description: |
            Уровень образования. Возможные значения перечислены в поле `education_level` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Если параметр не указан, поиск ведется без ограничений на уровень образования
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Возможные значения перечислены в поле `experience` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: gender
          in: query
          description: |
            Пол соискателя. Возможные значения перечислены в поле `gender` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries).

            По умолчанию вне зависимости от значения параметра будут найдены резюме, в которых пол не указан, исключить из поисковой выдачи такие резюме можно с помощью параметра `label=only_with_gender`
          required: false
          schema:
            type: string
        - name: language
          in: query
          description: |
            Знание языка. Можно указать несколько значений. Задается в формате `language.level`, где:

            * `language` — значение из [справочника языков](#tag/Obshie-spravochniki/operation/get-languages);
            * `language_level` — значение одноименного поля [справочника полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: relocation
          in: query
          description: |
            Готовность к переезду. Возможные значения указаны в поле `resume_search_relocation` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Необходимо указывать вместе с параметром `area`
          required: false
          schema:
            type: string
        - name: salary_from
          in: query
          description: Нижняя граница желаемой заработной платы (ЗП)
          required: false
          schema:
            type: number
        - name: salary_to
          in: query
          description: Верхняя граница желаемой заработной платы (ЗП)
          required: false
          schema:
            type: number
        - name: search_radius_meters
          in: query
          description: Расстояние до кандидата (в метрах)
          required: false
          schema:
            type: number
        - name: search_text
          in: query
          description: Поисковая строка
          required: false
          schema:
            type: string
        - name: show_only_new_responses
          in: query
          description: |
            Показывать только непросмотренные отклики коллекции «Все неразобранные» (`/response`)
          required: false
          schema:
            type: boolean
        - name: show_only_with_vehicle
          in: query
          description: Показывать соискателей с личным автомобилем
          required: false
          schema:
            type: boolean
        - name: show_only_new
          in: query
          description: |
            Показывать только отклики, в которых есть непрочитанные сообщения для всех коллекций, кроме «Все неразобранные» (`/response`)
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsCollectionNegotiationsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsCollectionNegotiations'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем или не имеет доступа к методу
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationCommonAndPaymentMethodError'
        '404':
          description: Запрашиваемая вакансия не существует или недоступна для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/negotiations/{nid}/test/solution':
    x-name: '/negotiations/{nid}/test/solution'
    get:
      operationId: get-negotiation-test-results
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: 'Получить результаты тестов, прикрепленных к вакансии'
      description: Запрос возвращает информацию о пройденных тестах откликнувшегося соискателя
      parameters:
        - name: nid
          in: path
          description: Идентификатор отклика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsNegotiationTestResultsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsNegotiationTestResults'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный отклик/приглашение не найден или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/negotiations/{nid}/messages/{mid}':
    x-name: '/negotiations/{nid}/messages/{mid}'
    put:
      operationId: edit-negotiation-message
      tags:
        - Переписка (отклики/приглашения) для соискателя
      summary: Редактирование сообщения в отклике
      description: |
        На данный момент доступно редактирование только сообщения при отклике. 

        Текст сообщения можно редактировать после отправки при соблюдении следующих условий:
        - сообщение еще не прочитано другой стороной;
        - вакансия, на которую отправлялся отклик, должна быть активна (не в архиве); 
        - резюме из отклика не должно быть скрыто или удалено. 

        Условия могут измениться.

        У каждого сообщения в [списке сообщений в отклике](https://github.com/hhru/api/blob/master/docs/negotiations.md#%D0%BF%D1%80%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80-%D1%81%D0%BF%D0%B8%D1%81%D0%BA%D0%B0-%D1%81%D0%BE%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D0%B9-%D0%B2-%D0%BE%D1%82%D0%BA%D0%BB%D0%B8%D0%BA%D0%B5) в поле `editable` указана возможность редактирования
      parameters:
        - name: nid
          in: path
          description: Идентификатор отклика
          required: true
          schema:
            type: string
        - name: mid
          in: path
          description: Идентификатор сообщения в отклике
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Выбранное сообщение не может быть отредактировано
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsNegotiationEditMessageForbiddenErrors'
        '404':
          description: Указанный отклик или сообщение не были найдены
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /negotiations/read:
    x-name: /negotiations/read
    post:
      operationId: post-negotiations-topics-read
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Отметить отклики прочитанными
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                topic_id:
                  description: Идентификаторы откликов
                  type: string
                  maximum: 50
              required:
                - topic_id
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Топик не существует или недоступен для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/negotiations/active/{nid}':
    x-name: '/negotiations/active/{nid}'
    delete:
      operationId: hide-active-response
      tags:
        - Переписка (отклики/приглашения) для соискателя
      summary: Скрыть отклик
      parameters:
        - name: nid
          in: path
          description: Идентификатор отклика
          required: true
          schema:
            type: string
        - name: with_decline_message
          in: query
          description: |
            Должно ли быть отправлено работодателю сообщение об отказе, по умолчанию `false`. Возможность отправить сообщение об отказе определяется полем `decline_allowed` получаемым при запросе [списка откликов или одного отклика](https://github.com/hhru/api/blob/e2a0ac4e174a6b56272f78348c05958f5db1b392/docs/negotiations.md#get_negotiation)
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Невозможно отправить сообщение об отказе
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsNegotiationHideResponseForbiddenErrors'
        '404':
          description: Отклик не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
        '425':
          description: Чат отклика еще не готов
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsNegotiationHideResponseTooEarlyErrors'
  '/negotiations/{nid}':
    x-name: '/negotiations/{nid}'
    get:
      operationId: get-negotiation-item
      tags:
        - Переписка (отклики/приглашения) для соискателя
        - Отклики/приглашения работодателя
      summary: Просмотр отклика/приглашения
      description: |
        Запрос возвращает информацию об отклике/приглашении по его ID.

        Работодатель может получить URL для запроса из [списка откликов/приглашений](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#negotiations-list) (поле `items[].url`).

        > !! Обратите внимание, что методы для работы с сообщениями в рамках отклика/приглашения от имени [соискателя](#tag/Perepiska-(otklikipriglasheniya)-dlya-soiskatelya/operation/get-negotiation-messages) и [менеджера работодателя](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#get-messages) устарели, и новые возможности [чатов](https://feedback.hh.ru/knowledge-base/article/1290) в них не будут поддерживаться
      parameters:
        - name: nid
          in: path
          description: Идентификатор отклика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Отклик/приглашение получено
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsNegotiationGetResponse'
              examples:
                Пример ответа (соискатель):
                  $ref: '#/components/examples/NegotiationsNegotiationItem'
                Пример ответа (работодатель):
                  $ref: '#/components/examples/NegotiationsEmployerNegotiationItem'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный отклик/приглашение не найден или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsNegotiationNegotiationsNotFoundErrors'
    put:
      operationId: put-negotiations-collection-to-next-state
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Действия по откликам/приглашениям
      description: |
        Работодатель может изменять состояние (state) отклика для соискателя, чтобы повысить качество обратной связи и упростить работу со статистикой откликов.

        Если работодатель, используя данный метод, отправляет соискателю сообщение об изменении состояния отклика/приглашения (поле `message` в теле запроса), это приведет также к изменению соискательского состояния отклика/приглашения.

        Обязательность аргументов в теле запроса отличается для разных откликов/приглашений. Проверить, является ли аргумент обязательным можно в поле `actions.arguments`, которое возвращается для каждого отклика в [списке откликов/приглашений](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#действия-по-откликуприглашению-actions)
      parameters:
        - name: nid
          in: path
          description: 'Идентификатор [коллекции](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-negotiations) топиков, в которую будет перенесено состояние отклика'
          required: true
          schema:
            type: string
            example: discard
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                topic_id:
                  description: Идентификаторы откликов
                  type: string
                  maximum: 50
                address_id:
                  description: 'Идентификатор [адреса](https://api.hh.ru/openapi/redoc#tag/Adresa-rabotodatelya), который будет указан в приглашении'
                  type: string
                message:
                  description: 'Сообщение, которое будет отправлено соискателю на электронную почту. Используйте [шаблоны](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-mail-templates) для получения текстов'
                  type: string
                send_sms:
                  description: 'Если установлено `true`, соискателю будет отправлено SMS-уведомление о приглашении. Обратите внимание, что в SMS-сообщении используется стандартный текст, изменить его нельзя'
                  type: boolean
                  default: false
              required:
                - topic_id
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Топик не существует или недоступен для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/negotiations_statistics':
    x-name: '/employers/{employer_id}/negotiations_statistics'
    get:
      operationId: get-negotiations-statistics-employer
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Статистика откликов для компании
      description: |
        Запрос выводит статистику по работе с откликами для вакансий компании за период (30 дней).

        Дополнительно рассчитывается [индекс вежливости](https://hh.ru/article/23734) компании по всем вакансиям
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
          example: '1455'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsNegotiationsStatisticsEmployerResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsNegotiationsStatisticsEmployer'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Запрашиваемый работодатель не существует или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/negotiations/{nid}/messages':
    x-name: '/negotiations/{nid}/messages'
    post:
      operationId: send-negotiation-message
      tags:
        - Переписка (отклики/приглашения) для соискателя
        - Отклики/приглашения работодателя
      summary: Отправка нового сообщения
      description: |
        Запрос отправляет новое сообщение в рамках переписки.

        Отправить новое сообщение можно, если:

        * Работодатель пригласил соискателя на вакансию.
        * Соискатель оставил отклик на вакансию.

        Если вакансия была отправлена в архив или соискатель удалил резюме, переписка будет недоступна. Работодатель также может вручную отключить переписку для вакансии.

        ‼️ Обратите внимание, что методы для работы с сообщениями в рамках отклика/приглашения от имени [соискателя](#tag/Perepiska-(otklikipriglasheniya)-dlya-soiskatelya/operation/get-negotiation-messages) и 
          [менеджера работодателя](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md#get-messages) устарели, и новые возможности [чатов](https://feedback.hh.ru/knowledge-base/article/1290) в них не будут поддерживаться.
          В связи с этим переписка может некорректно отображаться
      parameters:
        - name: nid
          in: path
          description: Идентификатор отклика/приглашения
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                message:
                  description: Сообщение отклика/приглашения
                  type: string
      responses:
        '201':
          description: Сообщение отправлено
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsMessageSent'
              examples:
                Пример ответа (соискатель):
                  $ref: '#/components/examples/NegotiationsMessageSent'
            text/html:
              schema:
                type: string
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
        '403':
          description: Не удалось отправить сообщение
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ErrorsVacancyApplyForbiddenErrors'
                  - $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный отклик/приглашение не найден или у текущего пользователя нет доступа
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsNegotiationNegotiationsNotFoundErrors'
    get:
      operationId: get-negotiation-messages
      tags:
        - Переписка (отклики/приглашения) для соискателя
      summary: Просмотр списка сообщений в отклике
      parameters:
        - name: nid
          in: path
          description: Идентификатор отклика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Сообщение получено
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NegotiationsMessagesGetResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/NegotiationsMessageGet'
  '/vacancies/drafts/{draft_id}':
    x-name: '/vacancies/drafts/{draft_id}'
    get:
      operationId: get-vacancy-draft
      tags:
        - Черновики вакансий
      summary: Получение черновика вакансии
      parameters:
        - name: draft_id
          in: path
          description: Идентификатор черновика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ содержит информацию по созданному черновику и дополнительную информацию по полям
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacancyDraftVacancyDraftFull'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacancyDraftVacancyDraftFull'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Черновик не найден или пользователь не имеет прав на просмотр указанного черновика
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    put:
      operationId: change-vacancy-draft
      tags:
        - Черновики вакансий
      summary: Изменение черновика вакансии
      parameters:
        - name: draft_id
          in: path
          description: Идентификатор черновика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VacancyDraftVacancyDraftEdit'
            examples:
              Пример запроса:
                $ref: '#/components/examples/VacancyDraftVacancyDraftCreate'
      responses:
        '200':
          description: Успешный ответ содержит информацию по измененому черновику и дополнительную информацию по полям
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacancyDraftDraftResponseSchema'
        '400':
          description: Переданный формат не json
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
        '403':
          description: Запрос выполнен не с авторизацией работодателя или черновик не был создан вами
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Черновик не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: delete-vacancy-draft
      tags:
        - Черновики вакансий
      summary: Удаление черновика вакансии
      parameters:
        - name: draft_id
          in: path
          description: Идентификатор черновика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          description: 'Успешное выполнение запроса, черновик удалён'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Черновик не найден или у пользователя нет прав на удаление данного черновика
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/drafts/{draft_id}/publish':
    x-name: '/vacancies/drafts/{draft_id}/publish'
    post:
      operationId: publish-vacancy-from-draft
      tags:
        - Черновики вакансий
      summary: Публикация вакансии на основе черновика
      parameters:
        - name: draft_id
          in: path
          description: Идентификатор черновика вакансии
          required: true
          schema:
            type: string
          example: '1110031'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '201':
          description: Массив идентификаторов опубликованных вакансий
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacancyDraftVacanciesDraftResponse'
        '400':
          description: Ошибки в полях при добавлении вакансии
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsVacancyErrors'
        '403':
          description: Запрос выполнен не с авторизацией работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Черновик не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/vacancies/drafts/{draft_id}/duplicates':
    x-name: '/vacancies/drafts/{draft_id}/duplicates'
    get:
      operationId: search-for-vacancy-draft-duplicates
      tags:
        - Черновики вакансий
      summary: Проверка наличия дубликатов вакансии
      parameters:
        - name: draft_id
          in: path
          description: Идентификатор черновика вакансии
          required: true
          schema:
            type: string
          example: '12358'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Информация про найденные дубликаты вакансии
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacancyDuplicates'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacancyDuplicates'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Черновик не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /vacancies/drafts:
    x-name: /vacancies/drafts
    post:
      operationId: create-vacancy-draft
      tags:
        - Черновики вакансий
      summary: Создание черновика вакансии
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VacancyDraftVacancyDraftCreate'
            examples:
              Пример запроса:
                $ref: '#/components/examples/VacancyDraftVacancyDraftCreate'
      responses:
        '201':
          description: Успешный ответ содержит информацию по созданному черновику и дополнительную информацию по полям
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacancyDraftDraftResponseSchema'
        '400':
          description: Переданный формат не json
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
        '403':
          description: Запрос выполнен не с авторизацией работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '429':
          description: Превышено допустимое количество черновиков
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsDraftError'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
    get:
      operationId: get-vacancy-draft-list
      tags:
        - Черновики вакансий
      summary: Получение списка черновиков вакансий
      parameters:
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию - 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию - 20, максимальное значение - 50)'
          required: false
          schema:
            type: number
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VacancyDraftVacancyDraftItems'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/VacancyDraftVacancyDraftItems'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  /vacancies/auto_publication:
    x-name: /vacancies/auto_publication
    delete:
      operationId: disable-automatic-vacancy-publication
      tags:
        - Черновики вакансий
      summary: Отмена автопубликации вакансии
      parameters:
        - name: draft_id
          in: query
          description: Идентификатор черновика
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          description: 'Успешное выполнение запроса, автопубликация произведена не будет'
        '400':
          description: Не передан draft_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Черновик не найден или у пользователя нет прав на удаление данного расписания
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/webhook/subscriptions/{subscription_id}':
    x-name: '/webhook/subscriptions/{subscription_id}'
    put:
      operationId: change-webhook-subscription
      tags:
        - Webhook API
      summary: Изменить подписку на уведомления
      parameters:
        - name: subscription_id
          in: path
          description: Идентификатор подписки
          required: true
          schema:
            type: string
          example: '1455'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      description: |
        Обновить можно как каждое поле по отдельности (в таком случае нужно отправить только обновляемое поле), так и несколько полей одновременно. Для обновления `actions` нужно передать полный список типов событий, по которым будут формироваться уведомления. Переданные типы событий не добавляются к типам событий, на которые пользователь уже подписан.
        Пустой список `actions` передать нельзя
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookSubscriptionUpdate'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Ошибка параметров запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
        '403':
          description: Запрос выполнен не с авторизацией работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Подписка не найдена или недоступна текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: cancel-webhook-subscription
      tags:
        - Webhook API
      summary: Удалить подписку на уведомление
      parameters:
        - name: subscription_id
          in: path
          description: Идентификатор подписки
          required: true
          schema:
            type: string
          example: '1455'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Запрос выполнен не с авторизацией работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Подписка не найдена или недоступна текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /webhook/subscriptions:
    x-name: /webhook/subscriptions
    post:
      operationId: post-webhook-subscription
      tags:
        - Webhook API
      summary: Подписаться на уведомления
      description: |
        В рамках одного приложения пользователь может получать уведомления только на 1 url:  
        нельзя подписаться разными действиями на разные урлы.
        После наступления события будет отправлен POST-запрос на указанный URL c json телом (**см. раздел "Callbacks"**). 

        В ответ на POST-запрос ожидается ответ с кодом `2хх Success`, если сообщение принято, или `409 Conflict`, если пришел дубликат. 
        Для определения дубликатов нужно использовать id из запроса - уникальный идентификатор для пары "пользователь + приложение" в рамках одного типа события в подписке. 
        Дубликаты возможны, если мы не получили ответ из-за проблем с сетью, или не получили ожидаемый ответ.

        Если в рамках одной подписки ожидаемые ответы не поступают долгое время, 
        на почту разработчика приложения будет отправлено уведомительное письмо, подписка автоматически деактивируется, а отправки прекращаются. 

        При удалении приложения владельцем или отзыве пользователем доступа у приложения все подписки на уведомления удаляются. 
        После восстановления доступа необходимо оформить новую подписку. 

        Вебхуки не являются средствами гарантированной доставки. Мы отправляем все сообщения, но не гарантируем, что адресат их получит
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookSubscriptionCreate'
      responses:
        '201':
          $ref: '#/components/responses/SuccessCreated'
        '400':
          description: Ошибка параметров запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookBadDataError'
        '403':
          description: Запрос не от работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      callbacks:
        onData:
          /url_used_for_subscription:
            post:
              requestBody:
                description: Отправленный объект
                content:
                  application/json:
                    schema:
                      oneOf:
                        - $ref: '#/components/schemas/WebhookSendObjectBaseUser'
              responses:
                '409':
                  description: В ответ на наше исходящее сообщение код 2** или 409 принимается за успех
                2XX:
                  description: В ответ на наше исходящее сообщение код 2** или 409 принимается за успех
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
    get:
      operationId: get-webhook-subscriptions
      tags:
        - Webhook API
      summary: 'Получить список уведомлений, на которые подписан пользователь'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSubscriptionsOutput'
        '403':
          description: Запрос выполнен не с авторизацией работодателя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/employers/{employer_id}/tests':
    x-name: '/employers/{employer_id}/tests'
    get:
      operationId: get-tests-dictionary
      tags:
        - Информация о работодателе
        - Информация о работодателе на уровне работодателя
      summary: Справочник тестов работодателя
      description: Возвращает список сохраненных тестов работодателя
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployerDictionariesTestsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployerDictionariesTests'
        '403':
          description: Ошибка авторизации. Пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Работодатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/vacancy_areas/active':
    x-name: '/employers/{employer_id}/vacancy_areas/active'
    get:
      operationId: get-employer-vacancy-areas
      tags:
        - Информация о работодателе
      summary: 'Список регионов, в которых есть активные вакансии'
      description: |
        Возвращает список регионов, в которых на данный момент есть активные вакансии от указанного работодателя.

        Значения в справочнике могут поменяться в любой момент
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployersEmployerVacancyAreasResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployersEmployerVacancyAreas'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Пользователь не имеет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Работодатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}':
    x-name: '/employers/{employer_id}'
    get:
      operationId: get-employer-info
      tags:
        - Работодатель
      summary: Информация о работодателе
      description: Возвращает данные о работодателе со ссылкой на выдачу вакансий этого работодателя
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно получить в [списке работодателей](#tag/Rabotodatel/operation/search-employer)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployersEmployerInfo'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployersEmployerInfoExample'
        '404':
          description: Работодатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/blacklisted/{employer_id}':
    x-name: '/employers/blacklisted/{employer_id}'
    put:
      operationId: add-employer-to-blacklisted
      tags:
        - Скрытые работодатели
      summary: Добавление работодателя в список скрытых
      description: 'Добавляет указанного работодателя в [список скрытых работодателей](#tag/Skrytye-vakansii/operation/get-blacklisted-vacancies)'
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Превышен лимит на количество элементов в списке
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerBlacklistedErrors'
        '403':
          description: Текущий пользователь не является соискателем или не имеет прав на добавление работодателя в скрытые
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Работодатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerBlacklistedNotFoundErrors'
    delete:
      operationId: delete-employer-from-blacklisted
      tags:
        - Скрытые работодатели
      summary: Удаление работодателя из списка скрытых
      description: 'Удаляет указанного работодателя из [списка скрытых работодателей](#tag/Skrytye-vakansii/operation/get-blacklisted-vacancies)'
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Работодатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsEmployerBlacklistedNotFoundErrors'
  /employers:
    x-name: /employers
    get:
      operationId: search-employer
      tags:
        - Работодатель
      summary: Поиск работодателя
      description: 'При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше `5000`. Например, возможен запрос `per_page=10&page=499` (выдача с `4991` по `5000` работодателя), но запрос с `per_page=10&page=500` вернёт ошибку (выдача с `5001` до `5010` работодателя)'
      parameters:
        - name: text
          in: query
          description: Текст для поиска. Переданное значение ищется в названии и описании работодателя
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: 'Идентификатор региона работодателя, множественный параметр. Идентификаторы регионов можно узнать в [справочнике регионов](#tag/Obshie-spravochniki/operation/get-areas)'
          required: false
          schema:
            type: string
        - name: type
          in: query
          description: 'Тип работодателя, множественный параметр. Разрешенные значения перечислены в [справочнике](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `employer_type`'
          required: false
          schema:
            type: string
        - name: only_with_vacancies
          in: query
          description: Возвращать только работодателей у которых есть в данный момент открытые вакансии (`true`) или же всех (`false`). По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: sort_by
          in: query
          description: Сортировка по имени (`by_name`) или по количеству открытых вакансий (`by_vacancies_open`). По умолчанию — `by_name`
          required: false
          schema:
            type: string
            enum:
              - by_name
              - by_vacancies_open
        - name: page
          in: query
          description: 'Номер страницы с работодателями (считается от `0`, по умолчанию — `0`)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов на страницу (по умолчанию — 20, максимум — 100 )'
          required: false
          schema:
            type: number
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployersEmployersList'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployersEmployersExample'
        '400':
          description: Ошибка в параметрах запроса. В теле ответа может содержаться название параметра с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
  '/employers/{employer_id}/departments':
    x-name: '/employers/{employer_id}/departments'
    get:
      operationId: get-employer-departments
      tags:
        - Информация о работодателе
        - Информация о работодателе на уровне работодателя
      summary: Справочник департаментов работодателя
      description: |
        Возвращает список департаментов работодателя.

        Значения в справочнике могут поменяться в любой момент
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно получить в [списке работодателей](#tag/Rabotodatel/operation/search-employer)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployersEmployerDepartmentsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployersEmployerDepartments'
        '403':
          description: Пользователь не имеет прав на просмотр информации
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Работодатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/vacancy_branded_templates':
    x-name: '/employers/{employer_id}/vacancy_branded_templates'
    get:
      operationId: get-vacancy-branded-templates-list
      tags:
        - Информация о работодателе
        - Информация о работодателе на уровне работодателя
      summary: Список доступных бренд шаблонов вакансий работодателя
      description: |
        Внимание! Значения в справочниках могут поменяться в любой момент. Не нужно завязываться на них.

        Использование брендированных шаблонов вакансии доступно работодателям, оплатившим и активировавшим соответствующую 
        услугу. Подробнее на сайте [hh.ru](https://hh.ru/article/brand)
      parameters:
        - name: employer_id
          in: path
          description: Идентификатор работодателя
          required: true
          schema:
            type: string
          example: '12345'
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployersVacancyBrandedTemplatesList'
        '403':
          description: Если текущий пользователь не авторизован или не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Если получение шаблонов по данной компании недоступно или компания не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /employers/blacklisted:
    x-name: /employers/blacklisted
    get:
      operationId: get-blacklisted-employers
      tags:
        - Скрытые работодатели
      summary: Список скрытых работодателей
      description: 'Возвращает [подмножество работодателей](#tag/Rabotodatel/operation/search-employer), скрытых пользователем, а также один дополнительный параметр'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmployersEmployersBlacklistedResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/EmployersEmployersBlacklisted'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /districts:
    x-name: /districts
    get:
      operationId: get-all-districts
      tags:
        - Общие справочники
      summary: Список районов во всех городах
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DictionariesDistrictsResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/DistrictsDistricts'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/salary_statistics/paid/salary_evaluation/{area_id}':
    x-name: '/salary_statistics/paid/salary_evaluation/{area_id}'
    get:
      operationId: get-salary-evaluation
      tags:
        - Банк данных о зарплатах
        - Банк данных зарплатной статистики
      summary: Оценка заработной платы без прогноза
      description: |
        Возвращает статистику зарплат в соответствии с указанными параметрами запроса. Пользователь должен иметь доступ к платным отчетам [банка зарплат](https://salary.hh.ru/).

        Как это работает:

        * Основным источником данных для статистики служит информация о зарплатах, предоставляемая участниками проекта [Банк данных заработных плат](https://salary.hh.ru/promo).
        * Все анкеты участников проходят проверку модераторами. Если заявленная участником зарплата сильно отличается от средней по рынку, она не будет включена в банк данных.
        * Если в банке недостаточно данных для построения статистики по запросу, сервис использует следующие приемы:

            * Объединяет сведения из нескольких отраслей, если недостаточно данных по запрошенной отрасли.
            * Объединяет сведения из нескольких близких специализаций, если недостаточно данных по запрошенной специализации.
            * Объединяет сведения из нескольких городов, если недостаточно данных по запрошенному городу.
            * Использует сведения по запрошенным специализациям из другого региона, если недостаточно данных по запрошенному региону. При этом вычисляется поправочный коэффициент, который отражает разницу в зарплатах между регионами.

            Если эти приемы не позволяют получить достаточную выборку, сервис может использовать информацию о зарплатах из вакансий и резюме. Такая информация не проходит предварительную модерацию и считается менее надежной, поэтому используется только в крайнем случае. Чтобы использовать эту функцию, передайте в запросе параметр `extend_sources=true`
      parameters:
        - name: area_id
          in: path
          description: |
            Код [региона](#tag/Spravochniki-Banka-dannyh-zarabotnyh-plat/operation/get-salary-salary-areas), по которому будет построена выборка для формирования отчета
          required: true
          schema:
            type: string
        - name: exclude_area
          in: query
          description: |
            Коды [регионов](#tag/Spravochniki-Banka-dannyh-zarabotnyh-plat/operation/get-salary-salary-areas), которые будут исключены из выборки для формирования отчета. Параметр позволяет получить оценку на региональном рынке за исключением определенных городов или областей
          required: false
          schema:
            type: string
        - name: employee_level
          in: query
          description: |
            Справочник [уровни компетенций](#tag/Spravochniki-Banka-dannyh-zarabotnyh-plat/operation/get-salary-employee-levels), которые будут включены в выборку для формирования отчета
          required: false
          schema:
            type: string
        - name: industry
          in: query
          description: |
            Справочник [Коды отраслей](#tag/Spravochniki-Banka-dannyh-zarabotnyh-plat/operation/get-salary-industries), по которым будет построена выборка для формирования отчета
          required: false
          schema:
            type: string
        - name: speciality
          in: query
          description: |
            Справочник [Коды профобластей и специализаций](#tag/Spravochniki-Banka-dannyh-zarabotnyh-plat/operation/get-salary-professional-areas), которые будут включены в выборку для формирования отчета
          required: false
          schema:
            type: string
        - name: extend_sources
          in: query
          description: |
            Использовать ли данные из резюме и вакансий, если по указанным параметрам не нашлось данных в банке зарплат. По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: position_name
          in: query
          description: |
            Наименование должности. Если не переданы параметры `speciality` или `employee_level`, сервис самостоятельно определит возможные специализации и уровень специалиста по указанной должности и отрасли, и построит отчет по ним
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SalaryStatisticsEvaluationResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SalaryStatisticsEvaluation'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationBadParameters'
        '403':
          description: Пользователь не авторизован или не имеет доступа к платным отчетам банка зарплат
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Для указанных параметров нет данных
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /metro:
    x-name: /metro
    get:
      operationId: get-metro-stations
      tags:
        - Общие справочники
      summary: Список станций метро во всех городах
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetroMetroResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/MetroMetro'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/metro/{city_id}':
    x-name: '/metro/{city_id}'
    get:
      operationId: get-metro-stations-in-city
      tags:
        - Общие справочники
      summary: Список станций метро в указанном городе
      parameters:
        - name: city_id
          in: path
          description: Идентификатор города
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetroCityMetroItem'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/MetroCityMetro'
        '404':
          description: Город с указанным идентификатором не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/saved_searches/resumes/{saved_search_id}/managers/{manager_id}':
    x-name: '/saved_searches/resumes/{saved_search_id}/managers/{manager_id}'
    put:
      operationId: move-saved-resume-search
      tags:
        - Сохраненные поиски резюме
      summary: Передача сохраненного поиска резюме другому менеджеру
      parameters:
        - name: saved_search_id
          in: path
          description: 'Идентификатор из [списка сохраненных поисков](#tag/Sohranennye-poiski-rezyume/operation/get-saved-resume-searches)'
          required: true
          schema:
            type: string
        - name: manager_id
          in: path
          description: 'Идентификатор менеджера, которому надо передать автопоиск ([список менеджеров компании](#tag/Menedzhery-rabotodatelya/operation/get-employer-managers))'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsSavedSearchForbiddenErrors'
        '404':
          $ref: '#/components/responses/ErrorSavedSearchNotFound'
  '/vacancies/{vacancy_id}/resumes_by_status':
    x-name: '/vacancies/{vacancy_id}/resumes_by_status'
    get:
      operationId: get-resumes-by-status
      tags:
        - Резюме. Просмотр информации
      summary: 'Резюме, сгруппированные по возможности отклика на данную вакансию'
      description: 'Возвращает резюме пользователя, сгруппированные в четыре списка в зависимости от возможности отклика на указанную вакансию'
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesByStatusResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesByStatus'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/resumes/{resume_id}/status':
    x-name: '/resumes/{resume_id}/status'
    get:
      operationId: get-resume-status
      tags:
        - Резюме. Просмотр информации
      summary: Статус резюме и готовность к публикации
      description: |
        Возвращает информацию о статусе резюме, готовности резюме к публикации, а также замечания модератора по выбранному резюме
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumeStatusReadiness'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumeStatusReadiness'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/negotiations_history':
    x-name: '/resumes/{resume_id}/negotiations_history'
    get:
      operationId: get-resume-negotiations-history
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: История откликов/приглашений по резюме
      description: |
        Возвращает последние действия с указанным резюме, ограниченные 30-ю вакансиями данного работодателя, и 10-ю изменениями состояний откликов/приглашений по каждой из этих вакансий.

        Метод требует наличия [платного доступа для работодателя](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access)
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesResumeNegotiationsHistoryResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesResumeNegotiationsHistory'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/saved_searches/resumes/{id}':
    x-name: '/saved_searches/resumes/{id}'
    get:
      operationId: get-saved-resume-search
      tags:
        - Сохраненные поиски резюме
      summary: Получение единичного сохраненного поиска резюме
      description: |
        Внимание: счетчик `new_items.count` обновляется раз в час. Из-за этого реальное количество новых найденных резюме 
        может расходиться со значением этого счетчика
      parameters:
        - name: id
          in: path
          description: 'Идентификатор сохраненного поиска из [списка](#tag/Sohranennye-poiski-rezyume/operation/get-saved-resume-searches)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavedSearchesSavedSearchItem'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SavedSearchesSavedSearchResumeItem'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Сохраненный поиск не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    put:
      operationId: update-saved-resume-search
      tags:
        - Сохраненные поиски резюме
      summary: Обновление сохраненного поиска резюме
      description: У сохраненного поиска можно изменить имя (`name`) и статус подписки (`subscription`). В одном запросе можно передать только один из параметров
      parameters:
        - name: id
          in: path
          description: Идентификатор сохраненного поиска
          required: true
          schema:
            type: string
        - name: name
          in: query
          description: Новое имя сохраненного поиска
          required: false
          schema:
            type: string
        - name: subscription
          in: query
          description: Статус подписки
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          $ref: '#/components/responses/ErrorBadArgument'
        '403':
          $ref: '#/components/responses/ErrorBadAuthorization'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '409':
          $ref: '#/components/responses/ErrorBothChangedConflict'
    delete:
      operationId: delete-saved-resume-search
      tags:
        - Сохраненные поиски резюме
      summary: Удаление сохраненного поиска резюме
      parameters:
        - name: id
          in: path
          description: Идентификатор сохраненного поиска
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          $ref: '#/components/responses/ErrorBadAuthorization'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
  /resumes:
    x-name: /resumes
    post:
      operationId: create-resume
      tags:
        - Резюме. Создание и обновление
      summary: Создание резюме
      description: |
        Создает резюме с полями, переданными в теле запроса.

        Если передан параметр `source_resume_id`, новое резюме будет склонировано из указанного. Склонировать можно только собственное резюме
      parameters:
        - name: source_resume_id
          in: query
          description: Идентификатор исходного резюме для клонирования
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResumeAddResumeRequest'
            examples:
              Пример запроса:
                $ref: '#/components/examples/ResumesCreateResume'
      responses:
        '201':
          description: Успешно создано
          content:
            text/html:
              schema:
                type: string
          headers:
            Location:
              schema:
                type: string
                description: 'Путь к созданному резюме. Пример: `/resumes/123`, где `123` — `id` созданного резюме'
        '400':
          description: Ошибка в параметрах резюме или превышено допустимое количество резюме
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeBadArgTooManyResumesErrors'
        '403':
          description: Ошибка авторизации. Пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Исходное резюме для клонирования не существует или не принадлежит текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    get:
      operationId: search-for-resumes
      tags:
        - Поиск резюме
      summary: Поиск резюме
      description: |
        Возвращает результаты поиска резюме.

        Требуется наличие [платного доступа](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access).

        Некоторые параметры запроса могут принимать множественные значения: `key=value&key=value`. Если параметр может принимать несколько значений, об этом явно указано в его описании. Неизвестные параметры и параметры с ошибкой в названии игнорируются.

        При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше 2000. Например, возможен запрос `per_page=10&page=199` (выдача с 1991 по 2000 резюме), но запрос с `per_page=10&page=200` вернёт ошибку (выдача с 2001 до 2010 резюме)
      parameters:
        - name: text
          in: query
          description: |
            Поисковая фраза. Метод найдет резюме, в которых встречаются все слова заданной фразы.

            Особенности:

            * Можно указать несколько значений. Каждое дополнительное значение уточняет поиск.
            * В качестве поисковой фразы можно использовать [язык поисковых запросов](http://hh.ru/article.xml?articleId=1175).
            * Специально для этого поля предусмотрено [автодополнение по подсказкам](#tag/Podskazki/operation/get-resume-search-keywords-suggests).
            * Для тонкой настройки по фразе можно использовать параметры `text.logic`, `text.field`, `text.period`. При использовании дополнительных `text.*` полей, необходимо указывать весь набор (триаду) параметров
          required: false
          schema:
            type: string
        - name: text.logic
          in: query
          description: 'Описывает, как производится поиск. Возможные значения перечислены в поле `resume_search_logic` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - name: text.field
          in: query
          description: 'Описывает, где должны встречаться слова из поисковой фразы `text`. Можно указать несколько значений через запятую, например `?text.field=education,keywords`. Возможные значения перечислены в поле `resume_search_fields` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - name: text.period
          in: query
          description: |
            Период опыта работы.

            Параметр имеет смысл только при `text.field` равным одному из значений: `experience`, `experience_company`, `experience_position`, `experience_description`, но указывать его необходимо всегда при указании других `text.*`. Если параметр не имеет смысла, то его значение можно оставить пустым
          required: false
          schema:
            type: string
        - name: age_from
          in: query
          description: |
            Нижняя граница возраста соискателя в годах.

            По умолчанию в выдачу добавляются также резюме с неуказанным возрастом. Для выдачи резюме только с указанным возрастом передайте значение `only_with_age` в параметре `label`
          required: false
          schema:
            type: string
        - name: age_to
          in: query
          description: |
            Верхняя граница возраста соискателя в годах.

            По умолчанию в выдачу добавляются также резюме с неуказанным возрастом. Для выдачи резюме только с указанным возрастом передайте значение `only_with_age` в параметре `label`
          required: false
          schema:
            type: string
        - name: area
          in: query
          description: |
            Регион. Возможные значения указаны в [справочнике регионов](https://github.com/hhru/api/blob/master/docs/areas.md). Можно указать несколько значений.

            По умолчанию выбираются резюме, в которых соискатели живут в указанных регионах или готовы в них переехать. Поменять это поведение поиска можно, указав параметр `relocation`
          required: false
          schema:
            type: string
        - name: relocation
          in: query
          description: |
            Готовность к переезду. Возможные значения указаны в поле `resume_search_relocation` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Необходимо указывать вместе с параметром `area`
          required: false
          schema:
            type: string
        - name: period
          in: query
          description: |
            Поиск ведется по резюме, опубликованным за указанный период в днях. Если период не указан, поиск ведется без ограничений по дате публикации
          required: false
          schema:
            type: number
        - name: date_from
          in: query
          description: |
            Дата, от которой нужно начать поиск. Значение указывается в формате [ISO 8601](#date-format) — `YYYY-MM-DD` или с точностью до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Нельзя передавать вместе с параметром `period`
          required: false
          schema:
            type: string
        - name: date_to
          in: query
          description: |
            Дата, до которой нужно искать. Значение указывается в формате [ISO 8601](#date-format) — `YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Можно передавать только в паре с параметром `date_from`. Нельзя передавать вместе с параметром `period`
          required: false
          schema:
            type: string
        - name: education_level
          in: query
          description: |
            Уровень образования. Возможные значения перечислены в поле `education_level` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Если параметр не указан, поиск ведется без ограничений на уровень образования
          required: false
          schema:
            type: string
        - name: employment
          in: query
          description: |
            Тип занятости. Возможные значения перечислены в поле `employment` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Возможные значения перечислены в поле `experience` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: skill
          in: query
          description: |
            Ключевые навыки. Указывается один или несколько идентификаторов ключевых навыков. Значения можно получить из поля `id` в [подсказке по ключевым навыкам](#tag/Podskazki/operation/get-skill-set-suggests)
          required: false
          schema:
            type: string
        - name: gender
          in: query
          description: |
            Пол соискателя. Возможные значения перечислены в поле `gender` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries).

            По умолчанию вне зависимости от значения параметра будут найдены резюме, в которых пол не указан, исключить из поисковой выдачи такие резюме можно с помощью параметра `label=only_with_gender`
          required: false
          schema:
            type: string
        - name: label
          in: query
          description: |
            Дополнительный фильтр. Возможные значения перечислены в поле `resume_search_label` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: language
          in: query
          description: |
            Знание языка. Можно указать несколько значений.

            Возможные значения перечислены в [справочнике языков](#tag/Obshie-spravochniki/operation/get-languages)
          required: false
          schema:
            type: string
        - name: language.level
          in: query
          description: |
            Уровень знания языка. Можно указать несколько значений.

            Возможные значения перечислены в поле `language_level` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: metro
          in: query
          description: |
            Линия, либо станция метро. Можно указать несколько значений.

            Возможные значения перечислены в [справочнике метро](#tag/Obshie-spravochniki/operation/get-metro-stations)
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Возможные значения перечислены в поле `currency.code` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: salary_from
          in: query
          description: |
            Нижняя граница желаемой заработной платы (ЗП).

            По умолчанию в выдачу добавляются также резюме с неуказанной ЗП. Для выдачи резюме только с указанной ЗП передайте параметр `label=only_with_salary`
          required: false
          schema:
            type: number
        - name: salary_to
          in: query
          description: |
            Верхняя граница желаемой заработной платы (ЗП).

            По умолчанию в выдачу добавляются также резюме с неуказанной ЗП. Для выдачи резюме только с указанной ЗП передайте параметр `label=only_with_salary`
          required: false
          schema:
            type: number
        - name: schedule
          in: query
          description: |
            График работы. Возможные значения перечислены в поле `schedule` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: order_by
          in: query
          description: |
            Сортировка списка резюме. Возможные значения перечислены в поле `resume_search_order` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: citizenship
          in: query
          description: |
            Страна гражданства соискателя. Возможные значения перечислены в [справочнике стран](https://github.com/hhru/api/blob/master/docs/areas.md#countries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: work_ticket
          in: query
          description: |
            Страна, в которой у соискателя есть разрешение на работу. Возможные значения перечислены в [справочнике стран](https://github.com/hhru/api/blob/master/docs/areas.md#countries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: educational_institution
          in: query
          description: |
            Учебные заведения соискателя. В качестве параметров используются [подсказки по названиям университетов](#tag/Podskazki/operation/get-educational-institutions-suggests). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: search_in_responses
          in: query
          description: |
            Если `true`, то поиск осуществляется только по резюме, которыми соискатели откликались на вакансии компании текущего пользователя, если `false` — поиск осуществляется по всем резюме. По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: by_text_prefix
          in: query
          description: |
            Если `true`, включается поиск по префиксу. Для каждого параметра `text` будут находиться не только полные совпадения слов, но еще и слова, начинающиеся с `text`. По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: driver_license_types
          in: query
          description: |
            Категории водительских прав соискателя. Возможные значения перечислены в поле `driver_license_types` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: vacancy_id
          in: query
          description: |
            Идентификатор вакансии для поиска похожих резюме. Необходимо передавать идентификатор активной вакансии работодателя или вакансии работодателя в архиве
          required: false
          schema:
            type: string
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию — 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию — 20, максимальное значение — 100)'
          required: false
          schema:
            type: number
        - name: professional_role
          in: query
          description: |
            Профессиональная роль. Элемент справочника [профессиональных ролей](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: folder
          in: query
          description: |
            Один или несколько идентификаторов папок с отобранными резюме. Если данный параметр передан, поиск будет ограничен содержимым указанных папок. Можно передавать идентификаторы нескольких папок, например: `folder=111&folder=222&folder=333`
          required: false
          schema:
            type: string
        - name: include_all_folders
          in: query
          description: |
            Признак, указывающий, нужно ли вести поиск по всем папкам с отобранными резюме.

            Если у менеджера есть доступ к избранным папкам, то поиск проходит по умолчанию в избранных папках. Если передать параметр `false`, то поиск не будет ограничен папками. Если в одном запросе будут переданы параметры `folder` и `include_all_folders`, вернется ошибка `400 Bad Request`
          required: false
          schema:
            type: boolean
        - name: job_search_status
          in: query
          description: |
            Статус поиска работы.

            Возможные значения перечислены в поле `job_search_statuses_employer` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: resume
          in: query
          description: |
            Идентификатор резюме для поиска похожих резюме
          required: false
          schema:
            type: string
        - name: filter_exp_industry
          in: query
          description: |
            Обрабатывается совместно с параметром `filter_exp_period`. Идентификатор отрасли, в которой у соискателя должен присутствовать опыт работы.
            Возможные значения перечислены в [справочнике отраслей](#tag/Obshie-spravochniki/operation/get-industries) (поле id). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: filter_exp_period
          in: query
          description: |
            Период, за который у соискателя должен присутствовать опыт работы в отрасли, указанной в параметре `filter_exp_industry`.

            Возможные значения: 

            * `all_time` - за все время
            * `last_year` - за последний год
            * `last_three_years` - за последние 3 года
            * `last_six_years` - за последние 6 лет.

            По умолчанию равен `all_time`
          required: false
          schema:
            type: string
        - name: with_job_search_status
          in: query
          description: |
            Параметр для просмотра в резюме статуса поиска кандидата
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesSearchForResumesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesSearchForResumes'
        '400':
          description: Ошибки в аргументах или в запросе
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadRequestBadArgumentBadRequestAndBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем или не имеет доступа к методу
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationCommonAndPaymentMethodError'
  /resumes/mine:
    x-name: /resumes/mine
    get:
      operationId: get-mine-resumes
      tags:
        - Резюме. Просмотр информации
      summary: Список резюме авторизованного пользователя
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesMineResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesMineResumes'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/resumes/{resume_id}/publish':
    x-name: '/resumes/{resume_id}/publish'
    post:
      operationId: publish-resume
      tags:
        - Резюме. Публикация
      summary: Публикация резюме
      description: |
        При первой публикации резюме оно становится доступно для использования. При повторной публикации происходит обновление даты резюме.

        Повторная публикация означает обновление даты резюме. Ключ `next_publish_at` у [резюме](#tag/Rezyume.-Prosmotr-informacii/operation/get-mine-resumes) указывает время, когда можно обновить резюме
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Публикация или продление невозможны
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsBadRequestPublishResumeErrors'
        '403':
          description: Пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
        '429':
          description: Обновление резюме еще не доступно
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeTooManyRequestsErrors'
  /resume_conditions:
    x-name: /resume_conditions
    get:
      operationId: get-new-resume-conditions
      tags:
        - Резюме. Условия заполнения полей
      summary: Условия заполнения полей нового резюме
      description: Возвращает список требований для полей при заполнении нового резюме
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesResumeConditions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesResumeConditions'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  '/vacancies/{vacancy_id}/suitable_resumes':
    x-name: '/vacancies/{vacancy_id}/suitable_resumes'
    get:
      operationId: get-suitable-resumes
      tags:
        - Резюме. Просмотр информации
      summary: Список подходящих для отклика резюме
      description: |
        Возвращает список сокращенных представлений резюме соискателя, которыми он может откликнуться на указанную вакансию.

        В качестве альтернативы данному методу можно использовать метод [resumes_by_status](#tag/Rezyume.-Prosmotr-informacii/operation/get-resumes-by-status)
      parameters:
        - name: vacancy_id
          in: path
          description: Идентификатор вакансии
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesSuitableResumesResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesSuitableResumes'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Вакансия не найдена
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/conditions':
    x-name: '/resumes/{resume_id}/conditions'
    get:
      operationId: get-resume-conditions
      tags:
        - Резюме. Условия заполнения полей
      summary: Условия заполнения полей существующего резюме
      description: Возвращает список требований для полей при заполнении указанного резюме
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesResumeConditions'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesResumeConditions'
        '403':
          description: Текущий пользователь не является автором резюме
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/views':
    x-name: '/resumes/{resume_id}/views'
    get:
      operationId: get-resume-view-history
      tags:
        - Резюме. Просмотр информации
      summary: История просмотра резюме
      description: |
        Возвращает историю просмотров резюме.

        Этот запрос обнуляет счетчик новых просмотров (поле `new_views`), который возвращается в запросах на просмотр [конкретного резюме](#tag/Prosmotr-rezyume/operation/get-resume) и [списка резюме](#tag/Rezyume.-Prosmotr-informacii/operation/get-mine-resumes)
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesResumeViewHistoryResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesResumeViewHistory'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}':
    x-name: '/resumes/{resume_id}'
    get:
      operationId: get-resume
      tags:
        - Просмотр резюме
        - Резюме. Просмотр информации
        - Информация о резюме
        - Просмотр резюме на уровне работодателя
      summary: Просмотр резюме
      description: |
        Возвращает информацию об указанном резюме.

        Особенности работы метода при запросе от работодателя:

        * Требуется наличие [платного доступа](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access).
        * При просмотре резюме с контактами действуют [специальные правила](https://github.com/hhru/api/blob/master/docs/payable/resume.md#просмотр-резюме-с-контактами).
        * Если просмотр полных данных по резюме недоступен при текущей авторизации, в некоторых полях вернется `null`, а поле `can_view_full_info` будет иметь значение `false`.
        * Если у работодателя есть отклик/приглашение на это резюме, отклик будет считаться просмотренным
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: with_negotiations_history
          in: query
          description: |
            В случае, если передан данный параметр, в ответе добавится поле negotiations_history.vacancies. 
            Его формат подробно описан в методе [полной истории откликов/приглашений по резюме](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-resume-negotiations-history) и различается лишь тем, 
            что в данном случае список будет ограничен тремя вакансиями данного работодателя и последним изменением состояния отклика/приглашения по каждой из этих вакансий
          required: false
          schema:
            type: boolean
        - name: with_creds
          in: query
          description: 'В случае, если передан данный параметр, в ответе добавится поле creds'
          required: false
          schema:
            type: boolean
        - name: with_job_search_status
          in: query
          description: |
            Параметр для просмотра в резюме статуса поиска кандидата
          required: false
          schema:
            type: boolean
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumeResumeViewResponse'
              examples:
                Пример ответа для соискателя:
                  $ref: '#/components/examples/ResumeResumeViewApplicant'
                Пример ответа для работодателя:
                  $ref: '#/components/examples/ResumeResumeViewEmployer'
        '403':
          description: Требуется авторизация пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
        '429':
          description: Для работодателя превышен лимит просмотров резюме в сутки
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeTooManyRequestsErrors'
    delete:
      operationId: delete-resume
      tags:
        - Резюме. Создание и обновление
      summary: Удаление резюме
      description: Резюме удаляется без возможности восстановления. Все связанные с ним отклики исчезают
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Ошибка авторизации. Пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не найдено или недоступно текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    put:
      operationId: edit-resume
      tags:
        - Резюме. Создание и обновление
      summary: Обновление резюме
      description: |
        Обновляет переданные в теле запроса поля указанного резюме.

        Любой упомянутый в теле запроса массив полностью переопределит существующий. Чтобы добавить к существующему массиву новый элемент, перечислите также в запросе все элементы существующего массива. Так, в приведенном примере запроса к ранее указанному русскому языку добавляется английский.

        Дополнительные правила заполнения резюме:

        * У соискателя не может быть несколько резюме с одинаковым `title`.
        * Специализации должны быть из одной профессиональной области.
        * Город проживания должен быть одним из элементов справочника `/areas`, и у этого элемента не должно быть потомков. Например, нельзя указать город проживания «Россия».
        * Ближайшая станция метро должна находиться в городе проживания.
        * Для специализаций из профессиональной области «Начало карьеры, студенты» (`id=15`) можно не указывать опыт работы и навыки. Для остальных профессиональных областей данные поля должны содержать хотя бы по одной записи
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResumeEditResumeRequest'
            examples:
              Пример запроса:
                $ref: '#/components/examples/ResumesEditResume'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Ошибка в параметрах резюме
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeBadArgumentResumeErrors'
        '403':
          description: Ошибка авторизации. Пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или не принадлежит текущему пользователю
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  /resumes/creation_availability:
    x-name: /resumes/creation_availability
    get:
      operationId: get-resume-creation-availability
      tags:
        - Резюме. Создание и обновление
      summary: Проверка возможности создания резюме
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesCreationAvailability'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesCreationAvailability'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
      parameters:
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
  /saved_searches/resumes:
    x-name: /saved_searches/resumes
    get:
      operationId: get-saved-resume-searches
      tags:
        - Сохраненные поиски резюме
      summary: Список сохраненных поисков резюме
      parameters:
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию - 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию - 5, максимальное значение - 10)'
          required: false
          schema:
            type: number
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavedSearchesSavedSearchResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/SavedSearchesSavedSearchResumes'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
    post:
      operationId: create-saved-resume-search
      tags:
        - Сохраненные поиски резюме
      summary: Создание нового сохраненного поиска резюме
      description: |
        Некоторые параметры принимают множественные значения: `key=value&key=value`.

        При указании параметров пагинации (`page`, `per_page`) работает ограничение: глубина возвращаемых результатов не может быть больше 2000. Например, возможен запрос `per_page=10&page=199` (выдача с 1991 по 2000 вакансию), но запрос с `per_page=10&page=200` вернёт ошибку (выдача с 2001 до 2010 вакансию)
      parameters:
        - name: text
          in: query
          description: |
            Поисковая фраза. Метод найдет резюме, в которых встречаются все слова заданной фразы.

            Особенности:

            * Можно указать несколько значений. Каждое дополнительное значение уточняет поиск.
            * В качестве поисковой фразы можно использовать [язык поисковых запросов](http://hh.ru/article.xml?articleId=1175).
            * Специально для этого поля предусмотрено [автодополнение по подсказкам](#tag/Podskazki/operation/get-resume-search-keywords-suggests).
            * Для тонкой настройки по фразе можно использовать параметры `text.logic`, `text.field`, `text.period`. При использовании дополнительных `text.*` полей, необходимо указывать весь набор (триаду) параметров
          required: false
          schema:
            type: string
        - name: text.logic
          in: query
          description: 'Описывает, как производится поиск. Возможные значения перечислены в поле `resume_search_logic` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - name: text.field
          in: query
          description: 'Описывает, где должны встречаться слова из поисковой фразы `text`. Можно указать несколько значений через запятую, например `?text.field=education,keywords`. Возможные значения перечислены в поле `resume_search_fields` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)'
          required: false
          schema:
            type: string
        - name: text.period
          in: query
          description: |
            Период опыта работы.

            Параметр имеет смысл только при `text.field` равным одному из значений: `experience`, `experience_company`, `experience_position`, `experience_description`, но указывать его необходимо всегда при указании других `text.*`. Если параметр не имеет смысла, то его значение можно оставить пустым
          required: false
          schema:
            type: string
        - name: age_from
          in: query
          description: |
            Нижняя граница возраста соискателя в годах.

            По умолчанию в выдачу добавляются также резюме с неуказанным возрастом. Для выдачи резюме только с указанным возрастом передайте значение `only_with_age` в параметре `label`
          required: false
          schema:
            type: number
        - name: age_to
          in: query
          description: |
            Верхняя граница возраста соискателя в годах.

            По умолчанию в выдачу добавляются также резюме с неуказанным возрастом. Для выдачи резюме только с указанным возрастом передайте значение `only_with_age` в параметре `label`
          required: false
          schema:
            type: number
        - name: area
          in: query
          description: |
            Регион. Возможные значения указаны в [справочнике регионов](#tag/Obshie-spravochniki/operation/get-areas). Можно указать несколько значений.

            По умолчанию выбираются резюме, в которых соискатели живут в указанных регионах или готовы в них переехать. Поменять это поведение поиска можно, указав параметр `relocation`
          required: false
          schema:
            type: string
        - name: relocation
          in: query
          description: |
            Готовность к переезду. Возможные значения указаны в поле `resume_search_relocation` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Необходимо указывать вместе с параметром `area`
          required: false
          schema:
            type: string
        - name: period
          in: query
          description: |
            Поиск ведется по резюме, опубликованным за указанный период в днях. Если период не указан, поиск ведется без ограничений по дате публикации
          required: false
          schema:
            type: number
        - name: date_from
          in: query
          description: |
            Дата, от которой нужно начать поиск. Значение указывается в формате [ISO 8601](#date-format) — `YYYY-MM-DD` или с точностью до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Нельзя передавать вместе с параметром `period`
          required: false
          schema:
            type: string
        - name: date_to
          in: query
          description: |
            Дата, до которой нужно искать. Значение указывается в формате [ISO 8601](#date-format) — `YYYY-MM-DD` или с точность до секунды `YYYY-MM-DDThh:mm:ss±hhmm`. Можно передавать только в паре с параметром `date_from`. Нельзя передавать вместе с параметром `period`
          required: false
          schema:
            type: string
        - name: education_level
          in: query
          description: |
            Уровень образования. Возможные значения перечислены в поле `education_level` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Если параметр не указан, поиск ведется без ограничений на уровень образования
          required: false
          schema:
            type: string
        - name: employment
          in: query
          description: |
            Тип занятости. Возможные значения перечислены в поле `employment` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: experience
          in: query
          description: |
            Опыт работы. Возможные значения перечислены в поле `experience` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: skill
          in: query
          description: |
            Ключевые навыки. Указывается один или несколько идентификаторов ключевых навыков. Значения можно получить из поля `id` в [подсказке по ключевым навыкам](#tag/Podskazki/operation/get-skill-set-suggests)
          required: false
          schema:
            type: string
        - name: gender
          in: query
          description: |
            Пол соискателя. Возможные значения перечислены в поле `gender` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries).

            По умолчанию вне зависимости от значения параметра будут найдены резюме, в которых пол не указан, убрать такие резюме можно с помощью параметра `label=only_with_gender`
          required: false
          schema:
            type: string
        - name: label
          in: query
          description: |
            Дополнительный фильтр. Возможные значения перечислены в поле `resume_search_label` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: language
          in: query
          description: |
            Знание языка. Можно указать несколько значений.

            Возможные значения перечислены в [справочнике языков](#tag/Obshie-spravochniki/operation/get-languages)
          required: false
          schema:
            type: string
        - name: language.level
          in: query
          description: |
            Уровень знания языка. Можно указать несколько значений.

            Возможные значения перечислены в поле `language_level` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: metro
          in: query
          description: |
            Линия, либо станция метро. Возможные значения перечислены в [справочнике метро](#tag/Obshie-spravochniki/operation/get-metro-stations)
          required: false
          schema:
            type: string
        - name: currency
          in: query
          description: |
            Код валюты. Возможные значения перечислены в поле `currency.code` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: salary_from
          in: query
          description: |
            Нижняя граница желаемой заработной платы (ЗП).

            По умолчанию в выдачу добавляются также резюме с неуказанной ЗП. Для выдачи резюме только с указанной ЗП передайте параметр `label=only_with_salary`
          required: false
          schema:
            type: number
        - name: salary_to
          in: query
          description: |
            Верхняя граница желаемой заработной платы (ЗП).

            По умолчанию в выдачу добавляются также резюме с неуказанной ЗП. Для выдачи резюме только с указанной ЗП передайте параметр `label=only_with_salary`
          required: false
          schema:
            type: number
        - name: schedule
          in: query
          description: |
            График работы. Возможные значения перечислены в поле `schedule` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: order_by
          in: query
          description: |
            Сортировка списка резюме. Возможные значения перечислены в поле `resume_search_order` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: citizenship
          in: query
          description: |
            Страна гражданства соискателя. Возможные значения перечислены в [справочнике стран](#tag/Obshie-spravochniki/operation/get-countries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: work_ticket
          in: query
          description: |
            Страна, в которой у соискателя есть разрешение на работу. Возможные значения перечислены в [справочнике стран](#tag/Obshie-spravochniki/operation/get-countries). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: educational_institution
          in: query
          description: |
            Учебные заведения соискателя. В качестве параметров используются [подсказки по названиям университетов](#tag/Podskazki). Можно указать несколько значений
          required: false
          schema:
            type: string
        - name: search_in_responses
          in: query
          description: |
            Если `true`, то поиск осуществляется только по резюме, которыми соискатели откликались на вакансии компании текущего пользователя, если `false` — поиск осуществляется по всем резюме. По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: by_text_prefix
          in: query
          description: |
            Если `true`, включается поиск по префиксу. Для каждого параметра `text` будут находиться не только полные совпадения слов, но еще и слова, начинающиеся с `text`. По умолчанию — `false`
          required: false
          schema:
            type: boolean
        - name: driver_license_types
          in: query
          description: |
            Категории водительских прав соискателя. Возможные значения перечислены в поле `driver_license_types` в [справочнике полей](#tag/Obshie-spravochniki/operation/get-dictionaries)
          required: false
          schema:
            type: string
        - name: vacancy_id
          in: query
          description: |
            Идентификатор вакансии для поиска похожих резюме. Необходимо передавать идентификатор активной вакансии работодателя или вакансии работодателя в архиве
          required: false
          schema:
            type: string
        - name: page
          in: query
          description: 'Номер страницы (считается от 0, по умолчанию — 0)'
          required: false
          schema:
            type: number
        - name: per_page
          in: query
          description: 'Количество элементов (по умолчанию — 10, максимальное значение — 50)'
          required: false
          schema:
            type: number
        - name: professional_role
          in: query
          description: |
            Профессиональная роль. Элемент справочника [профессиональных ролей](#tag/Obshie-spravochniki/operation/get-professional-roles-dictionary). Можно указать несколько значений
          required: false
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '201':
          description: Успешно создано
          content:
            text/html:
              schema:
                type: string
          headers:
            Location:
              schema:
                type: string
                description: 'Путь к созданному автопоиску. Пример: `/saved_searches/resumes/123`, где `123` — `id` созданного автопоиска'
        '400':
          description: Ошибки в аргументах
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является работодателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
  '/resumes/{resume_id}/access_types':
    x-name: '/resumes/{resume_id}/access_types'
    get:
      operationId: get-resume-access-types
      tags:
        - Резюме. Списки видимости
      summary: Получение списка типов видимости резюме
      description: 'Некоторые типы видимости, например `whitelist` и `blacklist`, подразумевают наличие списка работодателей, для которых резюме должно быть видимо или скрыто. См. [управление списками видимости резюме](#tag/Rezyume.-Spiski-vidimosti)'
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesAccessTypes'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesAccessTypes'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Резюме не существует или недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/{list_type}/search':
    x-name: '/resumes/{resume_id}/{list_type}/search'
    get:
      operationId: get-resume-visibility-employers-list
      tags:
        - Резюме. Списки видимости
      summary: Поиск работодателей для добавления в список видимости
      description: Возвращает результаты поиска работодателей
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: list_type
          in: path
          description: Тип списка. Допустимые значения — `whitelist` или `blacklist`
          required: true
          schema:
            type: string
        - name: text
          in: query
          description: Строка для поиска. Переданное значение ищется в начале названия работодателя и в начале названия департаментов работодателя
          required: true
          schema:
            type: string
        - name: per_page
          in: query
          description: |
            Количество элементов на странице выдачи. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). Значение по умолчанию и максимальное значение per_page составляет 100
          required: false
          schema:
            type: integer
        - name: page
          in: query
          description: |
            Порядковый номер страницы в выдаче. Поддерживаются [стандартные параметры пагинации](#section/Obshaya-informaciya/Paginaciya). По умолчанию нумерация начинается с 0 страницы
          required: false
          schema:
            type: integer
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesResumeVisibilityListSearchResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesResumeVisibilityListSearchResponse'
        '400':
          description: Входные параметры переданы с ошибкой
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Резюме не существует или недоступно для текущего пользователя, либо передан неизвестный `list_type`'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/{list_type}':
    x-name: '/resumes/{resume_id}/{list_type}'
    get:
      operationId: get-resume-visibility-list
      tags:
        - Резюме. Списки видимости
      summary: Получение списка видимости резюме
      description: |
        Возвращает список работодателей, для которых резюме должно быть видимо или скрыто
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: list_type
          in: path
          description: Тип списка. Допустимые значения — `whitelist` или `blacklist`
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResumesGetResumeVisibilityListResponse'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ResumesGetResumeVisibilityList'
        '400':
          description: Передано невалидное количество элементов на странице (максимум 100)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeVisibilityErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Резюме не существует или недоступно для текущего пользователя, либо передан неизвестный `list_type`'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    post:
      operationId: add-resume-visibility-list
      tags:
        - Резюме. Списки видимости
      summary: Добавление работодателей в список видимости
      description: |
        Добавляет указанных работодателей в список видимости указанного типа.

        За один запрос можно добавить не больше 100 компаний.

        Добавление в список идемпотентно, то есть добавление работодателей, уже присутствующих в списке, игнорируется и не приводит к дублированию записей.

        Можно добавить в список заблокированного работодателя
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: list_type
          in: path
          description: Тип списка. Допустимые значения — `whitelist` или `blacklist`
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResumesPostResumeVisibilityListBody'
            examples:
              Пример запроса:
                $ref: '#/components/examples/ResumesPostResumeVisibilityListBody'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
          headers:
            Location:
              schema:
                type: string
                description: 'Список видимости: `/resumes/{resume_id}/{list_type}`'
        '400':
          description: Передан невалидный JSON или JSON неправильного формата
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeVisibilityErrorsBadRequest'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Резюме не существует или недоступно для текущего пользователя, либо передан неизвестный `list_type`'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: delete-resume-visibility-list
      tags:
        - Резюме. Списки видимости
      summary: Очистка списка видимости
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: list_type
          in: path
          description: Тип списка. Допустимые значения — `whitelist` или `blacklist`
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Резюме не существует или недоступно для текущего пользователя, либо передан неизвестный `list_type`'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/resumes/{resume_id}/{list_type}/employer':
    x-name: '/resumes/{resume_id}/{list_type}/employer'
    delete:
      operationId: delete-employer-from-resume-visibility-list
      tags:
        - Резюме. Списки видимости
      summary: Удаление работодателя из списка видимости
      description: |
        Удаление из списка идемпотентно, то есть удаление отсутствующих в списке или несуществующих работодателей игнорируется и не приводит к ошибкам.

        Можно удалить из списка заблокированного работодателя.

        За один запрос можно удалить не более 100 компаний
      parameters:
        - name: resume_id
          in: path
          description: Идентификатор резюме
          required: true
          schema:
            type: string
        - name: list_type
          in: path
          description: Тип списка. Допустимые значения — `whitelist` или `blacklist`
          required: true
          schema:
            type: string
        - name: id
          in: query
          description: Идентификатор работодателя. Множественный параметр
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: Дополнительные ошибки с описанием причины
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsResumeVisibilityErrors'
        '403':
          description: Текущий пользователь не является соискателем
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: 'Резюме не существует или недоступно для текущего пользователя, либо передан неизвестный `list_type`'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/applicant_comments/{applicant_id}/{comment_id}':
    x-name: '/applicant_comments/{applicant_id}/{comment_id}'
    put:
      operationId: update-applicant-comment
      tags:
        - Комментарии к соискателю
        - Комментарии к соискателю на уровне работодателя
      summary: Обновление комментария
      description: |
        Метод требует наличия [платного доступа для работодателя](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access).

        Автор комментария может изменить его текст и тип доступа. Если параметр не передан, то его значение останется прежним
      parameters:
        - name: applicant_id
          in: path
          description: 'Идентификатор соискателя, который можно узнать из поля `owner` [в резюме](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#owner-field)'
          required: true
          schema:
            type: string
        - name: comment_id
          in: path
          description: 'Идентификатор комментария, который можно узнать в [списке комментариев](#tag/Kommentarii-k-soiskatelyu/operation/get-applicant-comments-list)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: false
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                text:
                  description: Текст комментария
                  type: string
                access_type:
                  description: 'Тип доступа. Доступные значения перечислены [в справочнике](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `applicant_comment_access_type`'
                  type: string
      responses:
        '204':
          description: Успешный ответ. Комментарий обновлен
        '400':
          description: Ошибка в параметрах запроса. Дополнительно могут быть указаны названия параметров с ошибками
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Изменение комментария недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный соискатель или комментарий не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    delete:
      operationId: delete-applicant-comment
      tags:
        - Комментарии к соискателю
        - Комментарии к соискателю на уровне работодателя
      summary: Удаление комментария
      description: |
        Метод требует наличия [платного доступа для работодателя](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access).

        Удалить комментарий может только его автор
      parameters:
        - name: applicant_id
          in: path
          description: 'Идентификатор соискателя, который можно узнать из поля `owner` [в резюме](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#owner-field)'
          required: true
          schema:
            type: string
        - name: comment_id
          in: path
          description: 'Идентификатор комментария, который будет удален. Его можно узнать в [списке комментариев](#tag/Kommentarii-k-soiskatelyu/operation/get-applicant-comments-list)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '204':
          description: Успешный ответ. Комментарий удален
        '403':
          description: Удаление комментария недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный соискатель не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/applicant_comments/{applicant_id}':
    x-name: '/applicant_comments/{applicant_id}'
    get:
      operationId: get-applicant-comments-list
      tags:
        - Комментарии к соискателю
        - Комментарии к соискателю на уровне работодателя
      summary: Получение списка комментариев
      description: |
        Метод требует наличия [платного доступа для работодателя](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access).

        Список будет содержать комментарии текущего пользователя, а также комментарии других менеджеров компании, если они открыли доступ к ним при публикации
      parameters:
        - name: applicant_id
          in: path
          description: 'Идентификатор соискателя, который можно узнать из поля `owner` [в резюме](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#owner-field)'
          required: true
          schema:
            type: string
        - name: page
          in: query
          description: Номер страницы
          schema:
            type: number
        - name: per_page
          in: query
          description: Результатов на странице
          schema:
            type: number
        - name: order_by
          in: query
          description: 'Сортировка комментариев. Доступные значения перечислены [в справочнике](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `applicant_comments_order`'
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicantCommentsApplicantCommentsList'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ApplicantCommentsApplicantCommentsListExample'
        '403':
          description: Получение комментариев недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный соискатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
    post:
      operationId: add-applicant-comment
      tags:
        - Комментарии к соискателю
        - Комментарии к соискателю на уровне работодателя
      summary: Добавление комментария
      description: 'Метод требует наличия [платного доступа для работодателя](#tag/Uslugi-rabotodatelya/operation/get-payable-api-method-access)'
      parameters:
        - name: applicant_id
          in: path
          description: 'Идентификатор соискателя, который можно узнать из поля `owner` [в резюме](https://github.com/hhru/api/blob/master/docs/employer_resumes.md#owner-field)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
                - text
                - access_type
              properties:
                text:
                  description: Текст комментария
                  type: string
                access_type:
                  description: 'Тип доступа. Доступные значения перечислены [в справочнике](#tag/Obshie-spravochniki/operation/get-dictionaries) в поле `applicant_comment_access_type`'
                  type: string
      responses:
        '201':
          description: Комментарий добавлен
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicantCommentsApplicantCommentItem'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/ApplicantCommentsAddApplicantCommentExample'
        '400':
          description: Ошибка в параметрах запроса
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadArgumentErrors'
        '403':
          description: Получение комментариев недоступно для текущего пользователя
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный соискатель не найден
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/mail_templates/{template_id}':
    x-name: '/employers/{employer_id}/mail_templates/{template_id}'
    put:
      operationId: put-mail-templates-item
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Изменение шаблона ответа соискателю
      description: |
        Изменение шаблона ответа для [переписки](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md)
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - name: template_id
          in: path
          description: 'Идентификатор шаблона для изменения из [списка доступных шаблонов ответов соискателю](#tag/Otklikipriglasheniya-rabotodatelya/operation/get-mail-templates)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MailTemplatesMailTemplateInput'
            examples:
              Пример запроса:
                $ref: '#/components/examples/MailTemplatesMailTemplateInput'
      responses:
        '204':
          $ref: '#/components/responses/SuccessNoContent'
        '400':
          description: 'Текст шаблона слишком длинный или содержит неправильную переменную, reason (too_long, wrong_variable)'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadJsonDataErrors'
        '403':
          description: Неподходящая авторизация
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель или шаблон не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
  '/employers/{employer_id}/mail_templates':
    x-name: '/employers/{employer_id}/mail_templates'
    get:
      operationId: get-mail-templates
      tags:
        - Отклики/приглашения работодателя
        - Отклики/приглашения работодателя на уровне работодателя
      summary: Список доступных шаблонов ответов соискателю
      description: |
        Возвращает список возможных значений шаблонов ответов для [переписки](https://github.com/hhru/api/blob/master/docs/employer_negotiations.md)
      parameters:
        - name: employer_id
          in: path
          description: 'Идентификатор работодателя, который можно узнать [в информации о текущем пользователе](#tag/Informaciya-o-menedzhere/operation/get-current-user-info)'
          required: true
          schema:
            type: string
        - $ref: '#/components/parameters/Locale'
        - $ref: '#/components/parameters/Host'
        - $ref: '#/components/parameters/HHUserAgent'
      responses:
        '200':
          description: Успешный ответ
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MailTemplatesMailTemplates'
              examples:
                Пример ответа:
                  $ref: '#/components/examples/MailTemplatesMailTemplates'
        '403':
          description: Неподходящая авторизация
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonBadAuthorizationErrors'
        '404':
          description: Указанный работодатель не существует
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorsCommonNotFoundErrors'
