Probably
Docs

Begin a results upload

begin_results_upload, in Changes: A connection or key that may make changes. None spends credits; prepare_* and stage tools (research, brainstorm, write_script, review, generate_clip, voice, storyboard) prepare paid work for confirm_spend.

POST
/api/v1/tools/begin_results_upload

For an Ads Manager report too big to send as csv (up to 900,000 characters): give its size in bytes, PUT exactly those bytes to url with its headers within 15 minutes, then call import_ad_results with the uploadId in place of csv. The upload is deleted once imported or refused.

Authorization

apiKey
headerAuthorizationBearer <token>

An API key (prb_…) from Settings → Connections.

Request Body

application/json
  1. body
spaceId*string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
size*integer

The export's size in bytes; the PUT must send exactly this many

Range1 <= value <= 3600000

Response Body

The tool's answer.

application/json
  1. response
uploadId*string
url*string
Formaturi
headers*
expiresAt*string
curl -X POST 'https://studio.probably.co/api/v1/tools/begin_results_upload' \  -H "Authorization: Bearer $PROBABLY_API_KEY" \  -H 'Content-Type: application/json' \  -d '{  "spaceId": "a330a273-e64a-4183-aedb-f3152797a9a5",  "size": 1}'
{  "uploadId": "string",  "url": "http://example.com",  "headers": {    "Content-Type": "text/csv"  },  "expiresAt": "string"}