aisplice

API reference

Older APIs & compatibility

#OpenAI compatibility

Every path accepts the OpenAI request body — vendor-specific parameters (anthropic tool_use, gemini thinking_config) pass through unchanged.

Same response envelope as OpenAI

The response body matches OpenAI exactly, so parsers, retry logic, and observability wrappers written for OpenAI keep working.

The endpoints on this page are live and billed like any other, but they are not the recommended way to integrate. Reach for them when an existing vendor SDK has to keep working unchanged, or when you inherited a call you are not ready to migrate.

#Which surface should you use?

New integration

Use the OpenAI-shaped /v1 endpoints in the API reference. One vocabulary across every capability, and the only surface that gets new parameters.

Existing vendor SDK

Use the matching passthrough below. You change the base URL and the key, and keep the vendor’s own request body.

Inherited legacy call

It keeps working. Migrate the next time you touch that code path — these routes are frozen, not maintained.

#Vendor-native passthrough

These accept the vendor’s own request body and return the vendor’s own response shape. Authentication is still one Authorization: Bearer header with a key from this platform — the vendor’s auth scheme is not used.

Gemini native

passthrough

Point the Google GenAI SDK at this gateway without a code change. The generateContent path shape and request body are Gemini’s own.

GET/v1beta/modelsList models in the Gemini catalogue shape.
POST/v1beta/models/*Gemini path form: /v1beta/models/{model}:{action}, e.g. :generateContent or :streamGenerateContent.
POST/v1/models/*Same Gemini request shape under /v1, for clients that cannot change the API version prefix.
POST/v1/engines/:model/embeddingsGemini embeddings through the legacy engines path.

Kling native

passthrough

Accepts Kling’s official request body (model_name + prompt and the vendor’s own fields) and returns its task shape.

POST/kling/v1/videos/text2videoSubmit a Kling text-to-video task in the vendor’s own body shape.
POST/kling/v1/videos/image2videoSubmit a Kling image-to-video task.
GET/kling/v1/videos/text2video/:task_idPoll a Kling text-to-video task.
GET/kling/v1/videos/image2video/:task_idPoll a Kling image-to-video task.

Jimeng native

passthrough

Jimeng’s official Action-query API. Submit and result share one path and are selected by the Action parameter.

POST/jimeng/?Action=CVSync2AsyncSubmitTask&Version=2022-08-31Submit a task with req_key and prompt in the vendor body. The trailing slash is required — /jimeng redirects, and a 301 drops the body in most HTTP clients.
POST/jimeng/?Action=CVSync2AsyncGetResult&Version=2022-08-31Fetch the result of a submitted task.

Suno native

passthrough

Suno-shaped music submission and fetch. Prefer /v1/music/generations for new work — it returns the platform task shape used everywhere else.

POST/suno/submit/:actionaction is music or lyrics.
POST/suno/fetchBatch fetch by id list.
GET/suno/fetch/:idFetch one task.
gemini-native.sh
# Google GenAI SDK: set the API endpoint, keep everything else.
curl "https://www.aisplice.store/v1beta/models/gemini-3.5-flash:generateContent" \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{"parts": [{"text": "Say hello."}]}]
  }'

Passthrough responses are the vendor’s, not ours

Status codes, error bodies and field names on these routes follow the upstream vendor. The platform error envelope and the documented error codes apply only to gateway-side rejections such as auth, quota and routing.

#Frozen legacy routes

Routed and billed, but closed to change: no new parameters, no new models guaranteed, and no compatibility promise beyond what works today.

Legacy aliases

frozen

Still routed, still billed, but frozen: no new parameters and no compatibility promises. Migrate when you touch the calling code.

POST/v1/completionsOpenAI legacy prompt completion. Use /v1/chat/completions.
POST/v1/editsRoutes to the image edit format despite the name. Use /v1/images/edits.
POST/v1/video/generationsPre-OpenAI-shape video submission. Use POST /v1/videos.
GET/v1/video/generations/:task_idPre-OpenAI-shape video poll. Use GET /v1/videos/{task_id}.

Midjourney archive

frozen

Read-only. Paid Midjourney submission is retired; only inspection of historical tasks and their archived images remains.

GET/mj/task/:id/fetchInspect an archived task.
GET/mj/task/:id/image-seedRead the seed of an archived image.
GET/mj/image/:idServe an archived image.

#What returns 404

Unsupported OpenAI surfaces are not registered at all. A 404 on an OpenAI path means the capability genuinely is not served here — it is not a temporary gap, and there is no route that answers 501 to pretend otherwise.

Discovering what a key can actually reach

GET /v1/models lists every model this key is allowed to call. Combine it with a 404 on the path itself and you can tell "model not permitted" apart from "endpoint not served".

Still stuck?

Send us the request ID or the error message and we will look into it.