API Reference

Explore Sukidata API endpoints, parameters and responses for Google Search, Twitter timelines, image generation, JEV decisions and saved results.

Download OpenAPI specification

Common

Get the OpenAPI document

GET/openapi.json

Responses

200OpenAPI 3.1 JSON document.

application/json

object

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Web Data

Create a SERP search

POST/v1/serp

Request body · required

application/json

Parameters for a Google SERP request. String fields are trimmed and limited to 4096 UTF-8 bytes unless a narrower field-specific limit is documented.

engineoptional

string

enum["google"]

default"google"

Constraints
maxLength
4096
qrequired

string

Google search query. Advanced operators such as site:, inurl:, and intitle: are allowed.

Constraints
minLength
1
maxLength
4096
pattern
"\\S"
as_dtoptional

string | null

Advanced Google search parameter used with as_sitesearch to include or exclude a site.

Constraints
maxLength
4096
as_epqoptional

string | null

Advanced Google exact phrase query.

Constraints
maxLength
4096
as_eqoptional

string | null

Advanced Google excluded query terms.

Constraints
maxLength
4096
as_lqoptional

string | null

Advanced Google linked-page query URL.

Constraints
maxLength
4096
as_nlooptional

string | null

Advanced Google numeric range lower bound.

Constraints
maxLength
4096
as_nhioptional

string | null

Advanced Google numeric range upper bound.

Constraints
maxLength
4096
as_oqoptional

string | null

Advanced Google optional terms query.

Constraints
maxLength
4096
as_qoptional

string | null

Advanced Google additional query terms.

Constraints
maxLength
4096
as_qdroptional

string | null

Advanced Google quick date range, such as d10, w2, m1, or y.

Constraints
maxLength
4096
as_rqoptional

string | null

Advanced Google related-page query URL.

Constraints
maxLength
4096
as_sitesearchoptional

string | null

Advanced Google site restriction or exclusion target.

Constraints
maxLength
4096
locationoptional

string | null

Supported Google search location name or ID returned by GET /v1/serp/locations. Mutually exclusive with uule.

Constraints
maxLength
4096
google_domainoptional

string

Google search domain without scheme or path, such as google.com, google.de, google.co.jp, or google.com.br. Input is case-insensitive, normalized to lowercase, and validated against the supported Google domain list.

default"google.com"

Constraints
maxLength
4096
pattern
"^[Gg][Oo][Oo][Gg][Ll][Ee](?:\\.[Cc][Oo][Mm]|\\.[A-Za-z]{2}|\\.(?:[Cc][Oo][Mm]|[Cc][Oo])\\.[A-Za-z]{2})$"
gloptional

string

Two-letter Google country code. Input is case-insensitive, normalized to lowercase, and validated against the supported Google country list.

default"us"

Constraints
minLength
2
maxLength
2
pattern
"^[A-Za-z]{2}$"
hloptional

string

Google interface language code such as en, ja, pt-br, or zh-cn. Input is normalized to lowercase and validated against the supported Google interface language list.

default"en"

Constraints
minLength
2
maxLength
32
pattern
"^[A-Za-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$"
uuleoptional

string | null

Google encoded location. Mutually exclusive with location.

Constraints
maxLength
4096
latoptional

Latitude for GPS-based Google localization. Must be used with lon and is mutually exclusive with location and uule.

Exactly one of oneOf

number

Constraints
minimum
-90
maximum
90

string

Constraints
pattern
"^-?(?:\\d+|\\d*\\.\\d+)(?:[eE][+-]?\\d+)?$"

null

lonoptional

Longitude for GPS-based Google localization. Must be used with lat and is mutually exclusive with location and uule.

Exactly one of oneOf

number

Constraints
minimum
-180
maximum
180

string

Constraints
pattern
"^-?(?:\\d+|\\d*\\.\\d+)(?:[eE][+-]?\\d+)?$"

null

radiusoptional

Search radius for location or GPS-based localization. Maximum is 199 for desktop and 1000 for tablet or mobile. Mutually exclusive with uule.

Exactly one of oneOf

number

Constraints
minimum
1

string

Constraints
pattern
"^(?:\\d+|\\d*\\.\\d+)(?:[eE][+-]?\\d+)?$"

null

ludocidoptional

string | null

Google CID for a place result.

Constraints
maxLength
4096
lsigoptional

string | null

Google lsig value used by some local and knowledge graph views.

Constraints
maxLength
4096
kgmidoptional

string | null

Google Knowledge Graph entity ID.

Constraints
maxLength
4096
sioptional

string | null

Google encrypted/cached search parameter token.

Constraints
maxLength
4096
ibpoptional

string | null

Google layout or expansion parameter.

Constraints
maxLength
4096
udsoptional

string | null

Google filter token returned by SERP filter links.

Constraints
maxLength
4096
croptional

string | null

Google country restrict filter, as one or more countryXX tokens separated by |, such as countryUS|countryJP.

Constraints
maxLength
4096
lroptional

string | null

Google language restrict filter, as one or more lang_xx tokens separated by |, such as lang_en|lang_zh-CN.

Constraints
maxLength
4096
tbsoptional

string | null

Constraints
maxLength
4096
tbmoptional

string | null

Supported Google search type. Omit the parameter for regular Google Search.

enum["isch","lcl","vid","nws","shop","pts",null]

Constraints
maxLength
4096
safeoptional

string

enum["off","active"]

default"off"

Constraints
maxLength
4096
nfproptional

boolean

defaultfalse

filteroptional

boolean

defaulttrue

startoptional

integer

default0

Constraints
minimum
0
deviceoptional

string

enum["desktop","tablet","mobile"]

default"desktop"

Constraints
maxLength
4096
asyncoptional

boolean

When false, the API waits for a result and may return an in-progress response that can be polled. When true, the API returns a pollable search response immediately.

defaultfalse

no_cacheoptional

boolean

defaultfalse

webhookoptional
Constraints
required
["q"]

additionalProperties

false

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Search envelope, completed result, or failed result.

application/json

Exactly one of oneOf

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
search_informationrequired
organic_resultsoptional

array

adsoptional

array

Array items

answer_boxoptional
ai_overviewoptional
knowledge_graphoptional
local_resultsoptional
top_storiesoptional

array

Array items

images_resultsoptional

array

Array items

videos_resultsoptional

array

Array items

shopping_resultsoptional

array

related_questionsoptional

array

People Also Ask and related AI Overview results when available.

related_searchesoptional

array

paginationoptional
Constraints
required
["search_metadata","search_parameters","search_information"]

additionalProperties

true

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Cache-Hitheader · optional

Whether this request qualified for a zero-credit cached response.

boolean

X-Sukidata-Credits-Usedheader · optional

Credits charged when the search reaches Success or Error. Omitted while in progress; cached responses use 0.

integerint64

400Invalid request parameters.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

402Credit is insufficient; search was not created.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

403Access denied for this API key.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

413Request body is too large.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

415Request content type must be application/json.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Webhook · serpWebhook

Optional SERP webhook delivery.

POST{$request.body#/webhook/url}

Sent when the caller provides webhook.url and subscribes to a matching event. Failed deliveries may be retried.

Request body · required

application/json

idrequired

string

Webhook delivery/event ID. It matches X-Sukidata-Delivery.

objectrequired

string

const"event"

typerequired

string

enum["serp.search.queued","serp.search.processing","serp.search.completed","serp.search.failed"]

api_versionrequired

string

const"v1"

created_atrequired

stringdate-time

datarequired
Constraints
required
["id","object","type","api_version","created_at","data"]

additionalProperties

false

Request headers
X-Sukidata-Eventheader · required

string

enum["serp.search.queued","serp.search.processing","serp.search.completed","serp.search.failed"]

X-Sukidata-Deliveryheader · required

string

X-Sukidata-Timestampheader · required

string

X-Sukidata-Signatureheader · optional

HMAC signature in v1=<hex> format when a webhook secret is available for the authenticated API key.

string

Responses

2XXThe webhook endpoint accepted the delivery.

Get a SERP search

GET/v1/serp/{search_id}

Parameters

search_idpath · required

Search ID returned by POST /v1/serp. Malformed IDs return 400; IDs unavailable to the authenticated workspace return 404.

string

Constraints
maxLength
128
pattern
"^[A-Za-z0-9_-]+$"
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Search envelope, completed result, or failed result.

application/json

Exactly one of oneOf

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
search_informationrequired
organic_resultsoptional

array

adsoptional

array

Array items

answer_boxoptional
ai_overviewoptional
knowledge_graphoptional
local_resultsoptional
top_storiesoptional

array

Array items

images_resultsoptional

array

Array items

videos_resultsoptional

array

Array items

shopping_resultsoptional

array

related_questionsoptional

array

People Also Ask and related AI Overview results when available.

related_searchesoptional

array

paginationoptional
Constraints
required
["search_metadata","search_parameters","search_information"]

additionalProperties

true

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Cache-Hitheader · optional

Whether this request qualified for a zero-credit cached response.

boolean

X-Sukidata-Credits-Usedheader · optional

Credits charged when the search reaches Success or Error. Omitted while in progress; cached responses use 0.

integerint64

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

403Access denied for this API key.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

404Search not found for this workspace context.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Get a Twitter user timeline

POST/v1/twitter

Retrieves one page of public posts for a user. Pass next_cursor as cursor in a later request to continue. Successful requests use one credit per 10 returned posts, rounded up, with a one-credit minimum.

Request body · required

application/json

Parameters for one page of a public Twitter user timeline. Provide exactly one user identifier.

usernameoptional

string

Twitter username, with or without a leading @.

Constraints
minLength
1
maxLength
51
pattern
"^@?[A-Za-z0-9_]+$"
user_idoptional

string

Numeric Twitter user ID.

Constraints
minLength
1
maxLength
32
pattern
"^[0-9]+$"
max_resultsoptional

integer

Maximum number of posts to return from this page.

default20

Constraints
minimum
1
maximum
100
cursoroptional

string

Opaque next_cursor value returned by a previous request.

Constraints
minLength
1
maxLength
8192
asyncoptional

boolean

When false, the API waits for a result and may return an in-progress response that can be polled. When true, the API returns a pollable search response immediately.

defaultfalse

webhookoptional

additionalProperties

false

Exactly one of oneOf

Constraints
required
["username"]
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "user_id"
    ]
  }
}
Constraints
required
["user_id"]
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "username"
    ]
  }
}
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Search envelope, completed timeline, or failed result.

