---
title: "POST /folders/{folderId}/agents"
method: POST
path: "/folders/{folderId}/agents"
tags: ["Folder"]
---

# POST /folders/{folderId}/agents

`POST /folders/{folderId}/agents`

## Request

- Base URL: `https://www.taskade.com/api/v1`
- URL: `https://www.taskade.com/api/v1/folders/{folderId}/agents`
- Auth: OAuth 2 and HTTP bearer
  - Authorization code: `https://www.taskade.com/oauth2/authorize`
  - Token URL: `https://www.taskade.com/oauth2/token`

Create an agent in a team or workspace.

## Path parameters

- `folderId` string, required

## Request body

- object
  - `name` string, required
  - `data` union, required
    - object
      - `type` 'data', required
      - `data` Data, required (unresolved $ref)
    - object
      - `type` 'template', required
      - `template` object, required
        - `type` 'Tasker' | 'Researcher' | 'Marketer' | 'EmailWriter' | 'Sales' | 'CustomerSupport' | 'ProjectManager' | 'ContentCreator' | 'Copywriter' | 'LegalAdvisor' | 'SeoSpecialist' | 'ProductivityCoach' | 'EngineeringExpert' | 'Translator' | 'Summarizer' | 'ResumeBuilder' | 'Storyteller' | 'Tutor' | 'BrandStrategist' | 'SocialMediaSpecialist' | 'BusinessStrategist' | 'FinancialAnalyst' | 'HumanResourcesManager' | 'DataScientist' | 'ITConsultant' | 'FinancialAdvisor' | 'HealthCoach' | 'SustainabilityConsultant' | 'UXDesigner' | 'QualityAssuranceAnalyst' | 'ProductManager' | 'GrowthHacker' | 'BusinessDevelopmentManager' | 'PublicRelationsSpecialist' | 'EventPlanner' | 'DataAnalyst' | 'Editor' | 'CEO' | 'InterviewCoach' | 'TechSupportAdvisor' | 'Doctor' | 'BlogExpert' | 'TweetOptimizer' | 'EmailMarketer' | 'CourseCreator' | 'ScriptCreator' | 'ScreenplayWriter' | 'Proofreader' | 'SalesColdEmailCoach' | 'CodeExplainer' | 'CreativeWritingCoach' | 'AdvertisingCopywriter' | 'VideoScriptWriter' | 'ProjectArchitect' | 'AICouncil' | 'Negotiator' | 'VCAssociate' | 'Books' | 'StartupMentor' | 'SmallBusiness' | 'WebDevelopment' | 'PromptEngineer' | 'ArticleWriter' | 'WorkflowAgent' | 'StrategyAgent' | 'ViralAgent' | 'SOPOnboardingAgent' | 'PressReleaseAgent' | 'Designer' | 'Brainstormer' | 'Builder' | 'ResearchAnalyst' | 'OperationsManager' | 'CodeReviewer' | 'LeadScorer' | 'ContactEnricher' | 'ContentStrategist' | 'DealMover' | 'Estimator' | 'DigitalTwin' | 'WatchFloorBriefer' | 'AnomalySpotter' | 'RestockAdvisor' | 'AppDoctor' | 'RenewalChaser' | 'WinBackSpecialist' | 'NoShowRescuer' | 'AbandonedCartRecoverer' | 'ReviewResponder' | 'TestimonialHarvester' | 'SponsorshipManager' | 'CourseLaunchStrategist' | 'CurriculumAuthor' | 'PersonalizedRoadmapGenerator' | 'DispatchCoordinator' | 'ProviderNetworkBuilder' | 'ClaimsClerk' | 'ListingMarketer' | 'GrantWriter' | 'ComplianceKeeper' | 'LeadQualifier' | 'ClientOnboardingConcierge' | 'PipelineReporter' | 'LearnerCoach', required
        - `avatar` Avatar (unresolved $ref)

## Response `200`

Default response

- object
  - `ok` true, required
  - `item` SpaceAgent, required
    - `id` string, required
    - `name` string, required
    - `space_id` string, required
    - `data` object, required
      - `commands` object[], required
        - `name` string, required: Human-readable name of the command in title case. This should probably be a verb.
        - `description` string, nullable: Short summary for discovery (e.g. progressive disclosure / skill listing). The full instruction stays in `prompt`.
        - `prompt` string, required: Tell the agent what this command will do. It should be positioned as a direct instruction to the agent. At least 30 words.
        - `id` string, required: ID based on the name in snake case.
        - `mode` 'default' | 'plan-and-execute-v1' | 'plan-and-execute-v2'
      - `description` string: Role and purpose of agent, positioned as a direct instruction to the agent. Example: "You are a doctor that helps save lives.". At least 100 words.
      - `tone` 'authoritative' | 'clinical' | 'cold' | 'confident' | 'cynical' | 'emotional' | 'empathetic' | 'formal' | 'friendly' | 'humourous' | 'informal' | 'ironic' | 'optimistic' | 'pessimistic' | 'playful' | 'sarcastic' | 'serious' | 'sympathetic' | 'tentative' | 'warm' | 'creative' | 'inspiring' | 'casual'
      - `avatar` object
        - `type` 'emoji', required
        - `data` object, required
          - `value` string, required: Pick the most suitable emoji for this agent.
      - `knowledgeEnabled` boolean
      - `language` string: The language of the agent, e.g. en-US, zh-Hans
      - `inputPlaceholder` string, nullable

## Other responses

- `4XX`: Error description

---

[API](https://skmtc.dev/taskade/apis/taskade-public-api-v1.md) - [All operations](https://skmtc.dev/taskade/apis/taskade-public-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/taskade/apis/taskade-public-api-v1/revisions/55e17fe72d22?raw)
