> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rxresu.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Bulk import applications

> Creates many applications at once from a parsed CSV. Each item requires company and role. Returns the number imported. Requires authentication.



## OpenAPI

````yaml /spec.json post /applications/import
openapi: 3.1.1
info:
  title: Reactive Resume
  version: 5.2.2
  description: Reactive Resume API
  license:
    name: MIT
    url: https://github.com/amruthpillai/reactive-resume/blob/main/LICENSE
  contact:
    name: Amruth Pillai
    email: hello@amruthpillai.com
    url: https://amruthpillai.com
servers:
  - url: http://localhost:3000/api/openapi
security:
  - apiKey: []
externalDocs:
  url: https://docs.rxresu.me
  description: Reactive Resume Documentation
paths:
  /applications/import:
    post:
      tags:
        - Applications
      summary: Bulk import applications
      description: >-
        Creates many applications at once from a parsed CSV. Each item requires
        company and role. Returns the number imported. Requires authentication.
      operationId: importApplications
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                items:
                  type: array
                  minItems: 1
                  maxItems: 500
                  items:
                    type: object
                    properties:
                      company:
                        type: string
                        minLength: 1
                        description: The company applied to.
                      role:
                        type: string
                        minLength: 1
                        description: The role / job title.
                      location:
                        anyOf:
                          - type: string
                          - type: 'null'
                      salary:
                        anyOf:
                          - type: string
                          - type: 'null'
                      source:
                        anyOf:
                          - type: string
                          - type: 'null'
                      sourceUrl:
                        anyOf:
                          - type: string
                          - type: 'null'
                      jobDescription:
                        anyOf:
                          - type: string
                            maxLength: 20000
                          - type: 'null'
                      notes:
                        anyOf:
                          - type: string
                          - type: 'null'
                      resumeFileUrl:
                        anyOf:
                          - type: string
                          - type: 'null'
                      resumeFileName:
                        anyOf:
                          - type: string
                          - type: 'null'
                      coverLetterUrl:
                        anyOf:
                          - type: string
                          - type: 'null'
                      coverLetterName:
                        anyOf:
                          - type: string
                          - type: 'null'
                      followUpAt:
                        anyOf:
                          - type: string
                            format: date-time
                            x-native-type: date
                          - type: 'null'
                      followUpNote:
                        anyOf:
                          - type: string
                          - type: 'null'
                      contacts:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                              minLength: 1
                            role:
                              type: string
                              default: ''
                            type:
                              type: string
                              default: ''
                          required:
                            - name
                      resumeId:
                        anyOf:
                          - type: string
                          - type: 'null'
                        description: The linked Reactive Resume, if any.
                      tags:
                        type: array
                        items:
                          type: string
                      status:
                        enum:
                          - saved
                          - applied
                          - screening
                          - interview
                          - offer
                          - rejected
                        type: string
                    required:
                      - company
                      - role
              required:
                - items
      responses:
        '200':
          description: The number of applications imported.
          content:
            application/json:
              schema:
                type: object
                properties:
                  imported:
                    type: number
                required:
                  - imported
components:
  securitySchemes:
    apiKey:
      type: apiKey
      name: x-api-key
      in: header
      description: The API key to authenticate requests.

````