curl --request POST \
--url https://api.cloud.gomry.com/v1/toolsapi/run \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"vendor": "apify",
"endpoint": "/apidojo/tweet-scraper",
"input": {
"handle": "gomry",
"limit": 20
}
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
vendor: 'apify',
endpoint: '/apidojo/tweet-scraper',
input: {handle: 'gomry', limit: 20}
})
};
fetch('https://api.cloud.gomry.com/v1/toolsapi/run', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.cloud.gomry.com/v1/toolsapi/run"
payload = {
"vendor": "apify",
"endpoint": "/apidojo/tweet-scraper",
"input": {
"handle": "gomry",
"limit": 20
}
}
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>"
}Find a tool that can do a task and run it — 1,700+ across 55+ vendors, on your Gomry key.
Find a tool that can do a task and run it — 1,700+ across 55+ vendors, on your Gomry key.
Requires the toolsapi:run scope, and the project must have ToolsAPI enabled.
Billed on success. The response reports meteredMicroUsd — the quantity metered for this call. Rates: https://docs.cloud.gomry.com/pricing.
Full reference: https://docs.cloud.gomry.com/services/toolsapi
curl --request POST \
--url https://api.cloud.gomry.com/v1/toolsapi/run \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"vendor": "apify",
"endpoint": "/apidojo/tweet-scraper",
"input": {
"handle": "gomry",
"limit": 20
}
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
vendor: 'apify',
endpoint: '/apidojo/tweet-scraper',
input: {handle: 'gomry', limit: 20}
})
};
fetch('https://api.cloud.gomry.com/v1/toolsapi/run', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.cloud.gomry.com/v1/toolsapi/run"
payload = {
"vendor": "apify",
"endpoint": "/apidojo/tweet-scraper",
"input": {
"handle": "gomry",
"limit": 20
}
}
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.
Body
Response
Success. meteredMicroUsd reports what was metered.
The response is of type object.

