Skip to main content
This guide walks you through the fastest path to a working Fastino integration. By the end, you’ll have made a successful inference call and understand the shape of the API. All you need is a Fastino account and a terminal.
1

Sign up and get your API key

Create an account at Fastino.Once you’re signed in, go to Settings → API Keys and generate a new key. Copy it somewhere safe because you won’t be able to view it again after closing the dialog.Set your key as an environment variable so the examples below work as-is:
2

List available base models (optional)

Use GET /v1/base-models to browse the models Fastino has available.
The response lists model IDs you can pass to /v1/chat/completions. For example, fastino/gliner2-base-v1 is a GLiNER base model for extraction tasks.
3

Run your first inference call

Call POST /v1/chat/completions with a model, a message, and a schema that defines what you want to extract. This example uses GLiNER to extract named entities from a sentence.
For encoder models such as GLiNER, the schema object defines the task and can include:
  • entities - entity definitions for named-entity extraction
  • classifications - {task, labels} definitions for text classification
  • structures - structured-record definitions for JSON extraction
  • relations - relation definitions
For decoder models, omit schema and send a normal chat message.
model must be an inference-capable base-model ID or the UUID of a completed, deployable training job. After training, deploy the selected artifact before using the job UUID for inference.
4

Start a training job (optional)

When you’re ready to fine-tune on your own data, start a training job:
The response includes a job id. Poll GET /v1/training/jobs/{id} to check its status. Once the job reaches complete, deploy the selected artifact before using the job ID as model in /v1/chat/completions.This endpoint creates managed config jobs. Native JSON clients create an interactive job with POST /v1/training/jobs/create-model. Existing Tinker clients can create the same job type through tinker==0.32.0. Compatibility child routes are private and absent from OpenAPI.Persisted job statuses progress from requested → running → complete, or end as errored or stopped. The normalized polling status uses failed for a terminal failure.

Next steps

Training API

Fine-tune a model end to end with the Fastino Training API.

Inference API

Run inference with base or fine-tuned models through the Fastino API.

Migrating from the Pioneer API origin

Training routes now use the /v1 prefix. For example, /felix/training-jobs is now /v1/training/jobs, and its job-specific operations remain under that new route family. Direct API integrations should use FASTINO_API_KEY with a newly generated fast_sk_ key; legacy pio_sk_ keys are retired. Both X-API-Key and Bearer authentication remain valid.