application/json

Exactly one of oneOf

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
userrequired
tweetsrequired

array

Constraints
maxItems
100

Array items

next_cursoroptional

string

Opaque cursor for the next page. Omitted when no next page is available.

Constraints
minLength
1
maxLength
8192
Constraints
required
["search_metadata","search_parameters","user","tweets"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Cache-Hitheader · optional

Whether this request qualified for a zero-credit cached response.

boolean

X-Sukidata-Credits-Usedheader · optional

Credits charged when the search reaches Success or Error. Omitted while in progress; cached responses use 0.

integerint64

400Invalid request parameters.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

402Credit is insufficient; search was not created.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

403Access denied for this API key.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

413Request body is too large.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

415Request content type must be application/json.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Webhook · twitterWebhook

Optional Twitter webhook delivery.

POST{$request.body#/webhook/url}

Sent when the caller provides webhook.url and subscribes to a matching event. Failed deliveries may be retried.

Request body · required

application/json

idrequired

string

Webhook delivery/event ID. It matches X-Sukidata-Delivery.

objectrequired

string

const"event"

typerequired

string

enum["twitter.search.queued","twitter.search.processing","twitter.search.completed","twitter.search.failed"]

api_versionrequired

string

const"v1"

created_atrequired

stringdate-time

datarequired
Constraints
required
["id","object","type","api_version","created_at","data"]

additionalProperties

false

Request headers
X-Sukidata-Eventheader · required

string

enum["twitter.search.queued","twitter.search.processing","twitter.search.completed","twitter.search.failed"]

X-Sukidata-Deliveryheader · required

string

X-Sukidata-Timestampheader · required

string

X-Sukidata-Signatureheader · optional

HMAC signature in v1=<hex> format when a webhook secret is available for the authenticated API key.

string

Responses

2XXThe webhook endpoint accepted the delivery.

Get a Twitter timeline request

GET/v1/twitter/{search_id}

Parameters

search_idpath · required

Search ID returned by POST /v1/twitter. Malformed IDs return 400; IDs unavailable to the authenticated workspace return 404.

string

Constraints
maxLength
128
pattern
"^[A-Za-z0-9_-]+$"
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Search envelope, completed timeline, or failed result.

application/json

Exactly one of oneOf

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
userrequired
tweetsrequired

array

Constraints
maxItems
100

Array items

next_cursoroptional

string

Opaque cursor for the next page. Omitted when no next page is available.

Constraints
minLength
1
maxLength
8192
Constraints
required
["search_metadata","search_parameters","user","tweets"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Cache-Hitheader · optional

Whether this request qualified for a zero-credit cached response.

boolean

X-Sukidata-Credits-Usedheader · optional

Credits charged when the search reaches Success or Error. Omitted while in progress; cached responses use 0.

integerint64

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

403Access denied for this API key.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

404Search not found for this workspace context.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Search supported locations

GET/v1/serp/locations

Parameters

qquery · optional

Optional location search text. Omit it to list supported Google locations.

string

Constraints
maxLength
4096
limitquery · optional

Maximum number of locations to return. Defaults to 10.

integer

default10

Constraints
minimum
1
maximum
10

Responses

200Matching supported Google locations.

application/json

locationsrequired

array

Constraints
maxItems
10

Array items

Constraints
required
["locations"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

400Invalid request parameters.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

List supported Google parameters

GET/v1/serp/google-support

Responses

200Supported Google domains, country codes, interface languages, and restrict tokens.

application/json

domainsrequired
countriesrequired
languagesrequired
cr_countriesrequired
lr_languagesrequired
Constraints
required
["domains","countries","languages","cr_countries","lr_languages"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

List search activity

GET/v1/activity

Parameters

limitquery · optional

Maximum number of records to return. Defaults to 20.

integer

default20

Constraints
minimum
1
maximum
100
cursorquery · optional

Opaque cursor returned by the previous list response.

string

qquery · optional

Search by search ID, request ID, query, Twitter username or user ID, or location.

string

Constraints
maxLength
512
endpointquery · optional

Filter by product name or its /v1/... path.

string

enum["serp","/v1/serp","twitter","/v1/twitter"]

statusquery · optional

Filter by status. cache selects cached responses.

string

enum["success","running","failed","cache"]

api_key_idquery · optional

Filter by API key ID.

string

Constraints
pattern
"^[A-Za-z0-9_.-]{1,128}$"
fromquery · optional

Inclusive lower bound for created_at.

stringdate-time

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Recent requests in your Workspace.

application/json

datarequired

array

Array items

cursoroptional

string

Cursor to pass to the next request. Omitted when has_more=false.

has_morerequired

boolean

Constraints
required
["data","has_more"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

400Invalid request parameters.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Get search activity

GET/v1/activity/{search_id}

Parameters

search_idpath · required

string

Constraints
pattern
"^[A-Za-z0-9_-]{1,128}$"
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Request details in your Workspace.

application/json

search_idrequired

string

request_idoptional

string

Request ID to include when contacting support.

api_key_idoptional

string

API key id used by the original search request.

productrequired

string

enginerequired

string

statusrequired

string

enum["Queued","Processing","Success","Error"]

cache_hitrequired

boolean

Whether this search qualified for a zero-credit cached response.

credits_usedoptional

integerint64

Credits consumed by this search. Omitted until the search reaches Success or Error.

qoptional

string

Search query when available.

search_parametersoptional

object

Search parameters that can be reused in another request.

additionalProperties

true

location_requestedoptional

string

location_usedoptional

string

google_urloptional

stringuri

error_codeoptional

string

Error code returned for an unsuccessful search.

const"search_failed"

error_messageoptional

string

Error message returned for an unsuccessful search.

const"Search request failed"

json_endpointoptional

stringuri

JSON result file, available once the search reaches Success or Error.

raw_html_fileoptional

stringuri

HTML result file, included after the search finishes if HTML is available.

created_atrequired

stringdate-time

completed_atoptional

stringdate-time

Constraints
required
["search_id","product","engine","status","cache_hit","created_at"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

400Invalid request parameters.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

404Search not found for this workspace context.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

500Unexpected service error.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

Get a result file

GET/searches/{file_token}/{search_id}.{format}

Returns a result file referenced by search_metadata.json_endpoint or search_metadata.raw_html_file. File URLs do not require API authentication and remain available for one month, so keep them private. HTML is available only for products that capture a source page.

Parameters

file_tokenpath · required

string

Constraints
minLength
1
maxLength
128
pattern
"^[A-Za-z0-9_-]+$"
search_idpath · required

string

Constraints
maxLength
128
pattern
"^[A-Za-z0-9_-]+$"
formatpath · required

string

enum["json","html"]

Responses

200JSON search envelope for .json, or an HTML snapshot for .html.

application/json

Exactly one of oneOf

Exactly one of oneOf

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
search_informationrequired
organic_resultsoptional

array

adsoptional

array

Array items

answer_boxoptional
ai_overviewoptional
knowledge_graphoptional
local_resultsoptional
top_storiesoptional

array

Array items

images_resultsoptional

array

Array items

videos_resultsoptional

array

Array items

shopping_resultsoptional

array

related_questionsoptional

array

People Also Ask and related AI Overview results when available.

related_searchesoptional

array

paginationoptional
Constraints
required
["search_metadata","search_parameters","search_information"]

additionalProperties

true

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

Exactly one of oneOf

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
userrequired
tweetsrequired

array

Constraints
maxItems
100

Array items

next_cursoroptional

string

Opaque cursor for the next page. Omitted when no next page is available.

Constraints
minLength
1
maxLength
8192
Constraints
required
["search_metadata","search_parameters","user","tweets"]

additionalProperties

false

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

text/html

string

Response headers
Cache-Controlheader · optional

Caching policy for the result file.

string

404Search not found for this workspace context.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

503Service temporarily unavailable.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

AI

List available AI models

GET/v1/models

List the models available to your API key.

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Available models in the OpenAI-compatible list format.

application/json

objectrequired

const"list"

datarequired

array

Array items

Constraints
required
["object","data"]
defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Generate images

POST/v1/images/generations

Generate images from a prompt, with optional reference images. Returns Base64 data by default; set response_format to url for image URLs.

Request body · required

JSON or multipart request, up to 48 MiB. Optional reference images must be PNG, JPEG or WebP. The selected model determines the maximum number of reference images.

application/json

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]

Choose one field, image or images. Either accepts a single reference or an array.

imageoptional
imagesoptional
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "image",
      "images"
    ]
  }
}

multipart/form-data

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]
imageoptional

stringbinary

PNG, JPEG or WebP file. For multiple files, repeat the image[] field.

image[]optional

array

Constraints
minItems
1
maxItems
16

Array items

stringbinary

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Idempotency-Keyheader · optional

Reuse this key, parameters and files when retrying a task. The key is scoped to Workspace and operation, shared by synchronous and asynchronous submissions. Changed input returns 409. A new key creates a new task. Interrupted uploads must be retried within ten minutes of task creation; after that, the task fails without a charge and a new key is required.

string

Constraints
minLength
1
maxLength
128
pattern
"^[!-~]+$"

Responses

200Generated images.

application/json

createdrequired

integerint64

Task creation time, as a Unix timestamp in seconds.

datarequired

array

Constraints
minItems
1

Array items

b64_jsonoptional

string

Constraints
contentEncoding
"base64"
urloptional

stringuri

Image URL, available for 31 days from publication. Anyone with the URL can view the image.

additionalProperties

false

Exactly one of oneOf

Constraints
required
["b64_json"]
Constraints
required
["url"]
Constraints
required
["created","data"]

All of allOf

Output metadata, when available. Mixed-size batches omit the top-level size; individual dimensions are available in the task's images array.

backgroundoptional

enum["opaque","transparent"]

output_formatoptional

enum["png","jpeg","webp"]

sizeoptional

string

qualityoptional

enum["low","medium","high","xhigh","max"]

usageoptional
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Submit image generation

POST/v1/images/generations/async

Submit an image generation task. Poll the URL in the Location header for progress and results.

Request body · required

JSON or multipart request, up to 48 MiB. Optional reference images must be PNG, JPEG or WebP. The selected model determines the maximum number of reference images.

application/json

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]

Choose one field, image or images. Either accepts a single reference or an array.

imageoptional
imagesoptional
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "image",
      "images"
    ]
  }
}

