PHP SDK methods

⚠️
Preview — this feature is being built; the design below is the spec.

Every method of the planned PHP SDK, by resource, with the endpoint it calls. Names follow PHP conventions; behaviour, parameters and return shapes match the Python and TypeScript references, which have a full example per method.

Conventions

Methods take an associative array. List methods return pages iterable with foreach across all pages. Streams are iterators of events.

Admin and Compliance methods live on a separate admin client: $admin = new \Syntic\AdminClient(); // SYNTIC_ADMIN_KEY

Install and first request: PHP SDK.

Chat completions

MethodEndpointWhat it does
$client->chat->completions->create([…])POST /v1/chat/completionsSend a conversation and get the reply. Pass stream=True to get an iterator of chunks instead.
$client->chat->completions->stream([…])POST /v1/chat/completionsStream with a helper that accumulates text, tool calls and usage, and exposes the final message when done.
$client->chat->completions->parse([…])POST /v1/chat/completionsStructured output from a Pydantic model (Python) or Zod schema (TypeScript); returns the parsed object on message.parsed.
$client->chat->completions->countTokens([…])POST /v1/chat/completions/count_tokensCount input tokens for a request body without running it.

Messages

MethodEndpointWhat it does
$client->messages->create([…])POST /v1/messagesSend content blocks and receive content blocks.
$client->messages->stream([…])POST /v1/messagesStream typed events (content_block_delta, message_delta…) with a final-message accumulator.
$client->messages->countTokens([…])POST /v1/messages/count_tokensCount tokens for a Messages request.

Models

MethodEndpointWhat it does
$client->models->list([…])GET /v1/modelsList the models your key can use. Auto-paginates when iterated.
$client->models->retrieve([…])GET /v1/models/{id}One model’s limits, capabilities and prices.

Files

MethodEndpointWhat it does
$client->files->upload([…])POST /v1/filesUpload from a path, bytes or a file object. Multipart encoding is handled for you.
$client->files->list([…])GET /v1/filesList files, newest first, filtered by purpose.
$client->files->retrieve([…])GET /v1/files/{file_id}Metadata for one file.
$client->files->content([…])GET /v1/files/{file_id}/contentDownload bytes. .write_to_file(path) streams to disk.
$client->files->delete([…])DELETE /v1/files/{file_id}Delete a file.

Batches

MethodEndpointWhat it does
$client->batches->create([…])POST /v1/batchesFrom an uploaded JSONL input_file_id, or up to 1,000 inline requests.
$client->batches->list([…])GET /v1/batchesList batches.
$client->batches->retrieve([…])GET /v1/batches/{batch_id}Status and counts.
$client->batches->wait([…])(helper; polls GET /v1/batches/{batch_id})Helper: poll until the batch ends, with back-off. Returns the final batch.
$client->batches->results([…])GET /v1/batches/{batch_id}/resultsIterate result lines as typed objects, streaming from the server.
$client->batches->cancel([…])POST /v1/batches/{batch_id}/cancelCancel a running batch.
$client->batches->delete([…])DELETE /v1/batches/{batch_id}Delete an ended batch and its result files.

Embeddings

MethodEndpointWhat it does
$client->embeddings->create([…])POST /v1/embeddingsEmbed one string or a list of up to 2,048 strings.

Webhooks

MethodEndpointWhat it does
$client->webhooks->create([…])POST /v1/webhooksRegister an endpoint; the result holds the signing secret once.
$client->webhooks->list([…])GET /v1/webhooksList endpoints.
$client->webhooks->update([…])PATCH /v1/webhooks/{webhook_id}Change events, URL or status.
$client->webhooks->delete([…])DELETE /v1/webhooks/{webhook_id}Remove an endpoint.
$client->webhooks->rotateSecret([…])POST /v1/webhooks/{webhook_id}/rotate_secretNew signing secret; both are valid during the overlap.
$client->webhooks->test([…])POST /v1/webhooks/{webhook_id}/testSend a webhook.test event.
$client->webhooks->unwrap([…])(local, no request)Verify the syntic-signature header against the raw body and return the typed event; raises on a bad signature or a stale timestamp.

Agents

MethodEndpointWhat it does
$client->agents->create([…])POST /v1/agentsCreate a versioned agent definition.
$client->agents->list([…])GET /v1/agentsList agents.
$client->agents->retrieve([…])GET /v1/agents/{agent_id}One agent at its latest or a given version.
$client->agents->update([…])PATCH /v1/agents/{agent_id}Change the definition; creates a new version.
$client->agents->versions->list([…])GET /v1/agents/{agent_id}/versionsAll versions.
$client->agents->archive([…])POST /v1/agents/{agent_id}/archiveStop new sessions from using it.

