{"api_name":"Cohere API","docs_url":"https://docs.cohere.com/","domain":"docs.cohere.com","generated_at":"2026-10-05T23:26:40.814227+00:00","agent_readiness_score":65,"certification_level":"Agent-Compatible With Gaps","agent_commerce_score":45,"agent_commerce_level":"Agent Commerce Emerging","agent_commerce":{"generated_at":"2026-10-05T23:26:40.726330+00:00","agent_commerce_score":45,"agent_commerce_level":"Agent Commerce Emerging","machine_payment_capable":false,"detected_protocols":["MCP"],"category_scores":{"mcp_support":10,"agent_identity_auth":5,"machine_payments":0,"machine_pricing":0,"budget_controls":5,"agent_rate_controls":10,"deterministic_errors":5,"auditability":0,"agent_security":5,"agent_observability":5},"strengths":["MCP support","Agent rate and quota controls"],"gaps":["Machine-native payments","Machine-readable consumption pricing","Auditability / receipts / traceability"],"matched_signals":{"mcp_support":{"score":10,"matched_terms":["mcp server","mcp"]},"agent_identity_auth":{"score":5,"matched_terms":["oauth","authorization","access token"]},"machine_payments":{"score":0,"matched_terms":["payment required"]},"machine_pricing":{"score":0,"matched_terms":["pricing"]},"budget_controls":{"score":5,"matched_terms":["limit","maximum amount"]},"agent_rate_controls":{"score":10,"matched_terms":["rate limit","rate limits","too many requests","429","limits"]},"deterministic_errors":{"score":5,"matched_terms":["errors","status codes"]},"auditability":{"score":0,"matched_terms":["history"]},"agent_security":{"score":5,"matched_terms":["security","permissions","policy"]},"agent_observability":{"score":5,"matched_terms":["usage","dashboard"]}},"evidence_signals":{"mcp_support":[{"source_url":"https://docs.cohere.com/.md","matched_terms":["mcp server","mcp"],"snippet":". > For a complete documentation index, see https://docs.cohere.com/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cohere.com/_mcp/server. > Cohere's API documentation helps developers easily integrate natural language processing and generation into their..."},{"source_url":"https://docs.cohere.com/llms.txt","matched_terms":["mcp server","mcp"],"snippet":"age URL - For section-specific indexes, append `/llms.txt` to any section URL - For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cohere.com/_mcp/server Versions - [v2 API](https://docs.cohere.com/v2/llms.txt) (default) - [v1 API](https://docs.cohere.com/v1/llms.txt)"}],"agent_identity_auth":[{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["oauth","authorization"],"snippet":"llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cohere.com/_mcp/server. # Authorize with oAuth POST https://api.cohere.com/v1/connectors/ /oauth/authorize Authorize the connector with the given ID for the connector oauth app. See ['Connector..."},{"source_url":"https://docs.cohere.com/v1/docs/connector-authentication.md","matched_terms":["oauth","authorization","access token"],"snippet":"hree methods for authentication and authorization to protect your connectors from unauthorized use. They are: 1. Service to Service Authentication 2. OAuth 2.0 3. Pass-Through Connector Authentication** > > We highly recommend using one authentication feature with your connector. The Chat API sends the request to your..."}],"machine_payments":[{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["payment required"],"snippet":"| Your API key has expired. Please create a production key at dashboard.cohere.com or reach out to your contact at Cohere to continue usage. | 402 - Payment Required 402 responses are sent when the account has reached its billing limit. To resolve these errors, [add or..."}],"machine_pricing":[{"source_url":"https://docs.cohere.com/docs/rate-limits.md","matched_terms":["pricing"],"snippet":"h less limited in usage). You can create a trial or production key on [the API keys page](https://dashboard.cohere.com/api-keys). For more details on pricing please see our [pricing docs](https://docs.cohere.com/v2/docs/how-does-cohere-pricing-work). Warning** > > Prod keys work like trial keys for newer model..."},{"source_url":"https://docs.cohere.com/v2/docs/how-does-cohere-pricing-work.md","matched_terms":["pricing"],"snippet":"s.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cohere.com/_mcp/server. # How Does Cohere's Pricing Work? > This page details Cohere's pricing model. Our models can be accessed directly through our API, allowing for the creation of scalable production..."}],"budget_controls":[{"source_url":"https://docs.cohere.com/openapi/cohere-api-2.json","matched_terms":["limit"],"snippet":",{\"name\":\"Accepts\",\"in\":\"header\",\"description\":\"Pass text/event-stream to receive the streamed response as server-sent events. The default is `\\\\n` delimited events.\\n\",\"required\":false,\"schema\": }],\"responses\":{\"200\":{\"description\":\"Generates a streamed text response to a user message.\\n\\nTo learn how to use the Chat..."},{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["limit","maximum amount"],"snippet":"o 4096, the maximum output for this model - received 8192. | | invalid request: response\\_format is not supported with RAG. | | too many tokens: size limit exceeded by 11326 tokens. Try using shorter or fewer inputs, or setting prompt\\_truncation='AUTO'. | | invalid request: number of total max chunks (number of..."}],"agent_rate_controls":[{"source_url":"https://docs.cohere.com/openapi/cohere-api-2.json","matched_terms":["too many requests","429"],"snippet":"ssing required fields\\n - The request contains an invalid combination of fields\\n\",\"content\":{\"application/json\":{\"schema\": }}},\"429\":{\"description\":\"Too many requests\",\"content\":{\"application/json\":{\"schema\": }}},\"498\":{\"description\":\"This error is returned when a request or response contains a deny-listed..."},{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["rate limit","rate limits","too many requests","429","limits"],"snippet":"'' not found. | | dataset with id my-dataset-id not found | | finetuned model xyz not found | 429 - Too Many Requests 429 responses are sent when the rate limit has been exceeded. Please consult the [rate limit documentation](https://docs.cohere.com/v2/docs/rate-limits) to understand the limits and how to avoid these..."}],"deterministic_errors":[{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["errors","status codes"],"snippet":"ocs.cohere.com/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.cohere.com/_mcp/server. # Errors (status codes and description) > Understand Cohere's HTTP response codes and how to handle errors in various programming languages. # Http status codes 400 - Bad..."},{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["errors"],"snippet":"request. Response 200 OK - `redirect_url` (string, optional) — The OAuth 2.0 redirect url. Redirect the user to this url to authorize the connector. Errors 400 Bad Request Error This error is returned when the request is not well formed. This could be because: - JSON is invalid - The request is missing required fields..."}],"auditability":[{"source_url":"https://docs.cohere.com/openapi/cohere-api-2.json","matched_terms":["history"],"snippet":"model's overall behavior and conversation style, and use the `SYSTEM` role.\\n\\nThe `SYSTEM` role is also used for the contents of the optional `chat_history=` parameter. When used with the `chat_history=` parameter it adds content throughout a conversation. Conversely, when used with the `preamble=` parameter it adds..."},{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["history"],"snippet":"equest: valid input\\_type must be provided with the provided model | | system turn must be the first in the list | | invalid request: all elements in history must have a message. | | invalid request: message must be at least 1 token long or tool results must be specified. | | invalid request: query must not be empty..."}],"agent_security":[{"source_url":"https://docs.cohere.com/openapi/cohere-api-2.json","matched_terms":["security","permissions"],"snippet":"ICT\\\"` modes.\\n\\nCompatible Deployments: Cohere Platform, Azure, AWS Sagemaker/Bedrock, Private Deployments\\n\"}},\"required\":[\"message\",\"stream\"]}}}},\"security\":[ ]}},\"/v1/rerank\":{\"post\":{\"operationId\":\"rerank\",\"summary\":\"Rerank API (v1)\",\"description\":\"This endpoint takes in a query and a list of texts and produces..."},{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["permissions","policy"],"snippet":"that the operation attempted to be performed is not allowed. This could be because: - The api token is invalid - The user does not have the necessary permissions - `message` (string, optional) - `id` (string, optional) 403 Forbidden Error This error indicates that the operation attempted to be performed is not..."}],"agent_observability":[{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["usage","dashboard"],"snippet":"ious tool calls | | invalid request: each unique label must have at least 2 examples. Not enough examples for: awr\\_report, create\\_user, tablespace\\_usage | | invalid request: multi step is not supported by the provided model: command. | | invalid request: invalid API version was passed in, for more information..."},{"source_url":"https://docs.cohere.com/_mcp/server","matched_terms":["usage"],"snippet":"ns relevant doc passages with source URLs.\",\"annotations\": ,\"inputSchema\":{\"type\":\"object\",\"properties\":{\"query\": ,\"topK\": },\"required\":[\"query\"]}}],\"usage\": }"}]},"scoring_signals":{"docs_fetched":true,"pages_fetched":12,"candidate_pages":12,"fetched_urls":["https://docs.cohere.com/openapi.json","https://docs.cohere.com/openapi.yaml","https://docs.cohere.com/.md","https://docs.cohere.com/llms.txt","https://docs.cohere.com/openapi/cohere-api-2.json","https://docs.cohere.com/reference/errors.md","https://docs.cohere.com/reference/oauthauthorize-connector.md","https://docs.cohere.com/_mcp/server","https://docs.cohere.com/docs/rate-limits.md","https://docs.cohere.com/v1/docs/connector-authentication.md","https://docs.cohere.com/docs/model-vault/encrypted/security-model.md","https://docs.cohere.com/v2/docs/how-does-cohere-pricing-work.md"],"scoring_source":"YoofoozBot bounded crawl"},"methodology":{"separate_from_agent_readiness":true,"category_count":10,"category_scale":[0,5,10],"max_score":100,"evidence_required_for_public_claims":true}},"category_scores":{"documentation_clarity":10,"machine_readable_spec":10,"authentication_clarity":10,"error_handling":10,"rate_limit_clarity":10,"agent_safe_workflow_support":0,"sandbox_availability":0,"webhook_event_support":0,"commercial_trust":5,"developer_experience":10},"strengths":["Documentation clarity","Machine-readable specification (OpenAPI/GraphQL/etc.)","Authentication model clarity","Error handling and status codes","Rate-limit / quota behavior","Developer experience (SDKs, quickstart, CLI)"],"risks":["Agent-safe workflow primitives (idempotency, retries) signal not detected in docs.","Sandbox / test-mode availability signal not detected in docs.","Webhook / event support signal not detected in docs.","Commercial trust (status, SLA, compliance) signal is partial; clearer documentation recommended."],"recommended_next_steps":["Document idempotency keys, test mode, dry runs, and safe retry semantics for agents.","Provide a sandbox / test mode with test API keys for safe agent testing.","Expose webhook/event docs including event types, signature verification, and retry delivery.","Strengthen: Publish status page, SLA, and security/compliance posture (SOC 2, GDPR, PCI as applicable)."],"scoring_signals":{"docs_fetched":true,"docs_chars_used":63982,"pages_fetched":12,"candidate_pages":12,"fetched_urls":["https://docs.cohere.com/openapi.json","https://docs.cohere.com/openapi.yaml","https://docs.cohere.com/.md","https://docs.cohere.com/llms.txt","https://docs.cohere.com/openapi/cohere-api-2.json","https://docs.cohere.com/reference/errors.md","https://docs.cohere.com/reference/oauthauthorize-connector.md","https://docs.cohere.com/_mcp/server","https://docs.cohere.com/docs/rate-limits.md","https://docs.cohere.com/v1/docs/connector-authentication.md","https://docs.cohere.com/docs/model-vault/encrypted/security-model.md","https://docs.cohere.com/v2/docs/how-does-cohere-pricing-work.md"],"scoring_source":"yoofoozbot_crawl_documents"},"matched_signals":{"documentation_clarity":{"score":10,"matched_terms":["quickstart","parameters","request","response","examples","docs","guide","reference","overview"]},"machine_readable_spec":{"score":10,"matched_terms":["openapi","api spec","endpoints","schema"]},"authentication_clarity":{"score":10,"matched_terms":["bearer token","oauth","access token","authentication","authorization","api key","keys"]},"error_handling":{"score":10,"matched_terms":["400","401","403","404","409","429","500","errors","status codes"]},"rate_limit_clarity":{"score":10,"matched_terms":["rate limit","rate limits","too many requests","429","limits"]},"agent_safe_workflow_support":{"score":0,"matched_terms":["metadata"]},"sandbox_availability":{"score":0,"matched_terms":[]},"webhook_event_support":{"score":0,"matched_terms":["events"]},"commercial_trust":{"score":5,"matched_terms":["support","changelog","versioning","api version","security"]},"developer_experience":{"score":10,"matched_terms":["quickstart","sdk","cli","guides","dashboard"]}},"evidence_signals":{"documentation_clarity":[{"source_url":"https://docs.cohere.com/v1/docs/connector-authentication.md","matched_terms":["quickstart","request","response","docs"],"snippet":"...will have to modify your connector to forward the authorization header from the request to the connector to the request to the data source. a few quickstart connectors (google drive and slack) do this out of the box without any configuration, so you may wish to look at those to copy this functionality...."},{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["parameters","request","response","examples","docs","reference"],"snippet":"...- `authorization` header (bearer token, required) — bearer authentication of the form `bearer `, where token is your auth token. request path parameters - `id` (string, required) — the id of the connector to authorize. query parameters - `after_token_redirect` (string, optional) — the url to redirect..."}],"machine_readable_spec":[{"source_url":"https://docs.cohere.com/openapi.json","matched_terms":["openapi","api spec"],"snippet":"available apis select an api to view its openapi specification. cohere api cohere api"},{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["api spec","schema"],"snippet":"...is not valid. this can happen when required fields are missing, or when the values provided are not valid. to resolve this error, consult [the api spec](https://docs.cohere.com/reference/about) to ensure that you are providing the correct fields and values. example error responses | message | |..."}],"authentication_clarity":[{"source_url":"https://docs.cohere.com/v1/docs/connector-authentication.md","matched_terms":["bearer token","oauth","access token","authentication","authorization","api key","keys"],"snippet":"...serviceauth: }); console.log(connector); })(); ``` now when you call the chat api with this connector specified, cohere will now pass the configured bearer token in the search request to your connector. option 2: oauth 2.0 the second method of authentication and authorization is **oauth 2.0**. users are..."},{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["bearer token","oauth","authentication","authorization"],"snippet":"...for more information. reference: https://docs.cohere.com/reference/oauthauthorize-connector authentication - `authorization` header (bearer token, required) — bearer authentication of the form `bearer `, where token is your auth token. request path parameters - `id` (string, required) — the id..."}],"error_handling":[{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["400","401","404","409","429","500","errors","status codes"],"snippet":"...codes and description) > understand cohere's http response codes and how to handle errors in various programming languages. # http status codes 400 - bad request 400 responses are sent when the body of the request is not valid. this can happen when required fields are missing, or when the values..."},{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["400","401","403","404","429","500","errors"],"snippet":"...response 200 ok - `redirect_url` (string, optional) — the oauth 2.0 redirect url. redirect the user to this url to authorize the connector. errors 400 bad request error this error is returned when the request is not well formed. this could be because: - json is invalid - the request is missing..."}],"rate_limit_clarity":[{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["rate limit","rate limits","too many requests","429","limits"],"snippet":"...not found. | | dataset with id my-dataset-id not found | | finetuned model xyz not found | 429 - too many requests 429 responses are sent when the rate limit has been exceeded. please consult the [rate limit documentation](https://docs.cohere.com/v2/docs/rate-limits) to understand the limits and how to..."},{"source_url":"https://docs.cohere.com/docs/rate-limits.md","matched_terms":["rate limit","rate limits","limits"],"snippet":"...client integration (claude code, cursor, etc.), connect to the mcp server at https://docs.cohere.com/_mcp/server. # different types of api keys and rate limits > this page describes cohere api rate limits for production and evaluation keys. cohere offers two kinds of api keys: evaluation keys (free but..."}],"agent_safe_workflow_support":[{"source_url":"https://docs.cohere.com/docs/model-vault/encrypted/security-model.md","matched_terms":["metadata"],"snippet":"...area. * attacks requiring deep physical access to the hardware (for example, power or electromagnetic analysis, or invasive chip probing). * metadata and traffic-pattern observation (timing, sizes, the model being called), even though payload contents stay protected. * availability: the..."}],"webhook_event_support":[{"source_url":"https://docs.cohere.com/openapi/cohere-api-2.json","matched_terms":["events"],"snippet":"preambles are a part of the prompt used to adjust the model's overall behavior and conversation style, and use the `system` role.\\n\\nthe `system` role is also used for the contents of the optional `chat_history=` parameter."}],"commercial_trust":[{"source_url":"https://docs.cohere.com/reference/errors.md","matched_terms":["support","versioning","api version"],"snippet":"...or tool results must be specified. | | invalid request: query must not be empty or be only whitespace | | invalid request: model 'command-r' is not supported by the generate api | | invalid request: cannot specify both frequency\\_penalty and presence\\_penalty. | | invalid request: only one of..."},{"source_url":"https://docs.cohere.com/openapi/cohere-api-2.json","matched_terms":["support","security"],"snippet":"...and [command r+ 08-2024](https://docs.cohere.com/docs/command-r-plus#august-2024-release).\\n\\n**note**: `command-r7b-12-2024` and newer models only support `\\\"contextual\\\"` and `\\\"strict\\\"` modes.\\n\\ncompatible deployments: cohere platform, azure, aws sagemaker/bedrock, private..."}],"developer_experience":[{"source_url":"https://docs.cohere.com/reference/oauthauthorize-connector.md","matched_terms":["sdk","cli"],"snippet":"...to: - an internal services taking too long to respond - `message` (string, optional) - `id` (string, optional) examples **response** ```json ``` **sdk code** ```go cohere go sdk package main import ( \"context\" \"log\" \"os\" cohere \"github.com/cohere-ai/cohere-go/v2\" client..."},{"source_url":"https://docs.cohere.com/v1/docs/connector-authentication.md","matched_terms":["quickstart","cli"],"snippet":"...will have to modify your connector to forward the authorization header from the request to the connector to the request to the data source. a few quickstart connectors (google drive and slack) do this out of the box without any configuration, so you may wish to look at those to copy this functionality...."}]},"yoofoozbot":{"run_id":"20261005T232602Z_cohere_api_3ff4ad60","user_agent":"YoofoozBot/1.12 (+https://yoofooz.com/yoofoozbot; contact: submit@yoofooz.com)","pages_fetched":12,"total_bytes":296478,"robots_respected":true,"crawl_record_path":"outputs/yoofoozbot/20261005T232602Z_cohere_api_3ff4ad60.json","spec_candidates":["https://docs.cohere.com/openapi.json","https://docs.cohere.com/openapi.yaml","https://docs.cohere.com/openapi/cohere-api-2.json","https://docs.cohere.com/openapi/cohere-api.json"],"signal_summary":{"openapi":{"detected":true,"matched_terms":["openapi"]},"authentication":{"detected":true,"matched_terms":["authentication","oauth","bearer token","api key"]},"errors":{"detected":true,"matched_terms":["status codes","429"]},"rate_limits":{"detected":true,"matched_terms":["rate limit"]},"webhooks":{"detected":false,"matched_terms":[]},"sandbox":{"detected":false,"matched_terms":[]},"agent_workflows":{"detected":true,"matched_terms":["mcp","agent","tool use"]},"developer_experience":{"detected":true,"matched_terms":["sdk","quickstart","cli"]},"commercial_trust":{"detected":true,"matched_terms":["security","sla"]},"mcp_support":{"detected":true,"matched_terms":["mcp server"]},"machine_payments":{"detected":false,"matched_terms":[]},"machine_pricing":{"detected":false,"matched_terms":[]},"budget_controls":{"detected":false,"matched_terms":[]},"agent_identity":{"detected":false,"matched_terms":[]},"auditability":{"detected":false,"matched_terms":[]},"agent_observability":{"detected":false,"matched_terms":[]}},"readiness_scoring_pages":12,"readiness_scoring_source":"yoofoozbot_crawl_documents","agent_commerce_probe":{"score":45,"level":"Agent Commerce Emerging","machine_payment_capable":false,"detected_protocols":["MCP"],"evidence_categories":["agent_identity_auth","agent_observability","agent_rate_controls","agent_security","auditability","budget_controls","deterministic_errors","machine_payments","machine_pricing","mcp_support"]}},"ai_analysis":{"provider":"nvidia","enabled":true,"model":"meta/llama-4-maverick-17b-128e-instruct","summary":null,"credibility_notes":[],"next_actions":[],"error":"NVIDIA analysis failed: http 410"}}