multipart/form-data

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]
imageoptional

stringbinary

PNG, JPEG or WebP file. For multiple files, repeat the image[] field.

image[]optional

array

Constraints
minItems
1
maxItems
16

Array items

stringbinary

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Idempotency-Keyheader · optional

Reuse this key, parameters and files when retrying a task. The key is scoped to Workspace and operation, shared by synchronous and asynchronous submissions. Changed input returns 409. A new key creates a new task. Interrupted uploads must be retried within ten minutes of task creation; after that, the task fails without a charge and a new key is required.

string

Constraints
minLength
1
maxLength
128
pattern
"^[!-~]+$"

Responses

202Task ID and current status. Reusing an idempotency key returns the same task.

application/json

idrequired

string

objectrequired

const"image.task"

statusrequired
Constraints
required
["id","object","status"]
Response headers
X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Locationheader · optional

Authenticated URL for task detail and progress.

stringuri

defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Edit images

POST/v1/images/edits

Edit images using a prompt and reference images. Upload files with multipart/form-data or use image URLs in JSON. An optional mask selects the area to edit.

Request body · required

JSON or multipart request with at least one reference image, up to 48 MiB per request. Inputs must be PNG, JPEG or WebP. The selected model determines the maximum number of reference images.

application/json

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]

Choose one field, image or images. Either accepts a single reference or an array.

imageoptional
imagesoptional
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "image",
      "images"
    ]
  }
}
maskoptional

Any of anyOf

Constraints
required
["image"]
Constraints
required
["images"]

multipart/form-data

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]
imageoptional

stringbinary

PNG, JPEG or WebP file. For multiple files, repeat the image[] field.

image[]optional

array

Constraints
minItems
1
maxItems
16

Array items

stringbinary

maskoptional

stringbinary

PNG mask with an alpha channel, matching the first reference image's dimensions. Transparent areas mark where to edit. The mask does not count toward the reference-image limit.

Any of anyOf

Constraints
required
["image"]
Constraints
required
["image[]"]
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Idempotency-Keyheader · optional

Reuse this key, parameters and files when retrying a task. The key is scoped to Workspace and operation, shared by synchronous and asynchronous submissions. Changed input returns 409. A new key creates a new task. Interrupted uploads must be retried within ten minutes of task creation; after that, the task fails without a charge and a new key is required.

string

Constraints
minLength
1
maxLength
128
pattern
"^[!-~]+$"

Responses

200Generated images.

application/json

createdrequired

integerint64

Task creation time, as a Unix timestamp in seconds.

datarequired

array

Constraints
minItems
1

Array items

b64_jsonoptional

string

Constraints
contentEncoding
"base64"
urloptional

stringuri

Image URL, available for 31 days from publication. Anyone with the URL can view the image.

additionalProperties

false

Exactly one of oneOf

Constraints
required
["b64_json"]
Constraints
required
["url"]
Constraints
required
["created","data"]

All of allOf

Output metadata, when available. Mixed-size batches omit the top-level size; individual dimensions are available in the task's images array.

backgroundoptional

enum["opaque","transparent"]

output_formatoptional

enum["png","jpeg","webp"]

sizeoptional

string

qualityoptional

enum["low","medium","high","xhigh","max"]

usageoptional
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Submit an image edit

POST/v1/images/edits/async

Submit an image editing task. Uses the same parameters and input limits as synchronous editing.

Request body · required

JSON or multipart request with at least one reference image, up to 48 MiB per request. Inputs must be PNG, JPEG or WebP. The selected model determines the maximum number of reference images.

application/json

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]

Choose one field, image or images. Either accepts a single reference or an array.

imageoptional
imagesoptional
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "image",
      "images"
    ]
  }
}
maskoptional

Any of anyOf

Constraints
required
["image"]
Constraints
required
["images"]

multipart/form-data

Constraints
unevaluatedProperties
false

All of allOf

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]
imageoptional

stringbinary

PNG, JPEG or WebP file. For multiple files, repeat the image[] field.

image[]optional

array

Constraints
minItems
1
maxItems
16

Array items

stringbinary

maskoptional

stringbinary

PNG mask with an alpha channel, matching the first reference image's dimensions. Transparent areas mark where to edit. The mask does not count toward the reference-image limit.

Any of anyOf

Constraints
required
["image"]
Constraints
required
["image[]"]
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Idempotency-Keyheader · optional

Reuse this key, parameters and files when retrying a task. The key is scoped to Workspace and operation, shared by synchronous and asynchronous submissions. Changed input returns 409. A new key creates a new task. Interrupted uploads must be retried within ten minutes of task creation; after that, the task fails without a charge and a new key is required.

string

Constraints
minLength
1
maxLength
128
pattern
"^[!-~]+$"

Responses

202Task ID and current status. Reusing an idempotency key returns the same task.

application/json

idrequired

string

objectrequired

const"image.task"

statusrequired
Constraints
required
["id","object","status"]
Response headers
X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Locationheader · optional

Authenticated URL for task detail and progress.

stringuri

defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

List image tasks

GET/v1/images/tasks

List your Workspace's image tasks, including status, charges and image links.

Parameters

limitquery · optional

Maximum number of records to return. Defaults to 20.

integer

default20

Constraints
minimum
1
maximum
100
cursorquery · optional

Opaque cursor returned by the previous list response.

string

modelquery · optional

string

Constraints
maxLength
128
statusquery · optional
searchquery · optional

Search prompt text or task ID.

string

Constraints
maxLength
256
operationquery · optional

enum["images.generations","images.edits"]

api_key_idquery · optional

Filter by the key ID that submitted the request, including a deleted key. Omit for all sources, including Playground.

string

Constraints
maxLength
128
created_fromquery · optional

Inclusive creation time, as an RFC 3339 timestamp with timezone.

stringdate-time

created_toquery · optional

Exclusive creation time, as an RFC 3339 timestamp with timezone. Must be later than created_from.

stringdate-time

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Most recent tasks first.

