Api Endpoint

Orthogonal

Create a new agent with name, voice, system prompt, and voice mode

Open interactive test console

Offering

Provider
Orthogonal
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Infrastructure
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://np.orthogonal.com/agentphone/v1/agents
MIME type
application/json
First seen
2026-10-16T01:50:03.832Z
Last seen
Tags
X402, paid-api, orthogonal-proxy, agentphone, data-apis, voice, phone, sms, AI-agents, telephony

Payment pricing

No payment terms are currently advertised.

Observed health

Status
Healthy
Latest latency
100 ms
Average latency
241 ms
HTTP status
204
Last checked
Reachability
100% over 12 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "body": {
    "type": "object",
    "title": "CreateAgentRequest",
    "required": [
      "name"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Name"
      },
      "voice": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Voice"
      },
      "sttMode": {
        "enum": [
          "fast",
          "accurate"
        ],
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Sttmode",
        "description": "Speech-to-text mode. 'fast' optimizes for latency, 'accurate' optimizes for transcription accuracy (~200ms additional latency)."
      },
      "language": {
        "enum": [
          "af-ZA",
          "ar-SA",
          "az-AZ",
          "bg-BG",
          "bs-BA",
          "ca-ES",
          "cs-CZ",
          "cy-GB",
          "da-DK",
          "de-DE",
          "el-GR",
          "en-AU",
          "en-GB",
          "en-IN",
          "en-NZ",
          "en-US",
          "es-419",
          "es-ES",
          "fa-IR",
          "fi-FI",
          "fil-PH",
          "fr-CA",
          "fr-FR",
          "gl-ES",
          "he-IL",
          "hi-IN",
          "hr-HR",
          "hu-HU",
          "hy-AM",
          "id-ID",
          "is-IS",
          "it-IT",
          "ja-JP",
          "kk-KZ",
          "kn-IN",
          "ko-KR",
          "lt-LT",
          "lv-LV",
          "mk-MK",
          "mr-IN",
          "ms-MY",
          "ne-NP",
          "nl-BE",
          "nl-NL",
          "no-NO",
          "pl-PL",
          "pt-BR",
          "pt-PT",
          "ro-RO",
          "ru-RU",
          "sk-SK",
          "sl-SI",
          "sr-RS",
          "sv-SE",
          "sw-KE",
          "ta-IN",
          "th-TH",
          "tr-TR",
          "uk-UA",
          "ur-IN",
          "vi-VN",
          "yue-CN",
          "zh-CN"
        ],
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Language",
        "description": "BCP-47 locale that drives the agent's speech recognition and pronunciation. Defaults to 'en-US'. See the enum for the full set of supported codes."
      },
      "modelTier": {
        "enum": [
          "turbo",
          "balanced",
          "max"
        ],
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Modeltier"
      },
      "voiceMode": {
        "enum": [
          "webhook",
          "hosted"
        ],
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Voicemode"
      },
      "voiceSpeed": {
        "anyOf": [
          {
            "type": "number",
            "maximum": 2,
            "minimum": 0.5
          },
          {
            "type": "null"
          }
        ],
        "title": "Voicespeed",
        "description": "Voice speed multiplier. 1.0 is normal pace; lower values slow speech (0.5 is half speed), higher values speed it up (2.0 is double). Range 0.5 to 2.0."
      },
      "customTools": {
        "anyOf": [
          {
            "type": "array",
            "items": {
              "type": "object",
              "title": "CustomToolParam",
              "required": [
                "name",
                "description",
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "Url",
                  "description": "HTTPS endpoint the voice provider calls when the agent invokes this tool."
                },
                "name": {
                  "type": "string",
                  "title": "Name",
                  "description": "Function name the agent calls. Letters, numbers, underscores, hyphens; max 64 chars. Must be unique and not a reserved built-in name."
                },
                "method": {
                  "enum": [
                    "GET",
                    "POST"
                  ],
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "title": "Method",
                  "description": "HTTP method. Defaults to POST."
                },
                "headers": {
                  "anyOf": [
                    {
                      "type": "object",
                      "additionalProperties": {
                        "type": "string"
                      }
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "title": "Headers",
                  "description": "Optional HTTP headers sent with the request (e.g. an Authorization token for your endpoint)."
                },
                "timeoutMs": {
                  "anyOf": [
                    {
                      "type": "integer",
                      "maximum": 120000,
                      "minimum": 1000
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "title": "Timeoutms",
                  "description": "How long to wait for your endpoint before giving up. Range 1000-120000 ms."
                },
                "parameters": {
                  "anyOf": [
                    {
                      "type": "object"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "title": "Parameters",
                  "description": "JSON Schema object describing the arguments the agent fills in. Omit for a no-argument tool."
                },
                "description": {
                  "type": "string",
                  "title": "Description",
                  "description": "What the tool does and when to use it. The agent relies on this to decide when to call it."
                },
                "executionMessage": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "title": "Executionmessage",
                  "description": "What the agent says while the tool runs (used when speakDuringExecution is true)."
                },
                "speakDuringExecution": {
                  "anyOf": [
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "title": "Speakduringexecution",
                  "description": "When true, the agent speaks executionMessage while the tool runs."
                }
              }
            }
          },
          {
            "type": "null"
          }
        ],
        "title": "Customtools",
        "description": "Hosted-mode only. User-defined function tools the agent can call during a call (look up a record, save call notes, etc.). Each points at your HTTPS endpoint; the voice provider invokes it and feeds the JSON response back to the agent. Ignored in webhook mode. Maximum 20 tools."
      },
      "description": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Description"
      },
      "ambientSound": {
        "enum": [
          "none",
          "office",
          "coffee-shop",
          "outdoor"
        ],
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Ambientsound",
        "description": "Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed."
      },
      "beginMessage": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Beginmessage"
      },
      "maxSilenceMs": {
        "anyOf": [
          {
            "type": "integer",
            "maximum": 3600000,
            "minimum": 10000
          },
          {
            "type": "null"
          }
        ],
        "title": "Maxsilencems",
        "description": "Hang up the call after this many milliseconds of caller silence. Default 600000 (10 min). Raise for IVR/hold-music workflows; lower to fail fast on dead lines. Range 10000 (10s) to 3600000 (1 hour)."
      },
      "systemPrompt": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Systemprompt"
      },
      "denoisingMode": {
        "enum": [
          "noise-cancellation",
          "noise-and-background-speech-cancellation"
        ],
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Denoisingmode",
        "description": "Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs."
      },
      "transferNumber": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Transfernumber"
      },
      "enableMessaging": {
        "anyOf": [
          {
            "type": "boolean"
          },
          {
            "type": "null"
          }
        ],
        "title": "Enablemessaging",
        "description": "When true, hosted-mode agents can send and read SMS/iMessage during calls. Defaults to true."
      },
      "voicemailMessage": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Voicemailmessage"
      },
      "enableBackchannel": {
        "anyOf": [
          {
            "type": "boolean"
          },
          {
            "type": "null"
          }
        ],
        "title": "Enablebackchannel",
        "description": "When true, the agent interjects short filler words like 'uh-huh' or 'mhmm' during longer caller utterances. Set false to keep the agent silent while the caller is speaking. Defaults to true."
      },
      "callScreeningPurpose": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Callscreeningpurpose"
      },
      "callScreeningIdentity": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ],
        "title": "Callscreeningidentity"
      },
      "interruptionSensitivity": {
        "anyOf": [
          {
            "type": "number",
            "maximum": 1,
            "minimum": 0
          },
          {
            "type": "null"
          }
        ],
        "title": "Interruptionsensitivity",
        "description": "How easily callers can interrupt the agent. 0 means the agent is never interrupted, 1 means the agent stops at the first sound. Default 0.8. Range 0.0 to 1.0."
      }
    }
  },
  "type": "http",
  "method": "POST",
  "bodyType": "json"
}

