{"id":25830870,"url":"https://github.com/lab5e/java-spanapi","last_synced_at":"2026-06-09T06:04:25.052Z","repository":{"id":97096118,"uuid":"359772232","full_name":"lab5e/java-spanapi","owner":"lab5e","description":"Java API client for Span","archived":false,"fork":false,"pushed_at":"2024-08-28T14:20:25.000Z","size":1061,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-08-28T15:47:53.473Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lab5e.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-20T10:18:39.000Z","updated_at":"2024-08-28T14:20:29.000Z","dependencies_parsed_at":"2023-10-11T12:40:01.663Z","dependency_job_id":"3dde1cd0-a12f-4439-ba0b-0590cc3ea465","html_url":"https://github.com/lab5e/java-spanapi","commit_stats":null,"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lab5e%2Fjava-spanapi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lab5e%2Fjava-spanapi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lab5e%2Fjava-spanapi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lab5e%2Fjava-spanapi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lab5e","download_url":"https://codeload.github.com/lab5e/java-spanapi/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241212336,"owners_count":19927924,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-28T19:34:20.692Z","updated_at":"2026-06-09T06:04:25.024Z","avatar_url":"https://github.com/lab5e.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# span-java-client\n\nThe Span API\n- API version: 4.4.2 nonviolent-adelbert\n  - Build date: 2023-03-02T10:55:33.745521Z[Etc/UTC]\n\nAPI for device, collection, output and firmware management\n\n  For more information, please visit [https://lab5e.com](https://lab5e.com)\n\n*Automatically generated by the [OpenAPI Generator](https://openapi-generator.tech)*\n\n\n## Requirements\n\nBuilding the API client library requires:\n1. Java 1.8+\n2. Maven (3.8.3+)/Gradle (7.2+)\n\n## Installation\n\nTo install the API client library to your local Maven repository, simply execute:\n\n```shell\nmvn clean install\n```\n\nTo deploy it to a remote Maven repository instead, configure the settings of the repository and execute:\n\n```shell\nmvn clean deploy\n```\n\nRefer to the [OSSRH Guide](http://central.sonatype.org/pages/ossrh-guide.html) for more information.\n\n### Maven users\n\nAdd this dependency to your project's POM:\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.lab5e\u003c/groupId\u003e\n  \u003cartifactId\u003espan-java-client\u003c/artifactId\u003e\n  \u003cversion\u003e4.4.2\u003c/version\u003e\n  \u003cscope\u003ecompile\u003c/scope\u003e\n\u003c/dependency\u003e\n```\n\n### Gradle users\n\nAdd this dependency to your project's build file:\n\n```groovy\n  repositories {\n    mavenCentral()     // Needed if the 'span-java-client' jar has been published to maven central.\n    mavenLocal()       // Needed if the 'span-java-client' jar has been published to the local maven repo.\n  }\n\n  dependencies {\n     implementation \"com.lab5e:span-java-client:4.4.2\"\n  }\n```\n\n### Others\n\nAt first generate the JAR by executing:\n\n```shell\nmvn clean package\n```\n\nThen manually install the following JARs:\n\n* `target/span-java-client-4.4.2.jar`\n* `target/lib/*.jar`\n\n## Getting Started\n\nPlease follow the [installation](#installation) instruction and execute the following Java code:\n\n```java\n\n// Import classes:\nimport com.lab5e.ApiClient;\nimport com.lab5e.ApiException;\nimport com.lab5e.Configuration;\nimport com.lab5e.auth.*;\nimport com.lab5e.models.*;\nimport com.lab5e.span.BlobsApi;\n\npublic class Example {\n  public static void main(String[] args) {\n    ApiClient defaultClient = Configuration.getDefaultApiClient();\n    defaultClient.setBasePath(\"https://api.lab5e.com\");\n    \n    // Configure API key authorization: APIToken\n    ApiKeyAuth APIToken = (ApiKeyAuth) defaultClient.getAuthentication(\"APIToken\");\n    APIToken.setApiKey(\"YOUR API KEY\");\n    // Uncomment the following line to set a prefix for the API key, e.g. \"Token\" (defaults to null)\n    //APIToken.setApiKeyPrefix(\"Token\");\n\n    BlobsApi apiInstance = new BlobsApi(defaultClient);\n    String collectionId = \"collectionId_example\"; // String | \n    String blobId = \"blobId_example\"; // String | \n    try {\n      Object result = apiInstance.deleteBlob(collectionId, blobId);\n      System.out.println(result);\n    } catch (ApiException e) {\n      System.err.println(\"Exception when calling BlobsApi#deleteBlob\");\n      System.err.println(\"Status code: \" + e.getCode());\n      System.err.println(\"Reason: \" + e.getResponseBody());\n      System.err.println(\"Response headers: \" + e.getResponseHeaders());\n      e.printStackTrace();\n    }\n  }\n}\n\n```\n\n## Documentation for API Endpoints\n\nAll URIs are relative to *https://api.lab5e.com*\n\nClass | Method | HTTP request | Description\n------------ | ------------- | ------------- | -------------\n*BlobsApi* | [**deleteBlob**](docs/BlobsApi.md#deleteBlob) | **DELETE** /span/collections/{collectionId}/blobs/{blobId} | Remove a blob stored on a collection\n*BlobsApi* | [**listBlobs**](docs/BlobsApi.md#listBlobs) | **GET** /span/collections/{collectionId}/blobs | List the blobs for a collection\n*CertificatesApi* | [**createCertificate**](docs/CertificatesApi.md#createCertificate) | **POST** /span/collections/{collectionId}/certificates/create | Create certificate\n*CertificatesApi* | [**retrieveCertificateChain**](docs/CertificatesApi.md#retrieveCertificateChain) | **GET** /span/collections/{collectionId}/certificates | Get certificate chain\n*CertificatesApi* | [**signCertificate**](docs/CertificatesApi.md#signCertificate) | **POST** /span/collections/{collectionId}/certificates/sign | Sign certificate\n*CertificatesApi* | [**verifyCertificate**](docs/CertificatesApi.md#verifyCertificate) | **POST** /span/collections/{collectionId}/certificates/verify | Verify certificate\n*CollectionsApi* | [**createCollection**](docs/CollectionsApi.md#createCollection) | **POST** /span/collections | Create collection\n*CollectionsApi* | [**deleteCollection**](docs/CollectionsApi.md#deleteCollection) | **DELETE** /span/collections/{collectionId} | Delete collection\n*CollectionsApi* | [**listCollectionData**](docs/CollectionsApi.md#listCollectionData) | **GET** /span/collections/{collectionId}/data | Retrieve data from devices\n*CollectionsApi* | [**listCollections**](docs/CollectionsApi.md#listCollections) | **GET** /span/collections | List collections\n*CollectionsApi* | [**retrieveCollection**](docs/CollectionsApi.md#retrieveCollection) | **GET** /span/collections/{collectionId} | Retrieve collection\n*CollectionsApi* | [**updateCollection**](docs/CollectionsApi.md#updateCollection) | **PATCH** /span/collections/{collectionId} | Update collection\n*DevicesApi* | [**addDownstreamMessage**](docs/DevicesApi.md#addDownstreamMessage) | **POST** /span/collections/{collectionId}/devices/{deviceId}/outbox | Add message to oubox\n*DevicesApi* | [**createDevice**](docs/DevicesApi.md#createDevice) | **POST** /span/collections/{collectionId}/devices | Create device\n*DevicesApi* | [**deleteDevice**](docs/DevicesApi.md#deleteDevice) | **DELETE** /span/collections/{collectionId}/devices/{deviceId} | Remove device.\n*DevicesApi* | [**deleteDownstreamMessage**](docs/DevicesApi.md#deleteDownstreamMessage) | **DELETE** /span/collections/{collectionId}/devices/{deviceId}/outbox/{messageId} | Delete outgoing message\n*DevicesApi* | [**deviceCertificate**](docs/DevicesApi.md#deviceCertificate) | **GET** /span/collections/{collectionId}/devices/{deviceId}/certs | Get issued certificate(s) for device\n*DevicesApi* | [**listDeviceData**](docs/DevicesApi.md#listDeviceData) | **GET** /span/collections/{collectionId}/devices/{deviceId}/data | Retrieve data from device\n*DevicesApi* | [**listDevices**](docs/DevicesApi.md#listDevices) | **GET** /span/collections/{collectionId}/devices | List devices in collection.\n*DevicesApi* | [**listDownstreamMessages**](docs/DevicesApi.md#listDownstreamMessages) | **GET** /span/collections/{collectionId}/devices/{deviceId}/outbox | List the messages in the outbox\n*DevicesApi* | [**listUpstreamMessages**](docs/DevicesApi.md#listUpstreamMessages) | **GET** /span/collections/{collectionId}/devices/{deviceId}/inbox | List incoming messages\n*DevicesApi* | [**retrieveDevice**](docs/DevicesApi.md#retrieveDevice) | **GET** /span/collections/{collectionId}/devices/{deviceId} | Retrieve device\n*DevicesApi* | [**updateDevice**](docs/DevicesApi.md#updateDevice) | **PATCH** /span/collections/{existingCollectionId}/devices/{deviceId} | Update device\n*FotaApi* | [**clearFirmwareError**](docs/FotaApi.md#clearFirmwareError) | **DELETE** /span/collections/{collectionId}/devices/{deviceId}/fwerror | Clear FOTA error\n*FotaApi* | [**createFirmware**](docs/FotaApi.md#createFirmware) | **POST** /span/collections/{collectionId}/firmware | Create firmware\n*FotaApi* | [**deleteFirmware**](docs/FotaApi.md#deleteFirmware) | **DELETE** /span/collections/{collectionId}/firmware/{imageId} | Delete firmware\n*FotaApi* | [**firmwareUsage**](docs/FotaApi.md#firmwareUsage) | **GET** /span/collections/{collectionId}/firmware/{imageId}/usage | Firmware usage\n*FotaApi* | [**listFirmware**](docs/FotaApi.md#listFirmware) | **GET** /span/collections/{collectionId}/firmware | List firmware\n*FotaApi* | [**retrieveFirmware**](docs/FotaApi.md#retrieveFirmware) | **GET** /span/collections/{collectionId}/firmware/{imageId} | Retrieve firmware\n*FotaApi* | [**updateFirmware**](docs/FotaApi.md#updateFirmware) | **PATCH** /span/collections/{existingCollectionId}/firmware/{imageId} | Update firmware\n*GatewaysApi* | [**createGateway**](docs/GatewaysApi.md#createGateway) | **POST** /span/collections/{collectionId}/gateways | Create gateway\n*GatewaysApi* | [**deleteGateway**](docs/GatewaysApi.md#deleteGateway) | **DELETE** /span/collections/{collectionId}/gateways/{gatewayId} | Delete gateway\n*GatewaysApi* | [**gatewayCertificates**](docs/GatewaysApi.md#gatewayCertificates) | **GET** /span/collections/{collectionId}/gateways/{gatewayId}/certs | Get issued certificate(s) for gateway\n*GatewaysApi* | [**listGateways**](docs/GatewaysApi.md#listGateways) | **GET** /span/collections/{collectionId}/gateways | List gateways\n*GatewaysApi* | [**retrieveGateway**](docs/GatewaysApi.md#retrieveGateway) | **GET** /span/collections/{collectionId}/gateways/{gatewayId} | Retrieve gateway\n*GatewaysApi* | [**updateGateway**](docs/GatewaysApi.md#updateGateway) | **PATCH** /span/collections/{existingCollectionId}/gateways/{gatewayId} | Update gateway\n*OutputsApi* | [**createOutput**](docs/OutputsApi.md#createOutput) | **POST** /span/collections/{collectionId}/outputs | Create output\n*OutputsApi* | [**deleteOutput**](docs/OutputsApi.md#deleteOutput) | **DELETE** /span/collections/{collectionId}/outputs/{outputId} | Delete output\n*OutputsApi* | [**listOutputs**](docs/OutputsApi.md#listOutputs) | **GET** /span/collections/{collectionId}/outputs | List outputs\n*OutputsApi* | [**logs**](docs/OutputsApi.md#logs) | **GET** /span/collections/{collectionId}/outputs/{outputId}/logs | Output logs\n*OutputsApi* | [**retrieveOutput**](docs/OutputsApi.md#retrieveOutput) | **GET** /span/collections/{collectionId}/outputs/{outputId} | Retrieve output\n*OutputsApi* | [**status**](docs/OutputsApi.md#status) | **GET** /span/collections/{collectionId}/outputs/{outputId}/status | Output status\n*OutputsApi* | [**updateOutput**](docs/OutputsApi.md#updateOutput) | **PATCH** /span/collections/{existingCollectionId}/outputs/{outputId} | Update output\n*SpanApi* | [**getSystemInfo**](docs/SpanApi.md#getSystemInfo) | **GET** /span/system | System information\n\n\n## Documentation for Models\n\n - [AddDownstreamMessageRequest](docs/AddDownstreamMessageRequest.md)\n - [Any](docs/Any.md)\n - [Blob](docs/Blob.md)\n - [CellularIoTConfig](docs/CellularIoTConfig.md)\n - [CellularIoTMetadata](docs/CellularIoTMetadata.md)\n - [CertificateChainResponse](docs/CertificateChainResponse.md)\n - [CertificateInfo](docs/CertificateInfo.md)\n - [ClearFirmwareErrorResponse](docs/ClearFirmwareErrorResponse.md)\n - [CoAPMetadata](docs/CoAPMetadata.md)\n - [Collection](docs/Collection.md)\n - [CollectionFirmware](docs/CollectionFirmware.md)\n - [CreateCertificateRequest](docs/CreateCertificateRequest.md)\n - [CreateCertificateResponse](docs/CreateCertificateResponse.md)\n - [CreateCollectionRequest](docs/CreateCollectionRequest.md)\n - [CreateDeviceRequest](docs/CreateDeviceRequest.md)\n - [CreateFirmwareRequest](docs/CreateFirmwareRequest.md)\n - [CreateOutputRequest](docs/CreateOutputRequest.md)\n - [DeleteDownstreamMessageResponse](docs/DeleteDownstreamMessageResponse.md)\n - [Device](docs/Device.md)\n - [DeviceCertificateResponse](docs/DeviceCertificateResponse.md)\n - [DeviceConfig](docs/DeviceConfig.md)\n - [DeviceMetadata](docs/DeviceMetadata.md)\n - [Firmware](docs/Firmware.md)\n - [FirmwareManagement](docs/FirmwareManagement.md)\n - [FirmwareMetadata](docs/FirmwareMetadata.md)\n - [FirmwareUsageResponse](docs/FirmwareUsageResponse.md)\n - [Gateway](docs/Gateway.md)\n - [GatewayCIoTConfig](docs/GatewayCIoTConfig.md)\n - [GatewayCertificateResponse](docs/GatewayCertificateResponse.md)\n - [GatewayConfig](docs/GatewayConfig.md)\n - [GatewayCustomConfig](docs/GatewayCustomConfig.md)\n - [GatewayDeviceConfig](docs/GatewayDeviceConfig.md)\n - [GatewayDeviceMetadata](docs/GatewayDeviceMetadata.md)\n - [GatewayInetConfig](docs/GatewayInetConfig.md)\n - [GatewayMetadata](docs/GatewayMetadata.md)\n - [GatewayStatus](docs/GatewayStatus.md)\n - [GatewayType](docs/GatewayType.md)\n - [InetMetadata](docs/InetMetadata.md)\n - [InlineObject](docs/InlineObject.md)\n - [InlineObject1](docs/InlineObject1.md)\n - [ListBlobResponse](docs/ListBlobResponse.md)\n - [ListCollectionResponse](docs/ListCollectionResponse.md)\n - [ListDataResponse](docs/ListDataResponse.md)\n - [ListDevicesResponse](docs/ListDevicesResponse.md)\n - [ListDownstreamMessagesResponse](docs/ListDownstreamMessagesResponse.md)\n - [ListFirmwareResponse](docs/ListFirmwareResponse.md)\n - [ListGatewayResponse](docs/ListGatewayResponse.md)\n - [ListOutputResponse](docs/ListOutputResponse.md)\n - [ListUpstreamMessagesResponse](docs/ListUpstreamMessagesResponse.md)\n - [MQTTMetadata](docs/MQTTMetadata.md)\n - [MessageDownstream](docs/MessageDownstream.md)\n - [MessageState](docs/MessageState.md)\n - [MessageTransport](docs/MessageTransport.md)\n - [MessageUpstream](docs/MessageUpstream.md)\n - [Output](docs/Output.md)\n - [OutputConfig](docs/OutputConfig.md)\n - [OutputDataMessage](docs/OutputDataMessage.md)\n - [OutputLogEntry](docs/OutputLogEntry.md)\n - [OutputLogResponse](docs/OutputLogResponse.md)\n - [OutputMessageType](docs/OutputMessageType.md)\n - [OutputStatusResponse](docs/OutputStatusResponse.md)\n - [OutputType](docs/OutputType.md)\n - [RetrieveBlobResponse](docs/RetrieveBlobResponse.md)\n - [SignCertificateRequest](docs/SignCertificateRequest.md)\n - [SignCertificateResponse](docs/SignCertificateResponse.md)\n - [Status](docs/Status.md)\n - [SystemInfoResponse](docs/SystemInfoResponse.md)\n - [UDPMetadata](docs/UDPMetadata.md)\n - [UpdateCollectionRequest](docs/UpdateCollectionRequest.md)\n - [UpdateDeviceRequest](docs/UpdateDeviceRequest.md)\n - [UpdateFirmwareRequest](docs/UpdateFirmwareRequest.md)\n - [UpdateOutputRequest](docs/UpdateOutputRequest.md)\n - [VerifyCertificateRequest](docs/VerifyCertificateRequest.md)\n - [VerifyCertificateResponse](docs/VerifyCertificateResponse.md)\n\n\n## Documentation for Authorization\n\nAuthentication schemes defined for the API:\n### APIToken\n\n- **Type**: API key\n- **API key parameter name**: X-API-Token\n- **Location**: HTTP header\n\n\n## Recommendation\n\nIt's recommended to create an instance of `ApiClient` per thread in a multithreaded environment to avoid any potential issues.\n\n## Author\n\ndev@lab5e.com\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flab5e%2Fjava-spanapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flab5e%2Fjava-spanapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flab5e%2Fjava-spanapi/lists"}