application/json

objectrequired

const"list"

datarequired

array

Array items

next_cursorrequired

string | null

Constraints
required
["object","data","next_cursor"]
defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

Get an image task

GET/v1/images/tasks/{task_id}

Get a task's prompt, parameters, status, images and charge. Requires an API key from the same Workspace.

Parameters

task_idpath · required

string

Constraints
pattern
"^[A-Za-z0-9_-]{1,128}$"
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Image task detail.

application/json

idrequired

string

objectrequired

const"image.task"

modelrequired

string

operationrequired

enum["images.generations","images.edits"]

statusrequired
content_statusrequired
created_atrequired

stringdate-time

completed_atrequired

string | nulldate-time

promptrequired

string

parametersrequired

object

Parameters submitted with this task.

effective_parametersoptional

Size, quality and image count used for this task, including model defaults. Other settings are in parameters.

sizeoptional

string

qualityoptional

string

noptional

integer

imagesrequired

array

Array items

billingrequired
erroroptional
Constraints
required
["id","object","model","operation","status","content_status","created_at","completed_at","prompt","parameters","images","billing"]

All of allOf

Output metadata, when available. Mixed-size batches omit the top-level size; individual dimensions are available in the task's images array.

backgroundoptional

enum["opaque","transparent"]

output_formatoptional

enum["png","jpeg","webp"]

sizeoptional

string

qualityoptional

enum["low","medium","high","xhigh","max"]

usageoptional
defaultHTTP errors: 400 invalid input or model; 401 missing or invalid API key; 402 insufficient AI balance; 403 access denied; 404 task not found; 409 idempotency conflict; 410 expired upload or image link; 413 request too large; 502 generation failed; 503 service unavailable or result pending. If X-Sukidata-Task-ID is present, query the task before retrying.

application/json

errorrequired
Constraints
required
["error"]
Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

X-Sukidata-Task-IDheader · optional

Task ID, returned once a task is created. Use it to check the result after a timeout.

string

JEV Decisions

POST/v1/systemone

Classify text, check conditions and score content with JEV, TypeSafe's System One model. Provide context in state and define questions; answers and usage are returned in the same response.

JEV guide

Request body · required

JSON request body, up to 1 MiB.

application/json

modelrequired

string

Use jev-latest for the current release, jev-preview for preview releases, or a versioned ID such as jev-1.13.0 to pin a version.

examples["jev-latest","jev-preview","jev-1.13.0"]

Constraints
minLength
1
maxLength
128
staterequired

DecisionContent

Text, JSON object or array to evaluate. Every question uses this context independently.

questionsrequired

object

Questions keyed by a name you choose. Each question specifies a type (choice, noul or score), instructions and any criteria.

Constraints
minProperties
1
maxProperties
1024

additionalProperties

Constraints
required
["model","state","questions"]

additionalProperties

false

Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Idempotency-Keyheader · optional

Use a unique key for each evaluation. After a timeout, retry with the same key, API key and JSON input. Completed requests return the original result without another execution or charge. For 409 request_in_progress, wait and retry with the same key. Changing input or API key returns 409 idempotency_conflict. Omitting or changing the key creates a new billable request.

string

Constraints
minLength
1
maxLength
128
pattern
"^[!-~]+$"

Responses

200Structured answers and request usage.

application/json

idrequired

string

Sukidata decision request ID.

modelrequired

string

Model version used for this evaluation.

answersrequired

object

additionalProperties

typerequired

enum["noul","choice","score"]

nouloptional

number

Probability that the condition is true, not its intensity. Values near 0.5 express uncertainty.

Constraints
minimum
0
maximum
1
choiceoptional

string

Key of the option with the highest probability.

scoreoptional

number

Probability-weighted mean of zero-based criteria indices; may be fractional.

confidenceoptional

number

Distribution-derived confidence for choice and score, not the probability that an answer is correct. Not returned for noul.

Constraints
minimum
0
maximum
1
probabilitiesoptional

object

Distribution over choice keys or zero-based score indices.

additionalProperties

number

Constraints
minimum
0
maximum
1
legendoptional

object

Maps zero-based score indices to the supplied criteria.

additionalProperties

true

Constraints
required
["type"]
usagerequired
input_tokensrequired

integer

Constraints
minimum
0
output_tokensoptional

integer

Output token usage; free of charge.

Constraints
minimum
0
costrequired

number

USD cost for this evaluation.

Constraints
minimum
0
Constraints
required
["input_tokens","cost"]
Constraints
required
["id","model","answers","usage"]
Response headers
X-Sukidata-Request-IDheader · optional

Request ID to include when contacting support.

string

401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

403Access denied for this API key.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

default400 invalid input or unavailable model; 402 insufficient AI balance; 409 idempotency conflict or request still processing; 413 body too large; 502 evaluation failed; 503 unavailable.

application/json

Exactly one of oneOf

messagerequired

string

error_typerequired

string

Constraints
required
["message","error_type"]
errorrequired
Constraints
required
["error"]

additionalProperties

false

View a JEV request

GET/v1/decisions/{request_id}

Retrieve the saved input and response for a JEV request in your Workspace. This read-only call does not run the model or incur another charge. The response can be null while the result is not yet saved or when evaluation failed.

Parameters

request_idpath · required

string

Constraints
pattern
"^[A-Za-z0-9_-]{1,128}$"
Request headers

Authorization: Bearer $SUKIDATA_API_KEY

Responses

200Saved request and response.

application/json

idrequired

string

modelrequired

string

Requested model name.

statusrequired

Execution status, independent of billing status.

enum["authorizing","ready","running","succeeded","failed","unknown"]

requestrequired
responserequired

Exactly one of oneOf

null

error_codeoptional

string

created_atrequired

stringdate-time

Constraints
required
["id","model","status","request","response","created_at"]
401API key missing, invalid, inactive, revoked, or expired.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

403Access denied for this API key.

application/json

errorrequired
Constraints
required
["error"]

additionalProperties

false

Response headers
X-Request-IDheader · optional

Request identifier to include when contacting support.

default400 invalid request ID or query parameters; 404 request not found; 503 unavailable.

application/json

messagerequired

string

error_typerequired

string

Constraints
required
["message","error_type"]

Schemas

ImageReferenceFields

ImageReferenceFields

Choose one field, image or images. Either accepts a single reference or an array.

imageoptional
imagesoptional
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "image",
      "images"
    ]
  }
}
ImageReferences

ImageReferences

Exactly one of oneOf

array

Constraints
minItems
1
maxItems
16

Array items

ImageReference

ImageReference

Exactly one of oneOf

string

Public HTTPS image URL or a PNG, JPEG or WebP Base64 data URL.

Constraints
minLength
1
image_urloptional

string

Public HTTPS image URL or a PNG, JPEG or WebP Base64 data URL.

Constraints
minLength
1
b64_jsonoptional

string

PNG, JPEG or WebP reference image encoded as Base64.

Constraints
minLength
1
contentEncoding
"base64"

additionalProperties

false

Exactly one of oneOf

Constraints
required
["image_url"]
Constraints
required
["b64_json"]
ImageMask

ImageMask

PNG mask with an alpha channel, matching the first reference image's dimensions. Transparent areas mark where to edit. The mask does not count toward the reference-image limit.

All of allOf

ImageMultipartFields

ImageMultipartFields

imageoptional

stringbinary

PNG, JPEG or WebP file. For multiple files, repeat the image[] field.

image[]optional

array

Constraints
minItems
1
maxItems
16

Array items

stringbinary

DecisionRequest

DecisionRequest

modelrequired

string

Use jev-latest for the current release, jev-preview for preview releases, or a versioned ID such as jev-1.13.0 to pin a version.

examples["jev-latest","jev-preview","jev-1.13.0"]

Constraints
minLength
1
maxLength
128
staterequired

DecisionContent

Text, JSON object or array to evaluate. Every question uses this context independently.

questionsrequired

object

Questions keyed by a name you choose. Each question specifies a type (choice, noul or score), instructions and any criteria.

Constraints
minProperties
1
maxProperties
1024

additionalProperties

Constraints
required
["model","state","questions"]

additionalProperties

false

DecisionContent

DecisionContent

Exactly one of oneOf

string

object

additionalProperties

true

array

Array items

DecisionQuestion

DecisionQuestion

typerequired

enum["noul","choice","score"]

instructionsoptional

One explicit, self-contained question about the shared state.

Exactly one of oneOf

null

criteriaoptional

Optional true/false descriptions for noul; named options for choice; ordered, descriptive levels from low to high for score.

Constraints
required
["type"]

All of allOf

