# CloudSight > CloudSight Inc. sells general-purpose image understanding as a single, simple REST API. POST an image — as a multipart upload, a base64 data URI, or a remote image URL — and receive a token; poll that token for a natural-language caption describing what is in the picture. The company grew out of the CamFind visual-search app and also ships an on-device SDK. CloudSight publishes no llms.txt of its own; this file was generated by API Evangelist from the provider's published API Blueprint and the artifacts in this repository. ## API - [CloudSight API](https://cloudsight.docs.apiary.io): Three operations — submit an image (`POST /images`), poll the annotation by token (`GET /images/{token}`), and repost a request that timed out or was skipped as unsure/close (`POST /images/{token}/repost`). Base URL `https://api.cloudsight.ai/v1`. ## Specs - [OpenAPI 3.1 (converted)](openapi/cloudsight-images-openapi.yml): Faithful conversion of CloudSight's published API Blueprint. CloudSight does not publish an OpenAPI. - [API Blueprint 1A (verbatim)](openapi/cloudsight-api-blueprint-original.apib): The provider's own machine-readable contract, as served by Apiary. - [Overlay](overlays/cloudsight-images-overlay.yaml): API Evangelist annotations on top of the converted spec. ## Runtime semantics - [Conventions](conventions/cloudsight-conventions.yml): Asynchronous submit-then-poll model, credit headers, error envelope, and the conventions CloudSight does not implement (no idempotency, no pagination, no webhooks). - [Authentication](authentication/cloudsight-authentication.yml): `Authorization: CloudSight [key]`, or OAuth 1.0a with `image` excluded from the signature. No OAuth 2.0, no scopes. - [Errors](errors/cloudsight-problem-types.yml): The 422 envelope plus the in-band failures — `skipped` with reasons offensive/blurry/dark/bright/unsure/close, and `timeout` — that arrive inside an HTTP 200. - [Examples](examples/cloudsight-images-examples.yml): Request and response payloads published by CloudSight. - [Data model](data-model/cloudsight-data-model.yml): One token-addressed recognition job and its status machine. ## Agents - [Agent Skill: describe an image](skills/cloudsight-describe-an-image.md): The full submit → poll → branch → repost flow. - [Agentic access profile](agentic-access/cloudsight-agentic-access.yml): Recommended execution contracts per operation. - [MCP (candidate)](mcp/cloudsight-mcp.yml): CloudSight operates no MCP server; this is a derived candidate tool surface, not a live endpoint. ## Operations - [Lifecycle](lifecycle/cloudsight-lifecycle.yml): v1 in the URI path; no deprecation policy, no SLA. The status page linked from CloudSight's own footer is deactivated and the blog subdomain no longer resolves. - [Changelog](changelog/cloudsight-changelog.yml): The Apiary "API changes" feed — nine dated document diffs, none since 2018. - [Sandbox](sandbox/cloudsight-sandbox.yml): A no-signup demo at cloudsight.ai/demo and the Apiary mock/console. No test keys, no test mode. - [Conformance](conformance/cloudsight-conformance.yml): What the API does and does not conform to. - [Domain security](security/cloudsight-domain-security.yml): TLS 1.3 everywhere; no HSTS, no DNSSEC, no CAA; SPF present, DMARC at p=none. - [Packages / SDKs](packages/cloudsight-packages.yml): First-party clients for Ruby, Python, Go, Elixir and Objective-C. The npm package was unpublished in 2025. ## Links - [Website](https://cloudsight.ai) - [Documentation](https://cloudsight.docs.apiary.io) - [GitHub organization](https://github.com/cloudsight) - [Contact](https://cloudsight.ai/contact) - [Terms of Service](https://cloudsight.ai/terms) - [Privacy Policy](https://cloudsight.ai/privacy-policy)