> ## Documentation Index
> Fetch the complete documentation index at: https://infisical-platfor-532.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Request to sign

> Open a request to sign with this signer (operator self-serve)



## OpenAPI

````yaml POST /api/v1/cert-manager/signers/{signerId}/requests
openapi: 3.0.3
info:
  title: Infisical API
  description: List of all available APIs that can be consumed
  version: 0.0.1
servers:
  - url: https://us.infisical.com
    description: Production server (US)
  - url: https://eu.infisical.com
    description: Production server (EU)
  - url: http://localhost:8080
    description: Local server
security: []
paths:
  /api/v1/cert-manager/signers/{signerId}/requests:
    post:
      tags:
        - PKI Signers
      description: Open a request to sign with this signer (operator self-serve)
      operationId: requestToSign
      parameters:
        - schema:
            type: string
            format: uuid
          in: path
          name: signerId
          required: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                justification:
                  type: string
                  minLength: 1
                  maxLength: 2048
                requestedSignings:
                  type: integer
                  minimum: 1
                requestedWindowDuration:
                  type: string
                  description: >-
                    How long the approval stays usable once it is granted, for
                    example '4h'. The window starts when the request is
                    approved.
                scope:
                  type: object
                  properties:
                    command:
                      type: string
                      maxLength: 32767
                    signingApplication:
                      type: string
                      maxLength: 256
                    signingApplicationHash:
                      type: string
                      maxLength: 64
                    hostname:
                      type: string
                      maxLength: 256
                    osUsername:
                      type: string
                      maxLength: 256
                    ipAddress:
                      type: string
                      maxLength: 45
                      nullable: true
                    dataHash:
                      type: string
                      maxLength: 64
                  additionalProperties: false
                  description: >-
                    Optional parameters to scope this approval to (command,
                    signingApplication, signingApplicationHash, hostname,
                    osUsername, ipAddress, dataHash). Every value declared here
                    must match at signing time or the sign call is denied;
                    parameters left out are not restricted. A command must match
                    exactly, apart from whitespace, so a different order of
                    options is a different command. ipAddress is compared
                    against the address the sign call arrives from and dataHash
                    against the digest of the submitted payload, so those two
                    hold even if a caller reports something else. A machine
                    identity that declares a scope without naming ipAddress has
                    it filled in with the address the request arrives from; send
                    null to leave signing unrestricted by address.
              required:
                - justification
              additionalProperties: false
      responses:
        '200':
          description: Default Response

````