> ## 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.

# Record a public resume PDF download

> Records a visitor's explicit PDF download after the browser starts saving the file. Requires access to the public resume. For password-protected resumes, first call verifyResumePassword (POST /resumes/{username}/{slug}/password/verify) with the password, then send the returned HttpOnly resume_access_<resumeId> cookie with this request. A missing or invalid access cookie returns NEED_PASSWORD (HTTP 401); the cookie expires after 10 minutes. Owner downloads are excluded. Rate limited per resume and visitor.



## OpenAPI

````yaml /spec.json post /resumes/{username}/{slug}/statistics/downloads
openapi: 3.1.1
info:
  title: Reactive Resume
  version: 6.0.0
  description: >-
    Reactive Resume API. Mutations do not support Idempotency-Key. Do not
    automatically retry POST, PUT, PATCH or DELETE requests after a timeout:
    first read the resource to determine whether the operation succeeded.
    Existing enum values and response shapes are retained for compatibility.
  license:
    name: MIT
    url: https://github.com/reactive-resume/reactive-resume/blob/main/LICENSE
  contact:
    name: Amruth Pillai
    email: hello@amruthpillai.com
    url: https://amruthpillai.com
servers:
  - url: https://rxresu.me/api/openapi
security:
  - apiKey: []
  - bearerAuth: []
  - cookieAuth: []
externalDocs:
  url: https://docs.rxresu.me
  description: Reactive Resume Documentation
paths:
  /resumes/{username}/{slug}/statistics/downloads:
    post:
      tags:
        - Resume Statistics
      summary: Record a public resume PDF download
      description: >-
        Records a visitor's explicit PDF download after the browser starts
        saving the file. Requires access to the public resume. For
        password-protected resumes, first call verifyResumePassword (POST
        /resumes/{username}/{slug}/password/verify) with the password, then send
        the returned HttpOnly resume_access_<resumeId> cookie with this request.
        A missing or invalid access cookie returns NEED_PASSWORD (HTTP 401); the
        cookie expires after 10 minutes. Owner downloads are excluded. Rate
        limited per resume and visitor.
      operationId: createResumeDownload
      parameters:
        - name: username
          in: path
          required: true
          schema:
            type: string
        - name: slug
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The download event was accepted.
          content:
            application/json:
              schema:
                type: boolean
        default:
          description: >-
            Structured API error. See status and code; do not branch on message
            text.
          content:
            application/json:
              schema:
                type: object
                required:
                  - defined
                  - code
                  - status
                  - message
                properties:
                  defined:
                    type: boolean
                  code:
                    type: string
                  status:
                    type: integer
                  message:
                    type: string
                  data: {}
      security: []
components:
  securitySchemes:
    apiKey:
      type: apiKey
      name: x-api-key
      in: header
      description: The API key to authenticate requests.
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: An OAuth access token issued by this instance for its API/MCP resource.
    cookieAuth:
      type: apiKey
      in: cookie
      name: better-auth.session_token
      description: >-
        Browser session (secure deployments use the __Secure- prefix). Cookie
        requests must originate from this instance.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.