SpyBara
Go Premium

Documentation 2026-07-21 15:00 UTC to 2026-07-22 20:02 UTC

7 files changed +96 −43. View all changes and history on the product overview
2026
Sat 25 05:59 Fri 24 19:01 Thu 23 03:02 Wed 22 20:02 Tue 21 15:00 Mon 20 21:59 Sat 18 22:00 Fri 17 19:58 Thu 16 17:00 Wed 15 16:58 Tue 14 21:58 Mon 13 21:58 Sat 11 07:01 Fri 10 23:02 Thu 9 17:03 Wed 8 22:02 Mon 6 22:58 Sat 4 16:59
Details

160Amazon Bedrock uses separate controls for operator access and data retention:160Amazon Bedrock uses separate controls for operator access and data retention:

161 161 

162- **[Zero operator access (ZOA)](https://aws.amazon.com/blogs/machine-learning/exploring-the-zero-operator-access-design-of-mantle/)**162- **[Zero operator access (ZOA)](https://aws.amazon.com/blogs/machine-learning/exploring-the-zero-operator-access-design-of-mantle/)**

163 prevents service operators from accessing model inputs and outputs processed163 means AWS operators have no technical mechanism to sign in to Mantle's

164 by Mantle.164 underlying compute systems or access customer data, including inference

165 prompts and completions.

165- **[Zero data retention (ZDR)](https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html)**166- **[Zero data retention (ZDR)](https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html)**

166 means AWS does not write model inputs or outputs to durable storage or share167 means AWS does not write model inputs or outputs to durable storage when the

167 them with OpenAI when the effective retention mode is `none`.168 effective retention mode is `none`.

169 

170For OpenAI models in Amazon Bedrock, AWS does not share request or response

171content with OpenAI when the effective retention mode is `default` or `none`.

168 172 

169[Configure Bedrock data173[Configure Bedrock data

170retention](https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html#data-retention-configuration)174retention](https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html#data-retention-configuration)

171for your AWS account or project. For requests sent directly to the OpenAI API,175for your AWS account or project.

172use the separate [OpenAI Zero Data Retention

173controls](https://developers.openai.com/api/docs/guides/your-data#zero-data-retention).

174 176 

175Under the `default` retention mode, retention depends on the model and request177Under the `default` retention mode, retention depends on the model and request

176settings. For specific OpenAI GPT models, AWS retains classifier-flagged traffic178settings. For specific OpenAI GPT models, AWS retains classifier-flagged traffic

177for up to 30 days for automated offline abuse detection. AWS stores and179for up to 30 days for automated offline abuse detection. Responses API requests

178processes this data and does not share it with OpenAI. On the Responses API,180use `store: true` by default. AWS retains the response, including its input and

179`store` defaults to `true`, so AWS may store response data beyond abuse181output, for 30 days so you can retrieve it or reference it in a later request.

180detection. See [Amazon Bedrock abuse182See [Amazon Bedrock abuse

181detection](https://docs.aws.amazon.com/bedrock/latest/userguide/abuse-detection.html)183detection](https://docs.aws.amazon.com/bedrock/latest/userguide/abuse-detection.html)

182for the current model list and retention details.184for the current model list and retention details.

183 185 

184If you need full ZDR for a model that requires retention, [contact your AWS186If you need full ZDR for a model that requires retention, contact your AWS

185account187account manager to discuss eligibility. AWS evaluates ZDR access for each account

186manager](https://docs.aws.amazon.com/bedrock/latest/userguide/data-retention.html#data-retention-zdr)188and model. If AWS approves access, confirm that `none` appears in the model's

187to discuss eligibility. AWS evaluates ZDR access for each account and model. If189`allowed_modes`, then set the account or project retention mode to `none`.

188AWS approves access, confirm that `none` appears in the model's `allowed_modes`,190Setting `store: false` does not guarantee ZDR. When the effective retention mode

189then set the account or project retention mode to `none`. Setting `store: false`191is `none`, AWS rejects `store: true`, and background mode is unavailable.

190does not guarantee ZDR. When the effective retention mode is `none`, AWS rejects192 

191`store: true`, and background mode is unavailable.193If AWS detects apparent CSAM in an image input, AWS may move the flagged input

192 194 or output outside the ZOA environment and store and review it only to

193If AWS detects apparent CSAM in an image input, AWS may store and review the195 determine whether it is CSAM. AWS may also file a report with national

194 flagged input or output only to determine whether it is CSAM. AWS may also196 authorities.

195 file a report with national authorities.

196 197 

197## Responses API feature availability198## Responses API feature availability

198 199 

Details

323 .join("|");323 .join("|");

324 324 

325 const tokenRe = new RegExp(325 const tokenRe = new RegExp(

326 `${CITATION_START}(?<family>${familyPattern})${CITATION_DELIMITER}(?<body>[\\s\\S]*?)${CITATION_STOP}`,326 `\uE200(?<family>${familyPattern})\uE202(?<body>[\\s\\S]*?)\uE201`,

327 "g"327 "g"

328 );328 );

329 329 

Details

36 36 

37### Managing billing limits37### Managing billing limits

38 38 

39Once you’ve entered your billing information, you will have an approved usage limit of $100 per month, which is set by OpenAI. Your quota limit will automatically increase as your usage on your platform increases and you move from one [usage tier](https://developers.openai.com/api/docs/guides/rate-limits#usage-tiers) to another. You can review your current usage limit in the [limits](https://platform.openai.com/settings/organization/limits) page in your account settings.39Once you’ve entered your billing information, OpenAI sets an approved usage limit for your organization. Your quota limit will automatically increase as your usage on your platform increases and you move from one [usage tier](https://developers.openai.com/api/docs/guides/rate-limits#usage-tiers) to another. You can review your current usage limit in the [limits](https://platform.openai.com/settings/organization/limits) page in your account settings.

40 40 

41If you’d like to be notified when your usage exceeds a certain dollar amount, you can set a notification threshold through the [usage limits](https://platform.openai.com/settings/organization/limits) page.41If you’d like to be notified when your usage exceeds a certain dollar amount, you can set spend alerts on the [limits](https://platform.openai.com/settings/organization/limits) page. For stricter budget control, see the [spend limits guide](https://developers.openai.com/api/docs/guides/spend-limits).

42 42 

43### API keys43### API keys

44 44 

Details

223response = client.responses.create(223response = client.responses.create(

224 model="gpt-5.6",224 model="gpt-5.6",

225 reasoning={"effort": "low"},225 reasoning={"effort": "low"},

226 instructions="${semicolonsDevMsg}",226 instructions="Talk like a pirate.",

227 input="${semicolonsPrompt}",227 input="Are semicolons optional in JavaScript?",

228)228)

229 229 

230print(response.output_text)230print(response.output_text)


237 -d '{237 -d '{

238 "model": "gpt-5.6",238 "model": "gpt-5.6",

239 "reasoning": {"effort": "low"},239 "reasoning": {"effort": "low"},

240 "instructions": "${semicolonsDevMsg}",240 "instructions": "Talk like a pirate.",

241 "input": "${semicolonsPrompt}"241 "input": "Are semicolons optional in JavaScript?"

242 }'242 }'

243```243```

244 244 


279 input=[279 input=[

280 {280 {

281 "role": "developer",281 "role": "developer",

282 "content": "${semicolonsDevMsg}"282 "content": "Talk like a pirate."

283 },283 },

284 {284 {

285 "role": "user",285 "role": "user",

286 "content": "${semicolonsPrompt}"286 "content": "Are semicolons optional in JavaScript?"

287 }287 }

288 ]288 ]

289)289)


301 "input": [301 "input": [

302 {302 {

303 "role": "developer",303 "role": "developer",

304 "content": "${semicolonsDevMsg}"304 "content": "Talk like a pirate."

305 },305 },

306 {306 {

307 "role": "user",307 "role": "user",

308 "content": "${semicolonsPrompt}"308 "content": "Are semicolons optional in JavaScript?"

309 }309 }

310 ]310 ]

311 }'311 }'

Details

27- Rate limits are defined at the [organization level](https://developers.openai.com/api/docs/guides/production-best-practices) and at the project level, not user level.27- Rate limits are defined at the [organization level](https://developers.openai.com/api/docs/guides/production-best-practices) and at the project level, not user level.

28- Rate limits vary by the [model](https://developers.openai.com/api/docs/models) being used.28- Rate limits vary by the [model](https://developers.openai.com/api/docs/models) being used.

29- For long context models like GPT-5.5, there is a separate rate limit for long context requests. You can view these rate limits in [developer console](https://platform.openai.com/settings/organization/limits).29- For long context models like GPT-5.5, there is a separate rate limit for long context requests. You can view these rate limits in [developer console](https://platform.openai.com/settings/organization/limits).

30- Limits are also placed on the total amount an organization can spend on the API each month. These are also known as "usage limits".30- You can set [spend limits](https://developers.openai.com/api/docs/guides/spend-limits) for the total amount an organization or project can spend on the API each month.

31- Some model families have shared rate limits. Any models listed under a "shared limit" in your [organizations limit page](https://platform.openai.com/settings/organization/limits) share a rate limit between them. For example, if the listed shared TPM is 3.5M, all calls to any model in the given "shared limit" list will count towards that 3.5M.31- Some model families have shared rate limits. Any models listed under a "shared limit" in your [organizations limit page](https://platform.openai.com/settings/organization/limits) share a rate limit between them. For example, if the listed shared TPM is 3.5M, all calls to any model in the given "shared limit" list will count towards that 3.5M.

32- Vector store ingestion is also rate limited per vector store ID. `/vector_stores/{vector_store_id}/files` and `/vector_stores/{vector_store_id}/file_batches` share a limit of 300 requests per minute for each vector store. For larger ingests, prefer `/vector_stores/{vector_store_id}/file_batches`.32- Vector store ingestion is also rate limited per vector store ID. `/vector_stores/{vector_store_id}/files` and `/vector_stores/{vector_store_id}/file_batches` share a limit of 300 requests per minute for each vector store. For larger ingests, prefer `/vector_stores/{vector_store_id}/file_batches`.

33 33 

guides/spend-limits.md +52 −0 created

Details

1# Spend limits

2 

3Spend limits help you control API costs by setting monthly budgets for your organization or for individual projects. You can use them as a soft budget for monitoring spend, or enforce a hard limit so API responses fail after spend reaches the limit.

4 

5## How spend limits work

6 

7Spend limits are monthly limits measured in U.S. dollars. They can apply at two levels:

8 

9- **Organization spend limits** apply across the organization.

10- **Project spend limits** apply to a single project.

11 

12You can also enforce either level as a hard limit, which makes API responses fail after spend reaches the monthly limit.

13 

14## Using hard limits

15 

16A hard limit causes API responses to fail after the organization or project reaches its monthly spend limit. After spend reaches a hard limit, API responses return a `429` error until you increase the spend limit or the limit resets.

17 

18Use hard limits when you need to prevent unexpected spend, such as for experiments, development projects, or customer-specific projects with fixed budgets.

19 

20## Configuring spend limits

21 

22 

23 

24<div data-content-switcher-pane data-value="organization">

25 <div class="hidden">Organization</div>

26 

271. Go to [Organization limits](https://platform.openai.com/settings/organization/limits).

282. In **Spend**, select **Edit spend limit**.

293. Enter the **Monthly spend limit**.

304. To make API responses fail after the organization reaches the limit, turn on **Enforce a hard limit**.

315. Select **Save**.

32 

33 </div>

34 <div data-content-switcher-pane data-value="project" hidden>

35 <div class="hidden">Project</div>

36 

371. Go to [Project settings](https://platform.openai.com/settings/).

382. Select **Limits**.

393. In **Spend**, select **Edit spend limit**.

404. Enter the **Monthly spend limit**.

415. To make API responses fail after the project reaches the limit, turn on **Enforce a hard limit**.

426. Select **Save**.

43 

44 </div>

45 

46 

47 

48## Spend alerts

49 

50Use spend alerts to get notified before spend reaches the monthly limit. Add alerts at thresholds that give your team enough time to adjust usage, increase the limit, or investigate unexpected traffic.

51 

52For broader usage analysis, review the [usage dashboard](https://platform.openai.com/settings/organization/usage). For request-rate constraints, see the [rate limits guide](https://developers.openai.com/api/docs/guides/rate-limits).

guides/text.md +8 −8

Details

211response = client.responses.create(211response = client.responses.create(

212 model="gpt-5.6",212 model="gpt-5.6",

213 reasoning={"effort": "low"},213 reasoning={"effort": "low"},

214 instructions="${semicolonsDevMsg}",214 instructions="Talk like a pirate.",

215 input="${semicolonsPrompt}",215 input="Are semicolons optional in JavaScript?",

216)216)

217 217 

218print(response.output_text)218print(response.output_text)


225 -d '{225 -d '{

226 "model": "gpt-5.6",226 "model": "gpt-5.6",

227 "reasoning": {"effort": "low"},227 "reasoning": {"effort": "low"},

228 "instructions": "${semicolonsDevMsg}",228 "instructions": "Talk like a pirate.",

229 "input": "${semicolonsPrompt}"229 "input": "Are semicolons optional in JavaScript?"

230 }'230 }'

231```231```

232 232 


267 input=[267 input=[

268 {268 {

269 "role": "developer",269 "role": "developer",

270 "content": "${semicolonsDevMsg}"270 "content": "Talk like a pirate."

271 },271 },

272 {272 {

273 "role": "user",273 "role": "user",

274 "content": "${semicolonsPrompt}"274 "content": "Are semicolons optional in JavaScript?"

275 }275 }

276 ]276 ]

277)277)


289 "input": [289 "input": [

290 {290 {

291 "role": "developer",291 "role": "developer",

292 "content": "${semicolonsDevMsg}"292 "content": "Talk like a pirate."

293 },293 },

294 {294 {

295 "role": "user",295 "role": "user",

296 "content": "${semicolonsPrompt}"296 "content": "Are semicolons optional in JavaScript?"

297 }297 }

298 ]298 ]

299 }'299 }'