https://github.com/caltechlibrary/dataciteapi
A Golang package and command line utility for working with the public DataCite API
https://github.com/caltechlibrary/dataciteapi
Last synced: 5 months ago
JSON representation
A Golang package and command line utility for working with the public DataCite API
- Host: GitHub
- URL: https://github.com/caltechlibrary/dataciteapi
- Owner: caltechlibrary
- License: other
- Created: 2018-07-11T15:52:42.000Z (almost 8 years ago)
- Default Branch: main
- Last Pushed: 2025-08-06T22:02:21.000Z (11 months ago)
- Last Synced: 2025-12-30T15:11:29.356Z (6 months ago)
- Language: JavaScript
- Size: 474 KB
- Stars: 2
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Citation: CITATION.cff
- Codemeta: codemeta.json
Awesome Lists containing this project
README
dataciteapi
===========
This is a go package for working with the DataCite API. It is inspired by
work my colleague Tom Morrel has done in Python. This package is meant
to follow the guidelines for interacting with the public API at
api.datacite.org. It also follows the same form as the golang
[CrossRef API](https://github.com/caltechlibrary/crossrefapi)
developed previously at Caltech Library.
Go package example
------------------
```go
appName := path.Base(os.Args[0])
client, err := dataciteapi.NewDataCiteClient(appName, "jane.doe@library.example.edu")
if err != nil {
// handle error...
}
works, err := client.Works("10.1037/0003-066x.59.1.29")
if err != nil {
// handle error...
}
// continue processing your "works" result...
```
Command line example
--------------------
```
dataciteapi -mailto="jane.doe@library.example.edu" works "10.1037/0003-066x.59.1.29"
```
Reference
---------
+ [DataCite API Docs](https://support.datacite.org/docs/api)
+ [DataCite Metadata Schema v4.1](http://schema.datacite.org/meta/kernel-4.1/)