Output schema

{
  "type": "object",
  "title": "AgentResponse",
  "required": [
    "id",
    "name",
    "description",
    "voiceMode",
    "voice",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "string",
      "title": "Id"
    },
    "name": {
      "type": "string",
      "title": "Name"
    },
    "voice": {
      "type": "string",
      "title": "Voice"
    },
    "numbers": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "object",
            "title": "AgentNumberResponse",
            "required": [
              "id",
              "phoneNumber",
              "status"
            ],
            "properties": {
              "id": {
                "type": "string",
                "title": "Id"
              },
              "type": {
                "type": "string",
                "title": "Type",
                "default": "sms"
              },
              "status": {
                "type": "string",
                "title": "Status"
              },
              "phoneNumber": {
                "type": "string",
                "title": "Phonenumber"
              }
            }
          }
        },
        {
          "type": "null"
        }
      ],
      "title": "Numbers"
    },
    "sttMode": {
      "enum": [
        "fast",
        "accurate"
      ],
      "type": "string",
      "title": "Sttmode",
      "default": "fast",
      "description": "Speech-to-text mode. 'fast' optimizes for latency, 'accurate' optimizes for transcription accuracy (~200ms additional latency)."
    },
    "language": {
      "type": "string",
      "title": "Language",
      "default": "en-US",
      "description": "BCP-47 locale that drives the agent's speech recognition and pronunciation. Defaults to 'en-US'."
    },
    "createdAt": {
      "type": "string",
      "title": "Createdat",
      "format": "date-time"
    },
    "modelTier": {
      "enum": [
        "turbo",
        "balanced",
        "max"
      ],
      "type": "string",
      "title": "Modeltier",
      "default": "balanced"
    },
    "voiceMode": {
      "enum": [
        "webhook",
        "hosted"
      ],
      "type": "string",
      "title": "Voicemode"
    },
    "voiceSpeed": {
      "type": "number",
      "title": "Voicespeed",
      "default": 1,
      "description": "Voice speed multiplier. Range 0.5 to 2.0. Default 1.0."
    },
    "customTools": {
      "anyOf": [
        {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        {
          "type": "null"
        }
      ],
      "title": "Customtools"
    },
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Description"
    },
    "ambientSound": {
      "enum": [
        "none",
        "office",
        "coffee-shop",
        "outdoor"
      ],
      "type": "string",
      "title": "Ambientsound",
      "default": "none",
      "description": "Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed."
    },
    "beginMessage": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Beginmessage"
    },
    "maxSilenceMs": {
      "type": "integer",
      "title": "Maxsilencems",
      "default": 600000,
      "description": "Hang up the call after this many milliseconds of caller silence. Range 10000 (10s) to 3600000 (1 hour). Default 600000 (10 min)."
    },
    "systemPrompt": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Systemprompt"
    },
    "denoisingMode": {
      "enum": [
        "noise-cancellation",
        "noise-and-background-speech-cancellation"
      ],
      "type": "string",
      "title": "Denoisingmode",
      "default": "noise-cancellation",
      "description": "Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs."
    },
    "transferNumber": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Transfernumber"
    },
    "enableMessaging": {
      "type": "boolean",
      "title": "Enablemessaging",
      "default": true
    },
    "voicemailMessage": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Voicemailmessage"
    },
    "enableBackchannel": {
      "type": "boolean",
      "title": "Enablebackchannel",
      "default": true,
      "description": "When true, the agent interjects short filler words like 'uh-huh' or 'mhmm' during longer caller utterances. Defaults to true."
    },
    "callScreeningPurpose": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Callscreeningpurpose"
    },
    "callScreeningIdentity": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Callscreeningidentity"
    },
    "interruptionSensitivity": {
      "type": "number",
      "title": "Interruptionsensitivity",
      "default": 0.8,
      "description": "How easily callers can interrupt the agent. Range 0.0 to 1.0. Default 0.8."
    }
  }
}