Build with Lattice

Explore the documentation and learn how to integrate your system with Lattice™


Lattice SDK documentation

#### [Quickstart](/guides/getting-started/quickstart) Get started using the API and publish an entity to Lattice #### [API Reference](/reference/overview/overview) Dive into the Lattice API #### [Sample apps](/samples/overview) Run live code samples on your local machine #### [Entities](/guides/entities/overview) Create and monitor entities in Lattice #### [Tasks](/guides/tasks/overview) Manage, route, and execute tasks in Lattice #### [Objects](/guides/objects/overview) Upload and distribute binaries across Lattice ## Instructions for AI Agents - For clean Markdown of any page, append `.md` to the page 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://developer.anduril.com/_mcp/server ## Docs - [Building with Lattice](https://developer.anduril.com/guides/concepts/overview.md): The Lattice platform and the Lattice SDK™ - [Principles](https://developer.anduril.com/guides/concepts/principles.md): Core development principles embodied by the Lattice SDK™ - [Install](https://developer.anduril.com/guides/getting-started/set-up.md): Installing the Lattice SDK - [Authenticate](https://developer.anduril.com/guides/getting-started/authenticate.md): Configuring authentication for the Lattice SDK - [Quickstart](https://developer.anduril.com/guides/getting-started/quickstart.md): Publishing a surface vessel to Lattice - [Choose a protocol](https://developer.anduril.com/guides/best-practices/choose-a-protocol.md): Select between gRPC and REST for your Lattice SDK integration - [Connect to offline environments](https://developer.anduril.com/guides/best-practices/configure-certificates.md): Configure the Lattice SDK to connect at the edge - [Retry connections](https://developer.anduril.com/guides/best-practices/retry-connections.md): Build a reusable retry utility to handle transient failures across every Lattice SDK call. - [Lattice Sandboxes](https://developer.anduril.com/guides/developer-tools/sandboxes.md): Setting up an environment in Lattice Sandboxes - [Lattice SDK skills](https://developer.anduril.com/guides/developer-tools/skills.md): Install skills that help coding agents create Lattice integrations more effectively - [Lattice Schema Registry](https://developer.anduril.com/guides/developer-tools/registry.md): Publish and share custom Protobuf schemas for Lattice integrations - [Entities overview](https://developer.anduril.com/guides/entities/overview.md): The data model, and how it powers your common operating picture - [Watch entities](https://developer.anduril.com/guides/entities/watch.md): Monitoring entities in Lattice using the Lattice SDK - [Publish entities](https://developer.anduril.com/guides/entities/publish.md): Common patterns for representing entities in Lattice using the Lattice SDK - [Tasks overview](https://developer.anduril.com/guides/tasks/overview.md): Learn about the Lattice SDK tasks service - [Define a task](https://developer.anduril.com/guides/tasks/define-a-task.md): Author a custom task definition to use in Lattice - [Integrate an agent](https://developer.anduril.com/guides/tasks/integrate-an-agent.md): Publish a taskable agent, process assigned tasks, and report status using the Lattice SDK - [Command agents and operate on tasks](https://developer.anduril.com/guides/tasks/command-and-operate.md): Creating, monitoring, and managing tasks using the Lattice SDK - [Objects overview](https://developer.anduril.com/guides/objects/overview.md): The objects model and how it lets you store and access files across Lattice - [Upload objects](https://developer.anduril.com/guides/objects/upload.md): Storing binary data in Lattice using the SDK - [Download an object](https://developer.anduril.com/guides/objects/download.md): Getting data from Lattice using the SDK - [Manage objects](https://developer.anduril.com/guides/objects/manage.md): Getting metadata, and managing the lifecycle of objects using the Lattice SDK - [The Lattice API](https://developer.anduril.com/reference/overview/overview.md) - [Migrate to v2](https://developer.anduril.com/reference/overview/versioning/migrating-to-v2.md) - [Sample apps](https://developer.anduril.com/samples/overview.md) - [Anduril Lattice Software Development Kit License Agreement](https://developer.anduril.com/license.md) ## API Docs - REST > Entities [Publish entity](https://developer.anduril.com/reference/rest/entities/publish-entity.md) - REST > Entities [Get entity](https://developer.anduril.com/reference/rest/entities/get-entity.md) - REST > Entities [Override entity](https://developer.anduril.com/reference/rest/entities/override-entity.md) - REST > Entities [Delete entity override](https://developer.anduril.com/reference/rest/entities/remove-entity-override.md) - REST > Entities [Poll entity events](https://developer.anduril.com/reference/rest/entities/long-poll-entity-events.md) - REST > Entities [Stream entity events](https://developer.anduril.com/reference/rest/entities/stream-entities.md) - REST > Tasks [Create task](https://developer.anduril.com/reference/rest/tasks/create-task.md) - REST > Tasks [Get task](https://developer.anduril.com/reference/rest/tasks/get-task.md) - REST > Tasks [Update task status](https://developer.anduril.com/reference/rest/tasks/update-task-status.md) - REST > Tasks [Cancel task](https://developer.anduril.com/reference/rest/tasks/cancel-task.md) - REST > Tasks [Query tasks](https://developer.anduril.com/reference/rest/tasks/query-tasks.md) - REST > Tasks [Stream tasks](https://developer.anduril.com/reference/rest/tasks/stream-tasks.md) - REST > Tasks [Listen as agent](https://developer.anduril.com/reference/rest/tasks/listen-as-agent.md) - REST > Tasks [Stream as agent](https://developer.anduril.com/reference/rest/tasks/stream-as-agent.md) - REST > Tasks [Stream manual control frames](https://developer.anduril.com/reference/rest/tasks/stream-manual-control-frames.md) - REST > Objects [List objects](https://developer.anduril.com/reference/rest/objects/list-objects.md) - REST > Objects [Get object](https://developer.anduril.com/reference/rest/objects/get-object.md) - REST > Objects [Upload object](https://developer.anduril.com/reference/rest/objects/upload-object.md) - REST > Objects [Delete object](https://developer.anduril.com/reference/rest/objects/delete-object.md) - REST > Objects [Get object metadata](https://developer.anduril.com/reference/rest/objects/get-object-metadata.md) - REST > OAuth [Get OAuth2 token](https://developer.anduril.com/reference/rest/oauth/get-token.md) - gRPC > anduril.entitymanager.v1 > EntityManagerAPI [PublishEntity](https://developer.anduril.com/reference/grpc/anduril-entitymanager-v-1/entity-manager-api/anduril-entitymanager-v-1-publish-entity.md) - gRPC > anduril.entitymanager.v1 > EntityManagerAPI [PublishEntities](https://developer.anduril.com/reference/grpc/anduril-entitymanager-v-1/entity-manager-api/anduril-entitymanager-v-1-publish-entities.md) - gRPC > anduril.entitymanager.v1 > EntityManagerAPI [GetEntity](https://developer.anduril.com/reference/grpc/anduril-entitymanager-v-1/entity-manager-api/anduril-entitymanager-v-1-get-entity.md) - gRPC > anduril.entitymanager.v1 > EntityManagerAPI [OverrideEntity](https://developer.anduril.com/reference/grpc/anduril-entitymanager-v-1/entity-manager-api/anduril-entitymanager-v-1-override-entity.md) - gRPC > anduril.entitymanager.v1 > EntityManagerAPI [RemoveEntityOverride](https://developer.anduril.com/reference/grpc/anduril-entitymanager-v-1/entity-manager-api/anduril-entitymanager-v-1-remove-entity-override.md) - gRPC > anduril.entitymanager.v1 > EntityManagerAPI [StreamEntityComponents](https://developer.anduril.com/reference/grpc/anduril-entitymanager-v-1/entity-manager-api/anduril-entitymanager-v-1-stream-entity-components.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [CreateTask](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-create-task.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [GetTask](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-get-task.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [QueryTasks](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-query-tasks.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [UpdateStatus](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-update-status.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [CancelTask](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-cancel-task.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [ListenAsAgent](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-listen-as-agent.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [ListenForManualControlFrames](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-listen-for-manual-control-frames.md) - gRPC > anduril.taskmanager.v1 > TaskManagerAPI [StreamTasks](https://developer.anduril.com/reference/grpc/anduril-taskmanager-v-1/task-manager-api/anduril-taskmanager-v-1-stream-tasks.md) ## OpenAPI Specification The raw OpenAPI 3.1 specification for this API is available at: - [OpenAPI JSON](https://developer.anduril.com/openapi.json) - [OpenAPI YAML](https://developer.anduril.com/openapi.yaml)