Conditions and other constraints
JSON Schema
{
  "if": {
    "properties": {
      "type": {
        "const": "noul"
      }
    }
  },
  "then": {
    "properties": {
      "criteria": {
        "type": [
          "object",
          "null"
        ],
        "properties": {
          "true": {
            "$ref": "#/components/schemas/DecisionContent"
          },
          "false": {
            "$ref": "#/components/schemas/DecisionContent"
          }
        }
      }
    }
  }
}
Conditions and other constraints
JSON Schema
{
  "if": {
    "properties": {
      "type": {
        "const": "choice"
      }
    }
  },
  "then": {
    "required": [
      "criteria"
    ],
    "properties": {
      "criteria": {
        "type": "object",
        "minProperties": 1,
        "maxProperties": 255,
        "additionalProperties": {
          "oneOf": [
            {
              "$ref": "#/components/schemas/DecisionContent"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    }
  }
}
Conditions and other constraints
JSON Schema
{
  "if": {
    "properties": {
      "type": {
        "const": "score"
      }
    }
  },
  "then": {
    "required": [
      "criteria"
    ],
    "properties": {
      "criteria": {
        "type": "array",
        "minItems": 2,
        "maxItems": 10,
        "items": {
          "$ref": "#/components/schemas/DecisionContent"
        }
      }
    }
  }
}
DecisionDetail

DecisionDetail

idrequired

string

modelrequired

string

Requested model name.

statusrequired

Execution status, independent of billing status.

enum["authorizing","ready","running","succeeded","failed","unknown"]

requestrequired
responserequired

Exactly one of oneOf

null

error_codeoptional

string

created_atrequired

stringdate-time

Constraints
required
["id","model","status","request","response","created_at"]
DecisionResponse

DecisionResponse

idrequired

string

Sukidata decision request ID.

modelrequired

string

Model version used for this evaluation.

answersrequired

object

additionalProperties

typerequired

enum["noul","choice","score"]

nouloptional

number

Probability that the condition is true, not its intensity. Values near 0.5 express uncertainty.

Constraints
minimum
0
maximum
1
choiceoptional

string

Key of the option with the highest probability.

scoreoptional

number

Probability-weighted mean of zero-based criteria indices; may be fractional.

confidenceoptional

number

Distribution-derived confidence for choice and score, not the probability that an answer is correct. Not returned for noul.

Constraints
minimum
0
maximum
1
probabilitiesoptional

object

Distribution over choice keys or zero-based score indices.

additionalProperties

number

Constraints
minimum
0
maximum
1
legendoptional

object

Maps zero-based score indices to the supplied criteria.

additionalProperties

true

Constraints
required
["type"]
usagerequired
input_tokensrequired

integer

Constraints
minimum
0
output_tokensoptional

integer

Output token usage; free of charge.

Constraints
minimum
0
costrequired

number

USD cost for this evaluation.

Constraints
minimum
0
Constraints
required
["input_tokens","cost"]
Constraints
required
["id","model","answers","usage"]
AIModel

AIModel

idrequired

string

objectrequired

const"model"

createdrequired

integerint64

Unix timestamp in seconds.

owned_byrequired

const"sukidata"

Constraints
required
["id","object","created","owned_by"]
ImageRequestFields

ImageRequestFields

modelrequired

string

An available model ID from /v1/models, such as gpt-image-2.5 or gpt-image-2.

Constraints
minLength
1
maxLength
128
promptrequired

string

Constraints
minLength
1
maxLength
32000
sizeoptional

string

Requested size as auto or WIDTHxHEIGHT. Width and height must be positive integers up to 3840, with an aspect ratio between 1:3 and 3:1 and 655360 to 8294400 total pixels. Omission uses the model default.

Constraints
minLength
1
maxLength
32
pattern
"^(auto|[1-9][0-9]{0,3}x[1-9][0-9]{0,3})$"
qualityoptional

string

Quality supported by the selected model. Omission uses the model default.

Constraints
minLength
1
maxLength
16
noptional

integer

Number of images to generate, subject to the selected model's limit. gpt-image-2.5 and gpt-image-2 support 1 to 4 images per request; the default is 1.

Constraints
minimum
1
maximum
10
output_formatoptional

string

enum["png","jpeg","webp"]

default"png"

backgroundoptional

string

Transparent output requires PNG or WebP.

enum["auto","opaque","transparent"]

moderationoptional

string

enum["auto","low"]

output_compressionoptional

integer

Output compression for JPEG and WebP. Accepted but not applied to PNG.

Constraints
minimum
0
maximum
100
response_formatoptional

string

Delivery format for synchronous responses. Asynchronous tasks expose public image URLs in task detail.

enum["b64_json","url"]

default"b64_json"

streamoptional

boolean

Set to false or omit. For background generation, use the asynchronous endpoints.

constfalse

useroptional

string

Your end-user identifier, saved with the task.

Constraints
maxLength
256
Constraints
required
["model","prompt"]
ImageResult

ImageResult

createdrequired

integerint64

Task creation time, as a Unix timestamp in seconds.

datarequired

array

Constraints
minItems
1

Array items

b64_jsonoptional

string

Constraints
contentEncoding
"base64"
urloptional

stringuri

Image URL, available for 31 days from publication. Anyone with the URL can view the image.

additionalProperties

false

Exactly one of oneOf

Constraints
required
["b64_json"]
Constraints
required
["url"]
Constraints
required
["created","data"]
ImageResultMetadata

ImageResultMetadata

Output metadata, when available. Mixed-size batches omit the top-level size; individual dimensions are available in the task's images array.

backgroundoptional

enum["opaque","transparent"]

output_formatoptional

enum["png","jpeg","webp"]

sizeoptional

string

qualityoptional

enum["low","medium","high","xhigh","max"]

usageoptional
ImageTokenUsage

ImageTokenUsage

Token usage, when available. Per-image pricing does not add token charges.

input_tokensrequired

integer

Constraints
minimum
0
output_tokensrequired

integer

Constraints
minimum
0
total_tokensrequired

integer

Constraints
minimum
0
input_tokens_detailsoptional
output_tokens_detailsoptional
Constraints
required
["input_tokens","output_tokens","total_tokens"]
ImageTokenDetails

ImageTokenDetails

text_tokensoptional

integer

Constraints
minimum
0
image_tokensoptional

integer

Constraints
minimum
0
cached_tokensoptional

integer

Constraints
minimum
0
ImageTaskStatus

ImageTaskStatus

string

Task progress. An unknown result is not a confirmed failure; query the same task again.

enum["queued","processing","completed","failed","unknown"]

ImageContentStatus

ImageContentStatus

string

Availability of the generated image files.

enum["pending","ready","unavailable"]

ImageTaskSummary

ImageTaskSummary

idrequired

string

modelrequired

string

operationrequired

enum["images.generations","images.edits"]

prompt_previewrequired

string

statusrequired
content_statusrequired
billing_statusrequired

string

Billing status. A completed task may still have a pending charge.

billingrequired
api_key_idrequired

string | null

API key ID used to submit the task. Null if unavailable.

image_countrequired

integer

Number of generated images available in this response.

Constraints
minimum
0
imagesrequired

array

Image URLs and expiry times. Empty until the images are ready.

Array items

indexrequired

integer

Constraints
minimum
0
urlrequired

stringuri

url_expires_atoptional

stringdate-time

Public link expiry time. Save the image before this time; expired images cannot be retrieved through the API.

thumbnail_urloptional

stringuri

Preview image URL, when available. Expires with the original. Use url for full-resolution images.

widthrequired

integer

Original image width in pixels.

Constraints
minimum
1
heightrequired

integer

Original image height in pixels.

Constraints
minimum
1
Constraints
required
["index","url","width","height"]
created_atrequired

stringdate-time

completed_atrequired

string | nulldate-time

urlrequired

stringuri

Task detail URL. Requires API authentication.

Constraints
required
["id","model","operation","prompt_preview","status","content_status","billing_status","billing","api_key_id","image_count","images","created_at","completed_at","url"]
ImageFile

ImageFile

indexrequired

integer

Constraints
minimum
0
urlrequired

stringuri

url_expires_atoptional

stringdate-time

Public link expiry time. Save the image before this time; expired images cannot be retrieved through the API.

thumbnail_urloptional

stringuri

Preview image URL, when available. Expires with the original. Use url for full-resolution images.

widthrequired

integer

Constraints
minimum
1
heightrequired

integer

Constraints
minimum
1
formatrequired

enum["png","jpeg","webp"]

Constraints
required
["index","url","width","height","format"]
ImageTask

ImageTask

idrequired

string

objectrequired

const"image.task"

modelrequired

string

operationrequired

enum["images.generations","images.edits"]

statusrequired
content_statusrequired
created_atrequired

stringdate-time

completed_atrequired

string | nulldate-time

promptrequired

string

parametersrequired

object

Parameters submitted with this task.

effective_parametersoptional

Size, quality and image count used for this task, including model defaults. Other settings are in parameters.

sizeoptional

string

qualityoptional

string

noptional

integer

imagesrequired

array

Array items

billingrequired
erroroptional
Constraints
required
["id","object","model","operation","status","content_status","created_at","completed_at","prompt","parameters","images","billing"]
ImageBilling

ImageBilling

balance_typerequired

const"ai"

currencyrequired

const"USD"

statusrequired

string

Billing status. Amounts are null when the status is unavailable.

enum["pending","reserved","review","settled","released","rejected","unavailable"]

reserved_amountrequired

string | null

Funds currently reserved for this task, in USD. Null if pending or unavailable.

Constraints
pattern
"^[0-9]+\\.[0-9]{9}$"
charged_amountrequired

string | null

Charge in USD, after any corrections. Null if pending or unavailable.

Constraints
pattern
"^[0-9]+\\.[0-9]{9}$"
original_charged_amountoptional

string | null

Original charge in USD, before corrections. Null if pending or unavailable.

Constraints
pattern
"^[0-9]+\\.[0-9]{9}$"
credited_amountoptional

string | null

Amount returned to AI balance for this task, in USD. Null if pending or unavailable.

Constraints
pattern
"^[0-9]+\\.[0-9]{9}$"
Constraints
required
["balance_type","currency","status","reserved_amount","charged_amount"]
ImageErrorDetail

ImageErrorDetail

coderequired

string

messagerequired

string

typeoptional

string

Constraints
required
["code","message"]
RequestID

RequestID

string

Constraints
minLength
1
maxLength
128
pattern
"^[!-~]+$"
ErrorEnvelope

ErrorEnvelope

errorrequired
Constraints
required
["error"]

additionalProperties

false

ActivityList

ActivityList

datarequired

array

Array items

cursoroptional

string

Cursor to pass to the next request. Omitted when has_more=false.

has_morerequired

boolean

Constraints
required
["data","has_more"]

additionalProperties

false

ActivityItem

ActivityItem

search_idrequired

string

request_idoptional

string

Request ID to include when contacting support.

api_key_idoptional

string

API key id used by the original search request.

productrequired

string

enginerequired

string

statusrequired

string

enum["Queued","Processing","Success","Error"]

cache_hitrequired

boolean

Whether this search qualified for a zero-credit cached response.

credits_usedoptional

integerint64

Credits consumed by this search. Omitted until the search reaches Success or Error.

qoptional

string

Search query when available.

search_parametersoptional

object

Search parameters that can be reused in another request.

additionalProperties

true

location_requestedoptional

string

location_usedoptional

string

google_urloptional

stringuri

error_codeoptional

string

Error code returned for an unsuccessful search.

const"search_failed"

error_messageoptional

string

Error message returned for an unsuccessful search.

const"Search request failed"

json_endpointoptional

stringuri

JSON result file, available once the search reaches Success or Error.

raw_html_fileoptional

stringuri

HTML result file, included after the search finishes if HTML is available.

created_atrequired

stringdate-time

completed_atoptional

stringdate-time

Constraints
required
["search_id","product","engine","status","cache_hit","created_at"]

additionalProperties

false

GoogleLocations

GoogleLocations

locationsrequired

array

Constraints
maxItems
10

Array items

Constraints
required
["locations"]

additionalProperties

false

GoogleSupport

GoogleSupport

domainsrequired
countriesrequired
languagesrequired
cr_countriesrequired
lr_languagesrequired
Constraints
required
["domains","countries","languages","cr_countries","lr_languages"]

additionalProperties

false

StringList

StringList

array

Array items

string

GoogleLocation

GoogleLocation

idrequired

string

google_idrequired

integerint64

google_parent_idoptional

integerint64

namerequired

string

canonical_namerequired

string

country_coderequired

string

target_typerequired

string

reachrequired

integerint64

gpsoptional

array

Constraints
minItems
2
maxItems
2

Array items

number

Constraints
required
["id","google_id","name","canonical_name","country_code","target_type","reach"]

additionalProperties

false

SERPRequest

SERPRequest

Parameters for a Google SERP request. String fields are trimmed and limited to 4096 UTF-8 bytes unless a narrower field-specific limit is documented.

engineoptional

string

enum["google"]

default"google"

Constraints
maxLength
4096
qrequired

string

Google search query. Advanced operators such as site:, inurl:, and intitle: are allowed.

Constraints
minLength
1
maxLength
4096
pattern
"\\S"
as_dtoptional

string | null

Advanced Google search parameter used with as_sitesearch to include or exclude a site.

Constraints
maxLength
4096
as_epqoptional

string | null

Advanced Google exact phrase query.

Constraints
maxLength
4096
as_eqoptional

string | null

Advanced Google excluded query terms.

Constraints
maxLength
4096
as_lqoptional

string | null

Advanced Google linked-page query URL.

Constraints
maxLength
4096
as_nlooptional

string | null

Advanced Google numeric range lower bound.

Constraints
maxLength
4096
as_nhioptional

string | null

Advanced Google numeric range upper bound.

Constraints
maxLength
4096
as_oqoptional

string | null

Advanced Google optional terms query.

Constraints
maxLength
4096
as_qoptional

string | null

Advanced Google additional query terms.

Constraints
maxLength
4096
as_qdroptional

string | null

Advanced Google quick date range, such as d10, w2, m1, or y.

Constraints
maxLength
4096
as_rqoptional

string | null

Advanced Google related-page query URL.

Constraints
maxLength
4096
as_sitesearchoptional

string | null

Advanced Google site restriction or exclusion target.

Constraints
maxLength
4096
locationoptional

string | null

Supported Google search location name or ID returned by GET /v1/serp/locations. Mutually exclusive with uule.

Constraints
maxLength
4096
google_domainoptional

string

Google search domain without scheme or path, such as google.com, google.de, google.co.jp, or google.com.br. Input is case-insensitive, normalized to lowercase, and validated against the supported Google domain list.

default"google.com"

Constraints
maxLength
4096
pattern
"^[Gg][Oo][Oo][Gg][Ll][Ee](?:\\.[Cc][Oo][Mm]|\\.[A-Za-z]{2}|\\.(?:[Cc][Oo][Mm]|[Cc][Oo])\\.[A-Za-z]{2})$"
gloptional

string

Two-letter Google country code. Input is case-insensitive, normalized to lowercase, and validated against the supported Google country list.

default"us"

Constraints
minLength
2
maxLength
2
pattern
"^[A-Za-z]{2}$"
hloptional

string

Google interface language code such as en, ja, pt-br, or zh-cn. Input is normalized to lowercase and validated against the supported Google interface language list.

default"en"

Constraints
minLength
2
maxLength
32
pattern
"^[A-Za-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$"
uuleoptional

string | null

Google encoded location. Mutually exclusive with location.

Constraints
maxLength
4096
latoptional

Latitude for GPS-based Google localization. Must be used with lon and is mutually exclusive with location and uule.

Exactly one of oneOf

number

Constraints
minimum
-90
maximum
90

string

Constraints
pattern
"^-?(?:\\d+|\\d*\\.\\d+)(?:[eE][+-]?\\d+)?$"

null

lonoptional

Longitude for GPS-based Google localization. Must be used with lat and is mutually exclusive with location and uule.

Exactly one of oneOf

number

Constraints
minimum
-180
maximum
180

string

Constraints
pattern
"^-?(?:\\d+|\\d*\\.\\d+)(?:[eE][+-]?\\d+)?$"

null

radiusoptional

Search radius for location or GPS-based localization. Maximum is 199 for desktop and 1000 for tablet or mobile. Mutually exclusive with uule.

Exactly one of oneOf

number

Constraints
minimum
1

string

Constraints
pattern
"^(?:\\d+|\\d*\\.\\d+)(?:[eE][+-]?\\d+)?$"

null

ludocidoptional

string | null

Google CID for a place result.

Constraints
maxLength
4096
lsigoptional

string | null

Google lsig value used by some local and knowledge graph views.

Constraints
maxLength
4096
kgmidoptional

string | null

Google Knowledge Graph entity ID.

Constraints
maxLength
4096
sioptional

string | null

Google encrypted/cached search parameter token.

Constraints
maxLength
4096
ibpoptional

string | null

Google layout or expansion parameter.

Constraints
maxLength
4096
udsoptional

string | null

Google filter token returned by SERP filter links.

Constraints
maxLength
4096
croptional

string | null

Google country restrict filter, as one or more countryXX tokens separated by |, such as countryUS|countryJP.

Constraints
maxLength
4096
lroptional

string | null

Google language restrict filter, as one or more lang_xx tokens separated by |, such as lang_en|lang_zh-CN.

Constraints
maxLength
4096
tbsoptional

string | null

Constraints
maxLength
4096
tbmoptional

string | null

Supported Google search type. Omit the parameter for regular Google Search.

enum["isch","lcl","vid","nws","shop","pts",null]

Constraints
maxLength
4096
safeoptional

string

enum["off","active"]

default"off"

Constraints
maxLength
4096
nfproptional

boolean

defaultfalse

filteroptional

boolean

defaulttrue

startoptional

integer

default0

Constraints
minimum
0
deviceoptional

string

enum["desktop","tablet","mobile"]

default"desktop"

Constraints
maxLength
4096
asyncoptional

boolean

When false, the API waits for a result and may return an in-progress response that can be polled. When true, the API returns a pollable search response immediately.

defaultfalse

no_cacheoptional

boolean

defaultfalse

webhookoptional
Constraints
required
["q"]

additionalProperties

false

TwitterRequest

TwitterRequest

Parameters for one page of a public Twitter user timeline. Provide exactly one user identifier.

usernameoptional

string

Twitter username, with or without a leading @.

Constraints
minLength
1
maxLength
51
pattern
"^@?[A-Za-z0-9_]+$"
user_idoptional

string

Numeric Twitter user ID.

Constraints
minLength
1
maxLength
32
pattern
"^[0-9]+$"
max_resultsoptional

integer

Maximum number of posts to return from this page.

default20

Constraints
minimum
1
maximum
100
cursoroptional

string

Opaque next_cursor value returned by a previous request.

Constraints
minLength
1
maxLength
8192
asyncoptional

boolean

When false, the API waits for a result and may return an in-progress response that can be polled. When true, the API returns a pollable search response immediately.

defaultfalse

webhookoptional

additionalProperties

false

Exactly one of oneOf

Constraints
required
["username"]
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "user_id"
    ]
  }
}
Constraints
required
["user_id"]
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "username"
    ]
  }
}
WebhookConfig

