Skip to main content
POST
https://agent.usedari.com
/
portals
/
{org_id}
curl -X POST https://agent.usedari.com/portals/my-org \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "endpoint_name": "insurance_quote",
    "start_url": "https://example.com/get-quote",
    "task": "Fill out the insurance quote form with the provided data",
    "form_schema": {
      "type": "object",
      "properties": {
        "firstName": {"type": "string"},
        "lastName": {"type": "string"},
        "email": {"type": "string"},
        "dateOfBirth": {"type": "string", "format": "date"}
      },
      "required": ["firstName", "lastName", "email"]
    },
    "output_schema": {
      "type": "object",
      "properties": {
        "quoteId": {"type": "string"},
        "premium": {"type": "number"}
      }
    }
  }'
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "org_id": "my-org",
  "endpoint_name": "insurance_quote",
  "start_url": "https://example.com/get-quote",
  "task": "Fill out the insurance quote form with the provided data",
  "form_schema": {
    "type": "object",
    "properties": {
      "firstName": {"type": "string"},
      "lastName": {"type": "string"},
      "email": {"type": "string"},
      "dateOfBirth": {"type": "string", "format": "date"}
    },
    "required": ["firstName", "lastName", "email"]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "quoteId": {"type": "string"},
      "premium": {"type": "number"}
    }
  },
  "profile_id": null,
  "humanized_urls": null,
  "webhook_url": null,
  "skills": [],
  "created_at": "2025-01-15T10:30:00Z",
  "updated_at": "2025-01-15T10:30:00Z"
}
Creates a new automation portal. The endpoint_name must be unique within the organization.

Path Parameters

org_id
string
required
Organization ID

Headers

X-API-Key
string
required
Organization API key
Content-Type
string
required
Must be application/json

Request Body

endpoint_name
string
required
Unique identifier for this portal within the organization. Used in job URLs.
start_url
string
required
URL where the browser automation begins
task
string
Natural language description of what the AI agent should do
form_schema
object
required
JSON Schema defining the expected input data structure
output_schema
object
JSON Schema defining the expected output data structure
profile_id
string
UUID of a browser profile to use for this portal’s jobs
skill_ids
string[]
Array of skill UUIDs to attach to this portal
humanized_urls
string[]
URLs to humanize during automation
webhook_url
string
URL to receive webhook notifications when jobs complete or fail
curl -X POST https://agent.usedari.com/portals/my-org \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "endpoint_name": "insurance_quote",
    "start_url": "https://example.com/get-quote",
    "task": "Fill out the insurance quote form with the provided data",
    "form_schema": {
      "type": "object",
      "properties": {
        "firstName": {"type": "string"},
        "lastName": {"type": "string"},
        "email": {"type": "string"},
        "dateOfBirth": {"type": "string", "format": "date"}
      },
      "required": ["firstName", "lastName", "email"]
    },
    "output_schema": {
      "type": "object",
      "properties": {
        "quoteId": {"type": "string"},
        "premium": {"type": "number"}
      }
    }
  }'
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "org_id": "my-org",
  "endpoint_name": "insurance_quote",
  "start_url": "https://example.com/get-quote",
  "task": "Fill out the insurance quote form with the provided data",
  "form_schema": {
    "type": "object",
    "properties": {
      "firstName": {"type": "string"},
      "lastName": {"type": "string"},
      "email": {"type": "string"},
      "dateOfBirth": {"type": "string", "format": "date"}
    },
    "required": ["firstName", "lastName", "email"]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "quoteId": {"type": "string"},
      "premium": {"type": "number"}
    }
  },
  "profile_id": null,
  "humanized_urls": null,
  "webhook_url": null,
  "skills": [],
  "created_at": "2025-01-15T10:30:00Z",
  "updated_at": "2025-01-15T10:30:00Z"
}

Error Responses

{
  "detail": "Portal with endpoint_name 'insurance_quote' already exists"
}