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

# Get the prompt of an agent

> Retrieves the current prompt configured for an agent. The agent must belong to the same company as the API key used for authentication.



## OpenAPI

````yaml /api-reference/openapi.json get /Agent/{agentId}/prompt
openapi: 3.0.1
info:
  title: Starleads public API documentation
  description: >
    Welcome to the Starleads Public API documentation. This API provides public
    access to Starleads services, allowing developers and growth-hackers to
    interact with campaign-related data.

    ***

    ### Base endpoint

    ```https://api.starleads.co```

    ***

    ### Errors

    The API uses standard HTTP status codes to indicate the success or failure
    of the API call. In case of failure, the body of the response will be JSON
    in the following format:

    ```

    {
      "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
      "title": "Bad Request",
      "status": 400,
      "detail": "No campaign exists with campaignId : 11111111"
    }

    ```

    The ```type``` property is a link to a general description of the error
    type.

    ***

    ### Authentification

    Authentication for the API is handled with an API key that must be provided
    as a ```X-Api-Key``` header for every request.<br>

    **API keys are supposed to be a secret that only the client and server know.
    Please remember to not share them with anyone.**<br>

    You can find your API keys when authenticated in your Starleads profile
    :<br> ![Api key menu option](../images/api-menu-option-screenshot.png)
  version: v1
  x-logo:
    url: https://api.starleads.co/images/starleads-logo.png
servers: []
security: []
tags:
  - name: Agent
    description: >-
      Manage your AI agent's prompt and knowledge base chat connection. These
      endpoints allow you to read and update the prompt that drives your agent's
      behavior, and connect or detach a knowledge base chat.
  - name: Campaign
    description: >-
      Manage campaigns. A campaign orchestrates outbound calls or web
      interactions using an AI agent. Campaigns are created inactive and can be
      activated separately.
  - name: CampaignField
    description: >-
      CampaignFields enables users to specify customizable fields within their
      campaigns. These fields serve as placeholders (e.g., ```{lastname}```)
      that can be dynamically filled with corresponding data when creating
      prompts, providing flexibility in tailoring campaign content based on
      specific variables.<br>**Those are the keys of the ```databag``` field of
      the request payload to add a new ```CampaignItem``` to a campaign.**
  - name: CampaignItem
    description: Represents prospects entries related to a campaign
  - name: Dataset
    description: >-
      Manage datasets for the RAG (Retrieval-Augmented Generation) knowledge
      base. Datasets are containers for documents that are parsed and used for
      knowledge retrieval by AI agents.
  - name: Document
    description: >-
      Manage documents within datasets. Upload, list, update, download, and
      delete documents. Trigger and stop document parsing to extract knowledge
      from uploaded files.
  - name: KnowledgeBaseChat
    description: >-
      Manage knowledge base chats. A chat connects one or more datasets to
      provide RAG-powered question answering. Chats can be connected to agents
      to enhance their capabilities with knowledge retrieval.
  - name: KnowledgeGraph
    description: >-
      Manage knowledge graphs on datasets. Enable, build, query, and delete
      knowledge graphs to extract structured entity relationships from dataset
      documents. Available on the Business plan.
paths:
  /Agent/{agentId}/prompt:
    get:
      tags:
        - Agent
      summary: Get the prompt of an agent
      description: >-
        Retrieves the current prompt configured for an agent. The agent must
        belong to the same company as the API key used for authentication.
      operationId: GetAgentPrompt
      parameters:
        - name: X-Api-Key
          in: header
          description: Api key to pass as a `X-Api-Key` request header.
          required: true
          schema:
            type: string
        - name: agentId
          in: path
          description: ID of the agent.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentPromptDto'
              example:
                agentId: 64a1b2c3d4e5f6a7b8c9d0e1
                agentName: My Sales Agent
                prompt: You are a friendly sales assistant...
        '401':
          description: Unauthorized — Invalid or missing API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '404':
          description: >-
            Not Found — Agent does not exist, is archived, or belongs to another
            company
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
        '422':
          description: Unprocessable Entity — Agent has no prompt module configured
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
components:
  schemas:
    AgentPromptDto:
      type: object
      properties:
        agentId:
          type: string
          description: ID of the agent
        agentName:
          type: string
          description: Name of the agent
        prompt:
          type: string
          description: The current prompt text of the agent
      additionalProperties: false
    ProblemDetails:
      type: object
      properties:
        type:
          type: string
          nullable: true
        title:
          type: string
          nullable: true
        status:
          type: integer
          format: int32
          nullable: true
        detail:
          type: string
          nullable: true
        instance:
          type: string
          nullable: true
      additionalProperties: {}

````