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

> ## Agent Instructions
> This is the Sevalla REST API reference. Base URL: https://api.sevalla.com/v3. Authenticate with an API key in the Authorization header as a Bearer token.
> The OpenAPI spec is at https://api.sevalla.com/v3/openapi.json. Concepts and dashboard guides are at https://docs.sevalla.com (index: https://docs.sevalla.com/llms.txt).
> To act on a Sevalla account from an AI agent, prefer the Sevalla MCP server (https://mcp.sevalla.com/mcp, see https://docs.sevalla.com/ai-agents/overview.md) or the Sevalla CLI (https://api-docs.sevalla.com/v3/cli.md).

# List Dockerfiles

> List the Dockerfiles an application was built from, newest version first: the ones Sevalla generated with Ingot (`source: ingot`) and the ones from your repository (`source: user`). A build adds a new version only when its Dockerfile, .dockerignore or source differs from the latest one, so the list shows every change. Each deployment points at its version through `dockerfile_id`. Applications that were never built with `ingot` or `dockerfile` have an empty list.



## OpenAPI

````yaml https://api.sevalla.com/v3/openapi.json get /applications/{id}/dockerfiles
openapi: 3.1.0
info:
  title: Sevalla API docs
  version: 1.0.0
servers:
  - url: https://api.sevalla.com/v3
security:
  - bearerAuth: []
paths:
  /applications/{id}/dockerfiles:
    get:
      tags:
        - Applications
      summary: List Dockerfiles
      description: >-
        List the Dockerfiles an application was built from, newest version
        first: the ones Sevalla generated with Ingot (`source: ingot`) and the
        ones from your repository (`source: user`). A build adds a new version
        only when its Dockerfile, .dockerignore or source differs from the
        latest one, so the list shows every change. Each deployment points at
        its version through `dockerfile_id`. Applications that were never built
        with `ingot` or `dockerfile` have an empty list.
      operationId: listApplicationDockerfilesV3
      parameters:
        - schema:
            default: 25
            example: 25
            type: integer
            minimum: 1
            maximum: 100
          in: query
          name: limit
          required: false
          description: Maximum number of items per page
        - schema:
            default: 0
            example: 0
            type: integer
            minimum: 0
            maximum: 10000
          in: query
          name: offset
          required: false
          description: Number of items to skip
        - schema:
            example: fb5e5168-4281-4bec-94c5-0d1584e9e657
            type: string
            format: uuid
            pattern: >-
              ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          in: path
          name: id
          required: true
          description: Application identifier
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          format: uuid
                          pattern: >-
                            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                          description: Unique identifier for the Dockerfile version
                          example: fb5e5168-4281-4bec-94c5-0d1584e9e657
                        app_id:
                          type: string
                          format: uuid
                          pattern: >-
                            ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                          description: >-
                            Identifier of the application the Dockerfile belongs
                            to
                          example: fb5e5168-4281-4bec-94c5-0d1584e9e657
                        version:
                          type: integer
                          minimum: 1
                          maximum: 9007199254740991
                          description: >-
                            Version number of the Dockerfile within its
                            application, starting at 1. A new version is
                            recorded only when a build uses a Dockerfile,
                            .dockerignore or source that differs from the latest
                            version. Otherwise the build reuses the latest
                            version and updates its `language`, `facts` and
                            `processes` to what Ingot detected, unless Ingot
                            detected nothing.
                          example: 3
                        source:
                          type: string
                          enum:
                            - ingot
                            - user
                          description: >-
                            Where the Dockerfile comes from: `ingot` - generated
                            by Sevalla with Ingot for an application built with
                            `ingot`; `user` - the Dockerfile from your
                            repository, for an application built with
                            `dockerfile`
                          example: ingot
                        dockerfile:
                          type: string
                          description: Content of the Dockerfile
                          example: FROM node:22-slim AS build
                        dockerignore:
                          description: >-
                            Content of the .dockerignore the build used. For
                            `user` Dockerfiles this is
                            `<Dockerfile>.dockerignore` next to the Dockerfile,
                            or else `.dockerignore` in the build context, the
                            same file Docker picks. Null when there is none.
                          example: node_modules
                          type:
                            - string
                            - 'null'
                        ingot_version:
                          description: >-
                            Version of Ingot that first generated this
                            Dockerfile. When it differs from the previous
                            version, the change may come from an Ingot upgrade
                            rather than from the application. Null for `user`
                            Dockerfiles.
                          example: v0.3.2
                          type:
                            - string
                            - 'null'
                        language:
                          description: >-
                            Language Ingot detected in the application source,
                            such as `node`, `python`, `php`, `go`, `ruby`,
                            `rust`, `java`, `dotnet`, `elixir`, `deno`, `gleam`,
                            `zig`, `cpp`, `static` (a static site) or `shell` (a
                            start.sh script). For `user` Dockerfiles it is
                            detected from the repository and does not come from
                            your Dockerfile. Null when Ingot could not detect
                            the application, and for versions recorded before
                            this field existed.
                          example: php
                          type:
                            - string
                            - 'null'
                        facts:
                          type: array
                          items:
                            type: object
                            properties:
                              name:
                                type: string
                                description: >-
                                  What was detected, such as `framework`,
                                  `package manager`, or the language name for
                                  its version
                                example: framework
                              value:
                                type: string
                                description: The detected value
                                example: Laravel
                              source:
                                description: >-
                                  Where the value came from, usually a file in
                                  the repository. `default` means nothing in the
                                  repository set it and Ingot used its default.
                                example: composer.json
                                type: string
                            required:
                              - name
                              - value
                            additionalProperties: false
                          description: >-
                            What Ingot detected about the application, such as
                            its framework, runtime version and package manager,
                            each with the file it came from. For `ingot`
                            Dockerfiles these are the decisions listed in the
                            Dockerfile header. Empty when `language` is null.
                        processes:
                          type: array
                          items:
                            type: object
                            properties:
                              kind:
                                type: string
                                description: >-
                                  Type of process: `worker` - a command that
                                  runs continuously next to the web server;
                                  `job` - a command that runs to completion
                                  before each deployment
                                example: worker
                              name:
                                type: string
                                description: Short name of the process
                                example: queue
                              command:
                                type: string
                                description: Command to run from the same image
                                example: php artisan queue:work
                              reason:
                                type: string
                                description: What in the application calls for the process
                                example: app/Jobs/RecordVisit.php queues work
                            required:
                              - kind
                              - name
                              - command
                              - reason
                            additionalProperties: false
                          description: >-
                            Processes Ingot recommends running from the same
                            image besides the web process, such as queue
                            workers, schedulers or database migrations. These
                            are suggestions and are not created for you.
                        created_at:
                          type: string
                          format: date-time
                          pattern: >-
                            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
                          description: >-
                            Timestamp when the Dockerfile version was first
                            recorded, in ISO 8601 format
                          example: '2025-01-30T00:00:00.000Z'
                      required:
                        - id
                        - app_id
                        - version
                        - source
                        - dockerfile
                        - dockerignore
                        - ingot_version
                        - language
                        - facts
                        - processes
                        - created_at
                      additionalProperties: false
                    description: List of items
                  total:
                    type: integer
                    minimum: 0
                    maximum: 10000
                    description: Total number of items matching the query
                    example: 42
                  offset:
                    type: integer
                    minimum: 0
                    maximum: 10000
                    description: Current pagination offset
                    example: 0
                  limit:
                    type: integer
                    minimum: 1
                    maximum: 100
                    description: Current pagination limit
                    example: 25
                required:
                  - data
                  - total
                  - offset
                  - limit
                additionalProperties: false
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                    example: Unauthorized
                  status:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: HTTP status code
                    example: 401
                  data:
                    type: object
                    properties:
                      code:
                        description: Error tracking code for support reference
                        example: err-abc-123
                        type: string
                      message:
                        description: Additional error details or instructions
                        example: >-
                          If you need assistance, please contact support and
                          provide this error code.
                        type: string
                    additionalProperties: false
                required:
                  - message
                  - status
                additionalProperties: false
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                    example: >-
                      This API key is missing the <RESOURCE>:<ACTION>
                      permission. Grant it to the key or use a key that has it.
                  status:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: HTTP status code
                    example: 403
                  data:
                    type: object
                    properties:
                      code:
                        description: Error tracking code for support reference
                        example: err-abc-123
                        type: string
                      message:
                        description: Additional error details or instructions
                        example: >-
                          If you need assistance, please contact support and
                          provide this error code.
                        type: string
                    additionalProperties: false
                required:
                  - message
                  - status
                additionalProperties: false
        '404':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                    example: Not found
                  status:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: HTTP status code
                    example: 404
                  data:
                    type: object
                    properties:
                      code:
                        description: Error tracking code for support reference
                        example: err-abc-123
                        type: string
                      message:
                        description: Additional error details or instructions
                        example: >-
                          If you need assistance, please contact support and
                          provide this error code.
                        type: string
                    additionalProperties: false
                required:
                  - message
                  - status
                additionalProperties: false
        '500':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                    example: Internal Server Error
                  status:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                    description: HTTP status code
                    example: 500
                  data:
                    type: object
                    properties:
                      code:
                        description: Error tracking code for support reference
                        example: err-abc-123
                        type: string
                      message:
                        description: Additional error details or instructions
                        example: >-
                          If you need assistance, please contact support and
                          provide this error code.
                        type: string
                    additionalProperties: false
                required:
                  - message
                  - status
                additionalProperties: false
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API key authentication. Pass your API key as a Bearer token in the
        Authorization header.

````

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