Source: https://01router.com/docs/projects Base URL: https://01router.com/api/v1 # Projects A project is the unit of integration: each one has its own API keys, model scope, providers and price ratio. Requests made with a project key apply that project's configuration automatically, and your frontend can fetch the priced model catalog by project ID. ## Read the project catalog ```bash curl 'https://01router.com/api/v1/models?project=YOUR_PROJECT_ID&type=video' ``` ## Call a custom model ID ```bash curl 'https://01router.com/api/v1/generations' \ -H "Authorization: Bearer $API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "my-video-lite", "input": { "prompt": "A red fox running through fresh snow, cinematic" } }' ``` ## Quote with project settings ```bash curl 'https://01router.com/api/v1/quote' \ -H "Content-Type: application/json" \ -d '{ "model": "seedance-2.5", "input": { "prompt": "A red fox running through fresh snow, cinematic" }, "project": "YOUR_PROJECT_ID" }' ``` ## Usage notes - Create projects on the Projects page of the dashboard. An account can have up to 20 projects and each project up to 20 API keys. A new project serves all models at a 100% price ratio. All projects share the account's credit balance. - With "All models" on, every catalog model can be called and models without their own entry are routed to the cheapest provider. With it off, only configured models can be called; others return 400 (Model xxx is not enabled in this project). - A configured model can pin a provider and set its own price ratio and sort order (smaller first). Once pinned, requests for that model go only to that provider and the request's provider field is ignored. - You can list a platform model again under a custom model ID (lowercase letters, digits, . _ -, up to 64 characters, not an existing platform model) bound to another provider and name, e.g. a standard and a budget tier. Send the custom ID as model to call it. - The price ratio is an integer from 1 to 1000 (100 = platform price, 120 = +20%). It only changes the prices shown to your users in the project catalog. You are always charged the platform price in credits; charging your end users the difference is up to your product. - GET /api/v1/models?project=YOUR_PROJECT_ID is public and needs no key. It returns the enabled models, their parameters and ratio-adjusted prices (USD), optionally filtered by type. The project ID may live in your frontend; the API key must not. With a project domain set, only browsers on that domain and its subdomains can read it cross-origin; without one, any origin can. - Every API key belongs to one project and requests use that project's configuration, so the project field in the body can be omitted. If sent, it must match the key's project or the request returns 403. The keyless /quote endpoint accepts project to quote with the project's model mapping and providers (at platform prices). - Each key can have a credit quota (never reset, or reset daily / weekly / monthly in a chosen time zone); exceeding it returns 429 quota_exceeded. An IP allowlist (up to 50 entries, IPv4 CIDR supported) treats other IPs as an invalid key. An expiry of 1 / 7 / 30 / 90 / 180 / 365 days or never. Deleting a project disables its catalog and its keys' calls.