curl --request POST \
--url https://api.cloud.gomry.com/v1/superagent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"objective": "Which of these venues changed their refund policy in 2026, and how?",
"seedUrls": [
"https://example.com/venue/calendar"
],
"outputSchema": {
"type": "object",
"properties": {
"shows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"startDate": {
"type": "string"
}
}
}
}
}
},
"tier": "standard"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
objective: 'Which of these venues changed their refund policy in 2026, and how?',
seedUrls: ['https://example.com/venue/calendar'],
outputSchema: {
type: 'object',
properties: {
shows: {
type: 'array',
items: {
type: 'object',
properties: {name: {type: 'string'}, startDate: {type: 'string'}}
}
}
}
},
tier: 'standard'
})
};
fetch('https://api.cloud.gomry.com/v1/superagent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.cloud.gomry.com/v1/superagent"
payload = {
"objective": "Which of these venues changed their refund policy in 2026, and how?",
"seedUrls": ["https://example.com/venue/calendar"],
"outputSchema": {
"type": "object",
"properties": { "shows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"startDate": { "type": "string" }
}
}
} }
},
"tier": "standard"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Give it a research question and a JSON schema. It plans, searches, reads, notices what is missing, searches again — and cites every field.
Give it a research question and a JSON schema. It plans, searches, reads, notices what is missing, searches again — and cites every field.
Requires the tasks:run scope, and the project must have Superagent enabled.
Billed on success. The response reports cost.units — the quantity metered for this call. Rates: https://docs.cloud.gomry.com/pricing.
ASYNCHRONOUS: this returns 202 with an id, not a result. Poll GET /v1/superagent/{taskId} (the Location header carries the absolute URL) no sooner than Retry-After, currently 5 seconds. Polling and cancelling are not billed.
Full reference: https://docs.cloud.gomry.com/services/tasks
curl --request POST \
--url https://api.cloud.gomry.com/v1/superagent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"objective": "Which of these venues changed their refund policy in 2026, and how?",
"seedUrls": [
"https://example.com/venue/calendar"
],
"outputSchema": {
"type": "object",
"properties": {
"shows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"startDate": {
"type": "string"
}
}
}
}
}
},
"tier": "standard"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
objective: 'Which of these venues changed their refund policy in 2026, and how?',
seedUrls: ['https://example.com/venue/calendar'],
outputSchema: {
type: 'object',
properties: {
shows: {
type: 'array',
items: {
type: 'object',
properties: {name: {type: 'string'}, startDate: {type: 'string'}}
}
}
}
},
tier: 'standard'
})
};
fetch('https://api.cloud.gomry.com/v1/superagent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.cloud.gomry.com/v1/superagent"
payload = {
"objective": "Which of these venues changed their refund policy in 2026, and how?",
"seedUrls": ["https://example.com/venue/calendar"],
"outputSchema": {
"type": "object",
"properties": { "shows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"startDate": { "type": "string" }
}
}
} }
},
"tier": "standard"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Authorizations
An API key minted in the console, sent as Authorization: Bearer <key>. Keys are project-scoped and carry per-operation scopes. A gck_test_… key runs the full request path — including the real upstream call — and bills nothing.
Every scope is enumerated in x-scopes below and in the RFC 9728 protected-resource metadata at https://cloud.gomry.com/.well-known/oauth-protected-resource, which is also what a 401 points at through its WWW-Authenticate: Bearer resource_metadata="…" header.
Headers
Body
Response
Accepted. The work has been started, not done — poll /v1/superagent/{taskId} for the result. The id is at task.taskId. Nothing is billed by this call.
The response is of type object.