Sessions

MethodEndpointWhat it does
$client->sessions->create([…])POST /v1/sessionsStart a session, optionally with first events.
$client->sessions->send([…])POST /v1/sessions/{session_id}/eventsSend user messages, tool results or approvals.
$client->sessions->stream([…])GET /v1/sessions/{session_id}/streamIterate live events; reconnects with Last-Event-ID automatically.
$client->sessions->events->list([…])GET /v1/sessions/{session_id}/eventsFull history, paginated.
$client->sessions->interrupt([…])POST /v1/sessions/{session_id}/interruptStop the current turn.
$client->sessions->resources->add([…])POST /v1/sessions/{session_id}/resourcesMount a file, repository or memory store.
$client->sessions->threads->list([…])GET /v1/sessions/{session_id}/threadsPrimary and delegate threads with their usage.
$client->sessions->archive([…])POST /v1/sessions/{session_id}/archiveClose the session.

Environments, memory and more

MethodEndpointWhat it does
$client->environments->create([…])POST /v1/environmentsDefine a sandbox image.
$client->environments->rebuild([…])POST /v1/environments/{environment_id}/rebuildBuild the image again.
$client->memoryStores->memories->search([…])POST /v1/memory_stores/{store_id}/memories/searchSemantic search within a scope.
$client->memoryStores->consolidations->create([…])POST /v1/memory_stores/{store_id}/consolidationsStart a consolidation job.
$client->vaults->secrets->set([…])PUT /v1/vaults/{vault_id}/secrets/{name}Write a secret (write-only).
$client->deployments->runs->list([…])GET /v1/deployments/{deployment_id}/runsRecent runs of a deployment.
$client->skills->versions->create([…])POST /v1/skills/{skill_id}/versionsUpload a new skill version from a directory; the SDK zips it.
$client->userProfiles->create([…])POST /v1/user_profilesCreate an end-user profile.
$client->tunnels->create([…])POST /v1/tunnelsCreate an MCP tunnel.

Evaluations and prompts

MethodEndpointWhat it does
$client->evals->datasets->create([…])POST /v1/evals/datasetsCreate a dataset.
$client->evals->datasets->items->add([…])POST /v1/evals/datasets/{dataset_id}/itemsAdd up to 1,000 items.
$client->evals->graders->create([…])POST /v1/evals/gradersDefine a grader.
$client->evals->runs->create([…])POST /v1/evals/runsStart a run with up to four variants.
$client->evals->runs->wait([…])(helper; polls GET /v1/evals/runs/{eval_run_id})Helper: wait for a run to finish.
$client->evals->runs->results([…])GET /v1/evals/runs/{eval_run_id}/resultsIterate graded results.
$client->prompts->improve([…])POST /v1/prompts/improveRewrite a prompt against feedback.
$client->prompts->templates->setLabel([…])PUT /v1/prompts/templates/{template}/labels/{label}Promote a version.

Admin API

MethodEndpointWhat it does
$admin->organization->retrieve([…])GET /v1/organizations/meOrganization info and real plan name.
$admin->workspaces->create([…])POST /v1/organizations/workspacesCreate a workspace.
$admin->members->list([…])GET /v1/organizations/usersList members; auto-paginates.
$admin->invites->create([…])POST /v1/organizations/invitesInvite by email.
$admin->apiKeys->update([…])PATCH /v1/organizations/api_keys/{api_key_id}Rename or disable a key.
$admin->serviceAccounts->create([…])POST /v1/organizations/service_accountsCreate a service account.
$admin->usageReport->messages([…])GET /v1/organizations/usage_report/messagesToken usage in buckets, grouped as you choose.
$admin->costReport->retrieve([…])GET /v1/organizations/cost_reportSpend by day and workspace.
$admin->analytics->summary([…])GET /v1/organizations/analytics/summaryHeadline numbers for a period.
$admin->auditEvents->list([…])GET /v1/organizations/audit_eventsAudit feed, cursor-paginated.

Compliance API

MethodEndpointWhat it does
$admin->compliance->activities->list([…])GET /v1/compliance/activitiesIterate activity records.
$admin->compliance->exports->create([…])POST /v1/compliance/exportsStart a bulk export.
$admin->compliance->exports->download([…])GET /v1/compliance/exports/{export_id}/contentStream an export to disk.
$admin->compliance->legalHolds->create([…])POST /v1/compliance/legal_holdsPreserve records for named people.
Was this page helpful?