WebhookConfig

urlrequired

stringuri

HTTPS webhook URL with a public hostname and no username/password. Localhost, private IPs, special-use IP ranges, and Sukidata system header overrides are rejected. Redirects are not followed.

Constraints
pattern
"^https://"
headersoptional

object

Optional custom headers. Header names must be valid HTTP header field names, names are canonicalized, case-insensitive duplicates are rejected, values must not be multiline, and names starting with x-sukidata- are reserved.

additionalProperties

string

eventsoptional

array

default["serp.search.completed","serp.search.failed"]

Constraints
minItems
1
uniqueItems
true

Array items

string

enum["serp.search.queued","serp.search.processing","serp.search.completed","serp.search.failed"]

Constraints
required
["url"]

additionalProperties

false

TwitterWebhookConfig

TwitterWebhookConfig

urlrequired

stringuri

HTTPS webhook URL with a public hostname and no username/password. Localhost, private IPs, special-use IP ranges, and Sukidata system header overrides are rejected. Redirects are not followed.

Constraints
pattern
"^https://"
headersoptional

object

Optional custom headers. Header names must be valid HTTP header field names, names are canonicalized, case-insensitive duplicates are rejected, values must not be multiline, and names starting with x-sukidata- are reserved.

additionalProperties

string

eventsoptional

