Skip to content

hawkinR

2.2.0Package record

Interface to the 'Hawkin Dynamics' Force Platform API

0packages depend
1.1Kdownloads / year
41.1%test coverage
13/13flavors OK

Overview

About

Provides a secure and configurable interface to the 'Hawkin Dynamics' API for accessing athlete performance data, tests, and metadata. The package supports profile-based authentication with secure credential storage via the operating system keychain, automatic access token refresh, and region-aware API routing. Designed for reproducible analysis, data synchronization workflows, and production deployment.

Changes in 2.2.0

Breaking Changes

  • Because update_athletes() replaces external properties, updating with a position, sport, dob or height column now removes any external property of that name from the athlete. If an athlete still has one, get_athletes() returns it as a suffixed column such as position.1; that column is not sent, and a warning says so. Copy any value you want to keep into the native column first.

New Features

  • create_athletes() and update_athletes() now write the athlete profile fields position, sport, dob and height as native API fields. Previously a column with one of these names was sent as an external (custom) property of the same name.
  • dob accepts "YYYY-MM-DD", a 4-digit year ("1998" or 1998), a Date, or a POSIXct. Date-times are sent as the calendar date in their own time zone, never shifted to UTC.
  • height is in centimeters and is rounded to 1 decimal place. A warning is raised when a height below 100 is sent, because the API reads those values back as legacy feet or inches (95 reads back as 241.3).
  • An NA or blank value is not sent. On update the field is left unchanged; the API cannot clear these fields, so clear them in the Hawkin app.
  • The output of get_athletes() can be passed back to update_athletes() (or create_athletes()) without adding junk external properties. lastTestedOn is read-only and is never sent, and create_athletes() no longer sends an id column as an external property.

Bug Fixes

  • **CRITICAL:** update_athletes() always sent an external field, empty ([]) when the data frame had no custom-property columns. The API replaces external properties on update, so an update that only changed, say, name or active could delete every custom property on those athletes. external is now only sent for an athlete with at least one non-NA, non-blank custom value, and always as a JSON object. With no custom columns, or with every custom cell NA or blank, the athlete's custom properties are left unchanged. create_athletes() follows the same rule.
  • create_athletes() and update_athletes() sent a teams or groups list column nested one level too deep ([["t2","t3"]]), and sent a comma-separated string such as "t2,t3" as one ID. Both are now sent as a flat array of IDs: a list column element is flattened, and a string is split on , and trimmed, as the Sheets and Excel add-ins do. A single ID is still sent as an array. NA, NULL or blank values are not sent (on update, the athlete's teams or groups are left unchanged); previously a NULL list element was sent as [{}].
  • NA and blank custom-property values are no longer sent as external properties. A list-valued custom-property column now sends one string per athlete (several values joined with , ) and skips NULL or empty elements, which were previously sent as [{}] or [[]] and replaced the athlete's real custom properties on update.

From NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 2.0 min · r-release-macos-x86_64
Status changes
  • OK13 OK2026-08-05
  • NOTE12 OK, 1 NOTE2026-08-01
  • OK6 OK2026-07-20
Advisories

none known

Documentation

In release 2.2.0
READMEYes · 849 wordsVignettesYes · 5 · dynamicNEWSYes · 100% structured · mentions 2.2.0Citation fileNoWebsiteYes · pkgdown
Help pages
23 (3 internal)
Examples that run
0%10 never run
Exported functions with examples
53%
Documented parameters
100%
Return-value docs
100%
Help pages citing references
0%

Downloads

1.1K
CRAN downloads in the past year
Rank #12,198 · ~3/day · ~89/mo
Daily download trend is not available in this view yet.
33230 days
91290 days
1.1K1 year
Compare downloads with other packages →
Also on15 r2u3 autocran

Repository

11Stars
2Forks
0Open issues
0Open PRs
22Releases
114Commits
2Commit identities
114 commits · Last activity 2026-07-15 · The default branch showed an older version (1.2.4) than CRAN on 2026-10-21
Responsiveness
How these are sampled
PRs merged (all time)
88%
Median days to close, 50 most recently updated closed issues
74
Median days to close, 50 most recently updated closed PRs
0
PracticesBeta

7 development-tooling and community-health practices detected across 3 families in the upstream repository

Checks run against github.com/hawkindynamics/hawkinr on 2026-10-21.

Continuous integration (2)
GitHub ActionsR CMD check workflow

The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel

Docs source (4)
README.Rmdpkgdown

GitHub Pages site last deployed 2026-07-15 · The repository has a site deploy workflow

pkgdown site last built 2026-07-15, before release 2.2.0 (2026-10-05)

Lint, format, editor (1)
RStudio project
How this is detected·Detection ruleset v4 (2026-10-20)
AI coding toolsBeta

This repository shows signs of AI coding tools.

  • Claude Codefirst seen 2026-05-29
    Named in .Rbuildignore: .claude
    Named in .gitignore: .claude
    Commits: at least 7 crediting it in the message
From outside contributors
  • Claude Code
    Pull requests: 7 from outside contributors, first on 2025-12-29
Models named in its commits
  • Claude Opus 4.87 commits · May to Jul 2026
Counts are commits, not lines of code. Commits by a tool's accounts count once across all of its accounts. Commits crediting it are the largest count among its credit lines, a minimum.How this is detected·Detection ruleset v4 (updated 2026-09-27)

Dependencies

Declared dependencies
21 external dependencies (excludes base and recommended)

Installing hawkinR adds 39 packages (23 with compiled code, 24 MB of source tarballs). Heaviest: stringi 11 MB, logger 1.1 MB, openssl 1.1 MB.

Depends (1)
R >= 4.1.0
LinkingTo (0)
none
Enhances (0)
none
Reverse dependencies
0direct
0indirect

Nothing depends on this yet.

Datasets

People & History

People (1)
Author, Maintainer since 2.0.0 (2026)
Releases (3)

Pick two releases to compare their code metrics.

Package metadata

First published
2026-07-19
Total releases
3 / 1 yrs
License
MIT + file LICENSE OSI
Minimum R
≥ 4.1.0
Bundled data
12 KB / 1 file
Download size
390 KB

Cite

Cite this package

Run in R for the authors' preferred citation:

citation("hawkinR")
Green, L. (2026). hawkinR: Interface to the 'Hawkin Dynamics' Force Platform API (Version 2.2.0) [Computer software]. https://doi.org/10.32614/CRAN.package.hawkinR

This package has no citation file, so citation() returns this entry built from DESCRIPTION.

Cite the R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA

Balamuta, J. J. (2026). R Observatory: Metrics for hawkinR version 2.2.0 [Data set]. HJJB, LLC. Data release v2026-10-24. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy