/v1/service/@id/manualrenewCreate service renewal invoice
Create a renewal invoice for the service. If the service already has an unpaid invoice, returns that invoice's invoice_id; if the service has a pending upgrade, returns an error.
Call it through the gateway https://api.tino.vn/v1 with a token that has the services:write scope; see Calling the Tino API.
Authentication
Send the token in the header Authorization:
Authorization: Bearer <token>
Tokens that can call it: app tokens (tinoat_, Sign in with Tino) or personal API tokens (tinopat_).
Scopes
services:writeService management
Parameters
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Required | Service ID |
Response
The route's JSON answer, in the same shape as UserAPI returns it (Personal data). Live sample from a test account with personal data masked; long arrays and strings are trimmed (… N more item(s), … N more line(s)).
Error codes
| Error code | Description |
|---|---|
401 · invalid_token | The token is wrong, expired or revoked. |
403 · insufficient_scope | The token lacks the services:write scope. |
403 · ip_not_allowed | A personal API token called from an IP outside its allow-list. |
Business errors of a route usually come as HTTP 200 with {"error": ["<code>"]}; see common error codes.