array

default["twitter.search.completed","twitter.search.failed"]

Constraints
minItems
1
uniqueItems
true

Array items

string

enum["twitter.search.queued","twitter.search.processing","twitter.search.completed","twitter.search.failed"]

Constraints
required
["url"]

additionalProperties

false

WebhookPayload

WebhookPayload

idrequired

string

Webhook delivery/event ID. It matches X-Sukidata-Delivery.

objectrequired

string

const"event"

typerequired

string

enum["serp.search.queued","serp.search.processing","serp.search.completed","serp.search.failed"]

api_versionrequired

string

const"v1"

created_atrequired

stringdate-time

datarequired
Constraints
required
["id","object","type","api_version","created_at","data"]

additionalProperties

false

WebhookData

WebhookData

objectrequired
Constraints
required
["object"]

additionalProperties

false

WebhookSearchObject

WebhookSearchObject

idrequired

string

objectrequired

string

const"search"

endpointrequired

string

const"/v1/serp"

urlrequired

stringuri

Authenticated API URL for fetching the search status or result.

search_metadatarequired
search_parametersrequired
search_informationoptional
organic_resultsoptional

array

usagerequired
erroroptional
Constraints
required
["id","object","endpoint","url","search_metadata","search_parameters","usage"]

additionalProperties

true

SearchMetadata

SearchMetadata

idrequired

string

statusrequired

string

enum["Queued","Processing","Success","Error"]

json_endpointoptional

stringuri

File URL for this search's JSON snapshot. Available after the search reaches Success or Error and remains accessible for one month. The URL does not require API authentication; keep it private.

raw_html_fileoptional

stringuri

File URL for this search's HTML snapshot when available. It remains accessible for one month and does not require API authentication; keep it private.

google_urloptional

stringuri

Google Search URL associated with this result.

created_atrequired

stringdate-time

Time when the search was created.

processed_atoptional

stringdate-time

Time when the search reached a terminal state.

total_time_takenrequired

number

Elapsed time in seconds, rounded to at most two decimal places. Google's displayed SERP timing, when available, is search_information.time_taken_displayed.

Constraints
minimum
0
Constraints
required
["id","status","created_at","total_time_taken"]

additionalProperties

false

WebhookUsageFields

WebhookUsageFields

cache_hitrequired

boolean

Whether this search qualified for a zero-credit cached response.

credits_usedoptional

integerint64

Credits consumed by this search.

Constraints
required
["cache_hit"]

additionalProperties

false

ErrorDetail

ErrorDetail

coderequired

string

const"search_failed"

messagerequired

string

const"Search request failed"

Constraints
required
["code","message"]

additionalProperties

false

SearchParameters

SearchParameters

enginerequired

string

const"google"

Constraints
maxLength
4096
qrequired

string

Constraints
minLength
1
maxLength
4096
pattern
"\\S"
location_requestedoptional

string

Original human-readable location requested by the caller when location is supplied.

Constraints
maxLength
4096
location_usedoptional

string

Resolved Google location when location is supplied.

Constraints
maxLength
4096
as_dtoptional

string | null

Constraints
maxLength
4096
as_epqoptional

string | null

Constraints
maxLength
4096
as_eqoptional

string | null

Constraints
maxLength
4096
as_lqoptional

string | null

Constraints
maxLength
4096
as_nlooptional

string | null

Constraints
maxLength
4096
as_nhioptional

string | null

Constraints
maxLength
4096
as_oqoptional

string | null

Constraints
maxLength
4096
as_qoptional

string | null

Constraints
maxLength
4096
as_qdroptional

string | null

Constraints
maxLength
4096
as_rqoptional

string | null

Constraints
maxLength
4096
as_sitesearchoptional

string | null

Constraints
maxLength
4096
google_domainrequired

string

Constraints
maxLength
4096
pattern
"^google(?:\\.com|\\.[a-z]{2}|\\.(?:com|co)\\.[a-z]{2})$"
glrequired

string

Constraints
minLength
2
maxLength
2
pattern
"^[a-z]{2}$"
hlrequired

string

Constraints
minLength
2
maxLength
32
pattern
"^[a-z]{2,3}(?:-[a-z0-9]{2,8})*$"
uuleoptional

string | null

Constraints
maxLength
4096
ludocidoptional

string | null

Constraints
maxLength
4096
lsigoptional

string | null

Constraints
maxLength
4096
kgmidoptional

string | null

Constraints
maxLength
4096
sioptional

string | null

Constraints
maxLength
4096
ibpoptional

string | null

Constraints
maxLength
4096
udsoptional

string | null

Constraints
maxLength
4096
croptional

string | null

Constraints
maxLength
4096
lroptional

string | null

Constraints
maxLength
4096
tbsoptional

string | null

Constraints
maxLength
4096
tbmoptional

string | null

Constraints
maxLength
4096
safeoptional

string

enum["off","active"]

Constraints
maxLength
4096
nfproptional

boolean

filteroptional

boolean

startoptional

integer

Constraints
minimum
0
devicerequired

string

enum["desktop","tablet","mobile"]

Constraints
maxLength
4096
Constraints
required
["engine","q","google_domain","gl","hl","device"]

additionalProperties

false

SERPSearchEnvelope

SERPSearchEnvelope

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

SERPEnvelope
SERPCompletedResultEnvelope

SERPCompletedResultEnvelope

search_metadatarequired
search_parametersrequired
search_informationrequired
organic_resultsoptional

array

adsoptional

array

Array items

answer_boxoptional
ai_overviewoptional
knowledge_graphoptional
local_resultsoptional
top_storiesoptional

array

Array items

images_resultsoptional

array

Array items

videos_resultsoptional

array

Array items

shopping_resultsoptional

array

related_questionsoptional

array

People Also Ask and related AI Overview results when available.

related_searchesoptional

array

paginationoptional
Constraints
required
["search_metadata","search_parameters","search_information"]

additionalProperties

true

SERPFailedResultEnvelope

SERPFailedResultEnvelope

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

SERPSearchInformation

SERPSearchInformation

Search metadata from the Google results page and request.

query_displayedrequired

string

Constraints
minLength
1
total_resultsoptional

integer

Constraints
minimum
0
time_taken_displayedoptional

number

Time displayed by Google on the SERP, in seconds, when present. This is independent of search_metadata.total_time_taken.

Constraints
minimum
0
Constraints
required
["query_displayed"]

