@entryscape/api-client
v1.4.0
Published
TypeScript client for the EntryScape API - provides access to EntryScape data following DCAT-AP standards
Downloads
523
Readme
@entryscape/api-client
TypeScript client for the EntryScape API - provides access to EntryScape data following DCAT-AP standards
This is the npm client for the EntryScape API, for JavaScript and TypeScript alike. The
package ships both an ESM and a CommonJS build, so import and require() both work and
TypeScript is not required to use it — the name describes what it is written in, not what you
have to write. There is a separate generated JavaScript SDK, shipped only in the SDK artifact
image and deliberately not published to npm; use this package instead.
Installation
npm install @entryscape/api-clientEvery release is also published as an archive at https://api.entryscape.com/sdk/latest/typescript-sdk.tar.gz, for a build that cannot reach npm or has to vendor its dependencies:
The archive has no top-level directory of its own, so unpack it into one:
mkdir entryscape-client && tar -xzf typescript-sdk.tar.gz -C entryscape-client
npm install ./entryscape-clientQuick Start
import { Configuration, DatasetApi } from "@entryscape/api-client";
const config = new Configuration({
basePath: "http://localhost:8080",
apiKey: "YOUR_API_KEY", // Optional: for authenticated endpoints
});
const api = new DatasetApi(config);
// List datasets
const datasets = await api.listDatasets({
xEntrystoreHost: "dev.entryscape.com/store/",
limit: 10,
});
console.log(`Found ${datasets.results} datasets`);
// Get a specific dataset
const dataset = await api.getDataset({
contextId: "1",
entryId: "123",
xEntrystoreHost: "dev.entryscape.com/store/",
});
console.log(`Dataset URI: ${dataset.uri}`);Features
- Dual ESM/CJS - Works with both ES modules and CommonJS
- TypeScript-first - Full type definitions included
- Node.js 18+ - Uses native fetch, no polyfills needed
- Tree-shakeable - Import only what you need
API Reference
Endpoints
All URIs are relative to https://api.entryscape.com. Every endpoint is documented, with request and response examples, in the API reference.
| Class | Method | HTTP request | Description | | ----- | ------ | ------------ | ----------- | | AppTokenApi | createAppToken | POST /app-token | Create app token | | AppTokenApi | getAppToken | GET /app-token/{app_token_id} | Get app token details | | AppTokenApi | verifyAppToken | POST /app-token/verify | Verify app token | | AuthApi | login | POST /auth/login | Log in (start a user session) | | AuthApi | logout | POST /auth/logout | Log out (end the user session) | | AuthApi | whoami | GET /auth/whoami | Current user for the session | | CatalogApi | createCatalog | POST /catalog | Create catalog | | CatalogApi | deleteCatalog | DELETE /catalog/{context_id}/{entry_id} | Delete catalog | | CatalogApi | getCatalog | GET /catalog/{context_id}/{entry_id} | Get catalog | | CatalogApi | getCatalogMetadata | GET /catalog/{context_id}/{entry_id}/metadata | Get catalog metadata | | CatalogApi | listCatalogDataservices | GET /catalog/{context_id}/{entry_id}/dataservices | List data services in catalog | | CatalogApi | listCatalogDatasets | GET /catalog/{context_id}/{entry_id}/datasets | List datasets in catalog | | CatalogApi | listCatalogs | GET /catalog | List catalogs | | CatalogApi | updateCatalogMetadata | PUT /catalog/{context_id}/{entry_id}/metadata | Update catalog metadata | | CatalogApi | validateCatalog | GET /catalog/{context_id}/{entry_id}/validate | Validate catalog metadata | | ContactApi | createContact | POST /contact | Create contact | | ContactApi | deleteContact | DELETE /contact/{context_id}/{entry_id} | Delete contact | | ContactApi | getContact | GET /contact/{context_id}/{entry_id} | Get contact | | ContactApi | getContactMetadata | GET /contact/{context_id}/{entry_id}/metadata | Get contact metadata | | ContactApi | listContacts | GET /contact | List contacts | | ContactApi | updateContactMetadata | PUT /contact/{context_id}/{entry_id}/metadata | Update contact metadata | | ContactApi | validateContact | GET /contact/{context_id}/{entry_id}/validate | Validate contact metadata | | DataserviceApi | createDataService | POST /dataservice | Create data service | | DataserviceApi | deleteDataService | DELETE /dataservice/{context_id}/{entry_id} | Delete data service | | DataserviceApi | getDataService | GET /dataservice/{context_id}/{entry_id} | Get data service | | DataserviceApi | getDataServiceMetadata | GET /dataservice/{context_id}/{entry_id}/metadata | Get data service metadata | | DataserviceApi | listDataServices | GET /dataservice | List data services | | DataserviceApi | updateDataServiceMetadata | PUT /dataservice/{context_id}/{entry_id}/metadata | Update data service metadata | | DataserviceApi | validateDataService | GET /dataservice/{context_id}/{entry_id}/validate | Validate data service metadata | | DatasetApi | createDataset | POST /dataset | Create dataset | | DatasetApi | deleteDataset | DELETE /dataset/{context_id}/{entry_id} | Delete dataset | | DatasetApi | getDataset | GET /dataset/{context_id}/{entry_id} | Get dataset | | DatasetApi | getDatasetMetadata | GET /dataset/{context_id}/{entry_id}/metadata | Get dataset metadata | | DatasetApi | listDatasetDistributions | GET /dataset/{context_id}/{entry_id}/distributions | List distributions for dataset | | DatasetApi | listDatasets | GET /dataset | List datasets | | DatasetApi | updateDatasetMetadata | PUT /dataset/{context_id}/{entry_id}/metadata | Update dataset metadata | | DatasetApi | validateDataset | GET /dataset/{context_id}/{entry_id}/validate | Validate dataset metadata | | DistributionApi | createDistribution | POST /distribution | Create distribution | | DistributionApi | deleteDistribution | DELETE /distribution/{context_id}/{entry_id} | Delete distribution | | DistributionApi | getDistribution | GET /distribution/{context_id}/{entry_id} | Get distribution | | DistributionApi | getDistributionMetadata | GET /distribution/{context_id}/{entry_id}/metadata | Get distribution metadata | | DistributionApi | listDistributions | GET /distribution | List distributions | | DistributionApi | updateDistributionMetadata | PUT /distribution/{context_id}/{entry_id}/metadata | Update distribution metadata | | DistributionApi | validateDistribution | GET /distribution/{context_id}/{entry_id}/validate | Validate distribution metadata | | DocumentApi | createDocument | POST /document | Create document | | DocumentApi | deleteDocument | DELETE /document/{context_id}/{entry_id} | Delete document | | DocumentApi | getDocument | GET /document/{context_id}/{entry_id} | Get document | | DocumentApi | getDocumentMetadata | GET /document/{context_id}/{entry_id}/metadata | Get document metadata | | DocumentApi | listDocuments | GET /document | List documents | | DocumentApi | updateDocumentMetadata | PUT /document/{context_id}/{entry_id}/metadata | Update document metadata | | IdeaApi | createIdea | POST /idea | Create idea | | IdeaApi | deleteIdea | DELETE /idea/{context_id}/{entry_id} | Delete idea | | IdeaApi | getIdea | GET /idea/{context_id}/{entry_id} | Get idea | | IdeaApi | getIdeaMetadata | GET /idea/{context_id}/{entry_id}/metadata | Get idea metadata | | IdeaApi | listIdeas | GET /idea | List ideas | | IdeaApi | updateIdeaMetadata | PUT /idea/{context_id}/{entry_id}/metadata | Update idea metadata | | JobApi | getJobStatus | GET /job/{job_id} | Get job status | | ModelApi | createModel | POST /model | Create model | | ModelApi | deleteModel | DELETE /model/{context_id} | Delete model | | ModelApi | getModel | GET /model/{context_id} | Get model | | ModelApi | getModelMetadata | GET /model/{context_id}/metadata | Get model metadata | | ModelApi | listModels | GET /model | List models | | ModelApi | updateModelMetadata | PUT /model/{context_id}/metadata | Update model metadata | | ModelClassApi | createModelClass | POST /model/{context_id}/classes | Create model class | | ModelClassApi | deleteModelClass | DELETE /model/{context_id}/classes/{entry_id} | Delete model class | | ModelClassApi | getModelClass | GET /model/{context_id}/classes/{entry_id} | Get model class | | ModelClassApi | getModelClassMetadata | GET /model/{context_id}/classes/{entry_id}/metadata | Get model class metadata | | ModelClassApi | listModelClasses | GET /model/{context_id}/classes | List model classes | | ModelClassApi | updateModelClassMetadata | PUT /model/{context_id}/classes/{entry_id}/metadata | Update model class metadata | | ModelDiagramApi | createModelDiagram | POST /model/{context_id}/diagrams | Create model diagram | | ModelDiagramApi | deleteModelDiagram | DELETE /model/{context_id}/diagrams/{entry_id} | Delete model diagram | | ModelDiagramApi | getModelDiagram | GET /model/{context_id}/diagrams/{entry_id} | Get model diagram | | ModelDiagramApi | getModelDiagramMetadata | GET /model/{context_id}/diagrams/{entry_id}/metadata | Get model diagram metadata | | ModelDiagramApi | listModelDiagrams | GET /model/{context_id}/diagrams | List model diagrams | | ModelDiagramApi | updateModelDiagramMetadata | PUT /model/{context_id}/diagrams/{entry_id}/metadata | Update model diagram metadata | | ModelFieldApi | createModelField | POST /model/{context_id}/fields | Create model field | | ModelFieldApi | deleteModelField | DELETE /model/{context_id}/fields/{entry_id} | Delete model field | | ModelFieldApi | getModelField | GET /model/{context_id}/fields/{entry_id} | Get model field | | ModelFieldApi | getModelFieldMetadata | GET /model/{context_id}/fields/{entry_id}/metadata | Get model field metadata | | ModelFieldApi | listModelFields | GET /model/{context_id}/fields | List model fields | | ModelFieldApi | updateModelFieldMetadata | PUT /model/{context_id}/fields/{entry_id}/metadata | Update model field metadata | | ModelFormApi | createModelForm | POST /model/{context_id}/forms | Create model form | | ModelFormApi | deleteModelForm | DELETE /model/{context_id}/forms/{entry_id} | Delete model form | | ModelFormApi | getModelForm | GET /model/{context_id}/forms/{entry_id} | Get model form | | ModelFormApi | getModelFormMetadata | GET /model/{context_id}/forms/{entry_id}/metadata | Get model form metadata | | ModelFormApi | listModelForms | GET /model/{context_id}/forms | List model forms | | ModelFormApi | updateModelFormMetadata | PUT /model/{context_id}/forms/{entry_id}/metadata | Update model form metadata | | ModelNamespaceApi | createModelNamespace | POST /model/{context_id}/namespaces | Create model namespace | | ModelNamespaceApi | deleteModelNamespace | DELETE /model/{context_id}/namespaces/{entry_id} | Delete model namespace | | ModelNamespaceApi | getModelNamespace | GET /model/{context_id}/namespaces/{entry_id} | Get model namespace | | ModelNamespaceApi | getModelNamespaceMetadata | GET /model/{context_id}/namespaces/{entry_id}/metadata | Get model namespace metadata | | ModelNamespaceApi | listModelNamespaces | GET /model/{context_id}/namespaces | List model namespaces | | ModelNamespaceApi | updateModelNamespaceMetadata | PUT /model/{context_id}/namespaces/{entry_id}/metadata | Update model namespace metadata | | ModelPropertyApi | createModelProperty | POST /model/{context_id}/properties | Create model property | | ModelPropertyApi | deleteModelProperty | DELETE /model/{context_id}/properties/{entry_id} | Delete model property | | ModelPropertyApi | getModelProperty | GET /model/{context_id}/properties/{entry_id} | Get model property | | ModelPropertyApi | getModelPropertyMetadata | GET /model/{context_id}/properties/{entry_id}/metadata | Get model property metadata | | ModelPropertyApi | listModelProperties | GET /model/{context_id}/properties | List model properties | | ModelPropertyApi | updateModelPropertyMetadata | PUT /model/{context_id}/properties/{entry_id}/metadata | Update model property metadata | | OrganizationApi | createOrganization | POST /organization | Create organization | | OrganizationApi | deleteOrganization | DELETE /organization/{context_id}/{entry_id} | Delete organization | | OrganizationApi | getOrganization | GET /organization/{context_id}/{entry_id} | Get organization | | OrganizationApi | getOrganizationMetadata | GET /organization/{context_id}/{entry_id}/metadata | Get organization metadata | | OrganizationApi | listOrganizations | GET /organization | List organizations | | OrganizationApi | updateOrganizationMetadata | PUT /organization/{context_id}/{entry_id}/metadata | Update organization metadata | | OrganizationApi | validateOrganization | GET /organization/{context_id}/{entry_id}/validate | Validate organization metadata | | SearchApi | advancedSearch | POST /search | Advanced search | | SearchApi | getSearchFacets | GET /search/facets | Get available facet fields | | SearchApi | search | GET /search | Search entries | | ShowcaseApi | createShowcase | POST /showcase | Create showcase | | ShowcaseApi | deleteShowcase | DELETE /showcase/{context_id}/{entry_id} | Delete showcase | | ShowcaseApi | getShowcase | GET /showcase/{context_id}/{entry_id} | Get showcase | | ShowcaseApi | getShowcaseMetadata | GET /showcase/{context_id}/{entry_id}/metadata | Get showcase metadata | | ShowcaseApi | listShowcases | GET /showcase | List showcases | | ShowcaseApi | updateShowcaseMetadata | PUT /showcase/{context_id}/{entry_id}/metadata | Update showcase metadata | | SuggestionApi | createSuggestion | POST /suggestion | Create suggestion | | SuggestionApi | deleteSuggestion | DELETE /suggestion/{context_id}/{entry_id} | Delete suggestion | | SuggestionApi | getSuggestion | GET /suggestion/{context_id}/{entry_id} | Get suggestion | | SuggestionApi | getSuggestionMetadata | GET /suggestion/{context_id}/{entry_id}/metadata | Get suggestion metadata | | SuggestionApi | listSuggestions | GET /suggestion | List suggestions | | SuggestionApi | updateSuggestionMetadata | PUT /suggestion/{context_id}/{entry_id}/metadata | Update suggestion metadata | | TerminologyApi | deleteTerminology | DELETE /terminology/{context_id} | Delete terminology | | TerminologyApi | getTerminology | GET /terminology/{context_id} | Get terminology | | TerminologyApi | importTerminology | POST /terminology/import | Import SKOS terminology | | TerminologyApi | listTerminologies | GET /terminology | List terminologies | | UploadApi | addFileToDistribution | POST /distribution/addFile | Add file to distribution | | UploadApi | replaceFileInDistribution | POST /distribution/replaceFile | Replace file in distribution |
Models
AppTokenAppTokenCreateRequestAppTokenCreateResponseAppTokenStatusAppTokenVerifyRequestEntityListItemEntityListResponseEntityReferenceEntityTypeFacetFieldFacetFieldValuesInnerFacetListFacetListAvailableInnerJobResponseJobStatusJobStatusProgressJobStatusValueJobTypeListCatalogsEntryTypeParameterListCatalogsGraphTypeParameterListCatalogsResourceTypeParameterLoginRequestLoginResponseMetadataFormatMetadataRequestModelErrorParentReferenceSearchQuerySearchRequestFiltersSearchRequestFiltersGraphTypeSearchRequestFiltersResourceTypeSearchRequestSortSearchRequestSortOrderSearchResponseSearchResultSearchResultGraphTypeSearchResultResourceTypeSearchSortOrderParameterTerminologyImportModeValidationProfileValidationResponseValidationResultValidationSeverityValidationSummaryWhoamiResponse
Authentication
| Method | Type | Parameter |
| ------ | ---- | --------- |
| auth_token | API Key | auth_token |
| auth_header | API Key | X-Auth-Token (header) |
| app_token_header | API Key | X-App-Token (header) |
Configuration
import { Configuration } from "@entryscape/api-client";
const config = new Configuration({
basePath: "http://localhost:8080", // API server URL
apiKey: "your-api-key", // For authenticated requests
headers: { // Custom headers
"X-Custom-Header": "value",
},
credentials: "include", // For cookies (CORS)
});Examples
For working code examples including metadata parsing, file uploads, and more, see:
- Generated API docs - Per-endpoint documentation with code samples
- Complete runnable examples under
examples/in the archive described under Installation
License
LGPLv3
