On this page

Walkthrough: validate a humanization order offline

Every command below ran against the release binary with an isolated environment. RENTAHUMAN_API_KEY was set to the non-secret value local-fixture where needed. Each request was intentionally invalid, so validation stopped before any network call.

Credential and id guard

$ skryba rentahuman get hum_123
Error: RENTAHUMAN_API_KEY is required for RentAHuman

$ RENTAHUMAN_API_KEY=local-fixture skryba rentahuman get ../etc
Error: humanization id contains invalid characters

An insecure endpoint is also refused:

$ RENTAHUMAN_API_KEY=local-fixture RENTAHUMAN_API_URL=http://rentahuman.ai/api skryba rentahuman get hum_123
Error: RENTAHUMAN_API_URL must be an HTTPS base URL without credentials, query, or fragment

Budget and idempotency validation

$ skryba rentahuman create --turnaround-minutes 3 --price-cents 1000 --idempotency-key docs-demo-0001
Error: turnaround minutes must be between 5 and 10080

$ skryba rentahuman create --turnaround-minutes 120 --price-cents 100 --idempotency-key docs-demo-0001
Error: price cents must be between 300 and 100000000

$ skryba rentahuman create --turnaround-minutes 120 --price-cents 1000 --idempotency-key short
Error: idempotency key must contain 8 to 128 bytes

All exited 1 before POST.

Paired options

$ skryba rentahuman create --turnaround-minutes 120 --price-cents 1000 --idempotency-key docs-demo-0001 --language Polish
Error: --language and --minimum-proficiency must be configured together

$ skryba rentahuman create --turnaround-minutes 120 --price-cents 1000 --idempotency-key docs-demo-0001 --screening-instructions-file /dev/null
Error: --screening-instructions-file requires --applicant-sample-file

Screening bounds

With an applicant sample file:

$ skryba rentahuman create --turnaround-minutes 120 --price-cents 1000 --idempotency-key docs-demo-0001 --applicant-sample-file sample.txt --screening-percentage 30
Error: applicant screening percentage must be between 1 and 25

$ skryba rentahuman create --turnaround-minutes 120 --price-cents 1000 --idempotency-key docs-demo-0001 --applicant-sample-file sample.txt --screening-maximum-words 20
Error: applicant screening maximum words must be between 50 and 500

Empty stdin after otherwise valid flags produced:

$ printf '' | skryba rentahuman create --turnaround-minutes 120 --price-cents 1000 --idempotency-key docs-demo-0001
Error: source text must contain 1 to 100000 characters

A valid live command

After local validation, a real commission would be:

skryba rentahuman create draft.txt \
  --transformation clarity \
  --turnaround-minutes 120 \
  --price-cents 1000 \
  --idempotency-key project-article-2026-08-24

This final command is illustrative and was not sent: it would create a paid remote order. Retain the idempotency key if transport fails, then retry the same logical order with that same key.

Maintained as part of the website-owned Skryba documentation corpus.