Install
openclaw skills install @try028/odata-serviceWork with the complete standards-based OData v4.0 and v4.01 protocol: discover models and capabilities; query and track data; create, update, upsert, and delete entities; manage relationships and streams; invoke functions and actions; and use batch or asynchronous requests. Use for integrating or op
openclaw skills install @try028/odata-serviceUse the service's CSDL model and capability annotations as the source of truth. OData standardizes protocol semantics, not a provider's entity names, permissions, business rules, authentication, quotas, or support for optional features.
If the user supplies a service root, use it for that request. If the user names a saved profile, use that profile. Otherwise run python scripts/odata_config.py list and use its default profile. Read references/configuration.md when no endpoint is available or the user wants to configure, select, inspect, or remove a reusable service profile.
Do not ask for the URL on every task when a default profile exists. If neither an explicit endpoint nor a configured default can be found, check only relevant project configuration/documentation and then ask the user for the service root. For state-changing work, identify the selected profile and resolved service root before execution.
$ref relationship changes, read references/writes-and-relationships.md.respond-async, read references/operations-batch-async.md.Read only the references relevant to the requested operation.
$metadata. Resolve exact entity set/singleton, key syntax and type, structural/navigation properties, operation signature, and applicable Org.OData.Capabilities.V1 restrictions. Do not infer names or writability.Location/OData-EntityId, ETag, Preference-Applied, and returned representation. When useful, perform a bounded read-after-write; do not mistake eventual consistency for failure.The dependency-free scripts/odata_request.py can issue guarded OData HTTP requests, inspect service/metadata endpoints, and traverse JSON collection pages. Run python scripts/odata_request.py --help. Prefer a provider SDK only when it preserves OData semantics and exposes required headers.
@odata.nextLink, @odata.deltaLink, async Location, edit/read/media links, and entity IDs verbatim after resolving relative URLs. Never invent opaque tokens.If-Match with the current ETag for updates, deletes, stream changes, and bound actions when concurrency matters or the model requires it. Use If-Match: * only when the user accepts overwriting any current version.Retry-After. Keep polling and retries bounded.