additionalProperties

true

SERPOrganicResult

SERPOrganicResult

Structured Google organic search result.

positionrequired

integer

1-based rank in returned SERP order. Items must be strictly increasing by array order and cannot repeat.

Constraints
minimum
1
titlerequired

string

Constraints
minLength
1
linkrequired

stringuri

Final HTTP(S) destination URL.

displayed_linkoptional

string

Display URL text shown by Google when available; falls back to the result host.

sourceoptional

string

Source label shown by Google when available; falls back to the result host.

Constraints
minLength
1
snippetrequired

string

SERP-provided snippet. Empty string is allowed when Google did not provide one.

snippet_highlighted_wordsoptional

array

Array items

string

faviconoptional

string

Favicon URL when available. It must not be a data URL.

dateoptional

string

sitelinksoptional

object

additionalProperties

true

about_this_resultoptional

object

additionalProperties

true

about_page_linkoptional

stringuri

Constraints
required
["position","title","link","snippet"]

additionalProperties

true

SERPLinkedResult

SERPLinkedResult

Parsed linked rich SERP card, used for ads, top stories, and videos.

positionrequired

integer

Constraints
minimum
1
titlerequired

string

Constraints
minLength
1
linkrequired

stringuri

sourceoptional

string

snippetoptional

string

dateoptional

string

Constraints
required
["position","title","link"]

additionalProperties

true

SERPImageResult

SERPImageResult

positionrequired

integer

Constraints
minimum
1
titlerequired

string

Constraints
minLength
1
linkoptional

stringuri

thumbnailoptional

stringuri

Constraints
required
["position","title"]

additionalProperties

true

SERPShoppingResult

SERPShoppingResult

positionrequired

integer

Constraints
minimum
1
titlerequired

string

Constraints
minLength
1
linkoptional

stringuri

priceoptional

string

sourceoptional

string

thumbnailoptional

stringuri

Constraints
required
["position","title"]

additionalProperties

true

SERPAIOverview

SERPAIOverview

Google AI Overview content when available.

statusoptional

string

enum["success","unavailable","fetch_failed"]

page_tokenoptional

string

Google AI Overview page token when present.

messageoptional

string

Availability message when no overview can be returned.

erroroptional

string

Failure reason when overview content could not be retrieved.

text_blocksoptional

array

referencesoptional

array

additionalProperties

true

SERPAIOverviewTextBlock

SERPAIOverviewTextBlock

typerequired

string

enum["heading","paragraph","list_item"]

snippetrequired

string

Constraints
minLength
1
Constraints
required
["type","snippet"]

additionalProperties

true

SERPAIOverviewReference

SERPAIOverviewReference

indexrequired

integer

Constraints
minimum
1
titlerequired

string

Constraints
minLength
1
linkrequired

stringuri

sourcerequired

string

Constraints
minLength
1
snippetoptional

string

Constraints
required
["index","title","link","source"]

additionalProperties

true

SERPRelatedQuestion

SERPRelatedQuestion

questionrequired

string

Constraints
minLength
1
typeoptional

string

enum["ai_overview","featured_snippet"]

page_tokenoptional

string

next_page_tokenoptional

string

linkoptional

stringuri

displayed_linkoptional

string

titleoptional

string

snippetoptional

string

dateoptional

string

source_logooptional

stringuri

Constraints
required
["question"]

additionalProperties

true

SERPRelatedSearch

SERPRelatedSearch

queryrequired

string

Constraints
minLength
1
linkoptional

stringuri

Constraints
required
["query"]

additionalProperties

true

SERPLocalResults

SERPLocalResults

placesoptional

array

Array items

more_locations_linkoptional

stringuri

mapoptional
imageoptional

stringuri

linkoptional

stringuri

additionalProperties

true

additionalProperties

true

SERPLocalPlace

SERPLocalPlace

positionrequired

integer

Constraints
minimum
1
titlerequired

string

Constraints
minLength
1
place_idoptional

string

linkoptional

stringuri

ratingoptional

number

reviewsoptional

integer

Constraints
minimum
0
typeoptional

string

addressoptional

string

Constraints
required
["position","title"]

additionalProperties

true

SERPAnswerBox

SERPAnswerBox

typeoptional

string

answeroptional

string

titleoptional

string

linkoptional

stringuri

displayed_linkoptional

string

sourceoptional

string

additionalProperties

true

SERPKnowledgeGraph

SERPKnowledgeGraph

titleoptional

string

typeoptional

string

descriptionoptional

string

sourceoptional
nameoptional

string

linkoptional

stringuri

additionalProperties

true

additionalProperties

true

SERPPagination

SERPPagination

nextoptional

stringuri

additionalProperties

true

TwitterSearchParameters

TwitterSearchParameters

enginerequired

string

const"twitter"

usernameoptional

string

Constraints
minLength
1
maxLength
50
pattern
"^[A-Za-z0-9_]+$"
user_idoptional

string

Constraints
minLength
1
maxLength
32
pattern
"^[0-9]+$"
max_resultsrequired

integer

Constraints
minimum
1
maximum
100
cursoroptional

string

Constraints
minLength
1
maxLength
8192
Constraints
required
["engine","max_results"]

additionalProperties

false

Exactly one of oneOf

Constraints
required
["username"]
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "user_id"
    ]
  }
}
Constraints
required
["user_id"]
Conditions and other constraints
JSON Schema
{
  "not": {
    "required": [
      "username"
    ]
  }
}
TwitterSearchEnvelope

TwitterSearchEnvelope

search_metadatarequired
search_parametersrequired
Constraints
required
["search_metadata","search_parameters"]

additionalProperties

false

TwitterEnvelope
TwitterCompletedResultEnvelope

TwitterCompletedResultEnvelope

search_metadatarequired
search_parametersrequired
userrequired
tweetsrequired

array

Constraints
maxItems
100

Array items

next_cursoroptional

string

Opaque cursor for the next page. Omitted when no next page is available.

Constraints
minLength
1
maxLength
8192
Constraints
required
["search_metadata","search_parameters","user","tweets"]

additionalProperties

false

TwitterFailedResultEnvelope

TwitterFailedResultEnvelope

search_metadatarequired
search_parametersrequired
errorrequired
Constraints
required
["search_metadata","search_parameters","error"]

additionalProperties

false

TwitterUser

TwitterUser

idrequired

string

Constraints
minLength
1
maxLength
64
usernameoptional

string

Constraints
minLength
1
maxLength
64
nameoptional

string

descriptionoptional

string

profile_image_urloptional

stringuri

verifiedoptional

boolean

followers_countoptional

integer

Constraints
minimum
0
following_countoptional

integer

Constraints
minimum
0
tweet_countoptional

integer

Constraints
minimum
0
Constraints
required
["id"]

additionalProperties

false

TwitterTweet

TwitterTweet

idrequired

string

Constraints
minLength
1
maxLength
64
textrequired

string

created_atoptional

stringdate-time

Post creation time in UTC, when available.

languageoptional

string

urloptional

stringuri

authoroptional
metricsoptional
conversation_idoptional

string

Constraints
required
["id","text"]

additionalProperties

false

TwitterMetrics

TwitterMetrics

like_countoptional

integer

Constraints
minimum
0
retweet_countoptional

integer

Constraints
minimum
0
reply_countoptional

integer

Constraints
minimum
0
quote_countoptional

integer

Constraints
minimum
0
bookmark_countoptional

integer

Constraints
minimum
0
view_countoptional

integer

Constraints
minimum
0

additionalProperties

false

TwitterWebhookPayload

TwitterWebhookPayload

idrequired

string

Webhook delivery/event ID. It matches X-Sukidata-Delivery.

objectrequired

string

const"event"

typerequired

string

enum["twitter.search.queued","twitter.search.processing","twitter.search.completed","twitter.search.failed"]

api_versionrequired

string

const"v1"

created_atrequired

stringdate-time

datarequired
Constraints
required
["id","object","type","api_version","created_at","data"]

additionalProperties

false

TwitterWebhookData

TwitterWebhookData

Constraints
required
["object"]

additionalProperties

false

TwitterWebhookSearchObject

TwitterWebhookSearchObject

idrequired

string

objectrequired

string

const"search"

endpointrequired

string

const"/v1/twitter"

urlrequired

stringuri

Authenticated API URL for fetching the search status or result.

search_metadatarequired
search_parametersrequired
useroptional
tweetsoptional

array

Constraints
maxItems
100

Array items

next_cursoroptional

string

Constraints
minLength
1
maxLength
8192
usagerequired
erroroptional
Constraints
required
["id","object","endpoint","url","search_metadata","search_parameters","usage"]

additionalProperties

false

ErrorBody

ErrorBody

coderequired

string

Constraints
maxLength
80
pattern
"^[a-z][a-z0-9_]*$"
messagerequired

string

Constraints
minLength
1
maxLength
240
Constraints
required
["code","message"]

additionalProperties

false