Skip to content

voplica.types.creator

The protobuf package voplica.types.creator: 0 services, 6 messages and 5 enums, defined in voplica/types/creator/creator_program.proto.

Field Number Type Label Description
id 1 string
user_id 2 string
requested_bytes 3 uint64 What the creator is asking for, in bytes. Advisory: the admin sets the number that lands.
reason 4 string
status 5 CreatorAllowanceRequestStatus
created_at 6 uint64
decided_at 7 uint64 optional
decision_note 8 string optional
granted_bytes 9 uint64 optional The allowance actually set when GRANTED, in bytes (-1 is never used here: unlimited public hosting is not a thing an admin grants through this queue).

The answer to “may this model earn?”, recorded on the variant so the owner and an admin both see WHICH check passed and when.

Field Number Type Label Description
proven 1 bool
provider 2 voplica.types.vault.ThirdPartyProvider
external_ref 3 string
method 4 CreatorProvenanceMethod
verified_at 5 uint64 epoch millis
refusal_reason 6 string optional Present when proven is false: which check failed, in words the owner can act on.

One row of a pulled profile snapshot. Stored per link; returned only to the owner and to admins.

Field Number Type Label Description
provider 1 voplica.types.vault.ThirdPartyProvider
external_ref 2 string The provider’s canonical reference: “author/repo” for Hugging Face, “civitai:<modelId>” for Civitai. One spelling, so a declared ref can be compared without a per-provider parser.
display_name 3 string
external_updated_at 4 uint64 epoch millis, 0 when the provider announces none
file_sha256 5 string repeated Lowercase hex SHA-256 of the model’s weight files, as the PROVIDER announces them. Empty when it announces none - which is most of Hugging Face, and is why FILE_HASH is not the only method.
downloads 6 uint64
likes 7 uint64 Hugging Face likes; Civitai thumbsUpCount
favourites 8 uint64 Civitai favoriteCount; 0 on Hugging Face
rating_count 9 uint32 Civitai ratingCount; 0 on Hugging Face
rating 10 float Civitai rating (0-5); 0 on Hugging Face

The popularity snapshot of one linked profile, summed over the public listing the platform pulled (Hugging Face likes/downloads per model; Civitai thumbsUpCount/downloadCount/ favoriteCount/ratingCount/rating per model). Zero means “the provider announces none”.

Field Number Type Label Description
downloads_total 1 uint64
likes_total 2 uint64
favourites_total 3 uint64
max_model_likes 4 uint64
followers 5 uint64 Hugging Face numFollowers from the public user overview; 0 for Civitai.
fetched_at 6 uint64 epoch millis
ratings_total 7 uint64
rating_average 8 float

The applicant’s own record.

Field Number Type Label Description
user_id 1 string
status 2 CreatorProgramStatus
applied_at 3 uint64 epoch millis
decided_at 4 uint64 optional
decision_reason 5 string optional shown to the applicant on REJECTED / REVOKED
links 6 CreatorProviderLink repeated
applicant_note 7 string optional
terms_version_accepted 8 uint32
updated_at 9 uint64
submitted_without_link 12 bool
provider_link_count 13 uint32 links.size() on the same read - repeated so a client has one place to read the facts.
hosts_models 14 CreatorHostsModels Probed on the applicant’s own DRAFT read and on the admin DETAIL; UNKNOWN everywhere else (the mutator echoes, the admin LIST) by design - re-read the detail after a decision.

One linked provider profile, as the platform pulled it.

Field Number Type Label Description
provider 1 voplica.types.vault.ThirdPartyProvider
external_profile_id 2 string The provider’s own stable id for the profile (Civitai username, HuggingFace user/org name).
external_display_name 3 string
profile_url 4 string
namespaces 5 string repeated
snapshot_model_count 6 uint32 How many models the last pull saw. The list itself is not returned here - it can be thousands of rows and no caller of this message needs it.
snapshot_taken_at 7 uint64 epoch millis
link_method 8 CreatorLinkMethod
token_retained 9 bool
linked_at 10 uint64 epoch millis
stats 11 CreatorProfileStats optional
provider_verified 12 bool The PROVIDER’s own verification/badge status, where its public profile exposes one: Hugging Face PRO (hf:pro) and enterprise-organisation membership (hf:enterprise-org:<name>); Civitai exposes none through its public API today, so a Civitai link reads false/empty and that is not a finding about the creator. provider_verified = any badge that the platform treats as verification (today: hf:pro or an enterprise org).
provider_badges 13 string repeated
identity_verified_by 14 CreatorLinkMethod optional
identity_verified_at 15 uint64 optional
external_account_id 16 string
identity_check_failed_at 17 uint64 optional
provider_badges_fetched_at 18 uint64 optional
Name Number Description
CREATOR_ALLOWANCE_REQUEST_STATUS_UNSPECIFIED 0
CREATOR_ALLOWANCE_REQUEST_PENDING 1
CREATOR_ALLOWANCE_REQUEST_GRANTED 2
CREATOR_ALLOWANCE_REQUEST_REFUSED 3

Tri-state “does this applicant already host models on Voplica” (public, published, verified variants). UNKNOWN = not asked or unreachable; a client renders it exactly like NO. The zero value is spelled UNKNOWN on purpose: it is an answer (“asked, could not tell”), not an unset field. buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX

Name Number Description
CREATOR_HOSTS_MODELS_UNKNOWN 0
CREATOR_HOSTS_MODELS_NO 1
CREATOR_HOSTS_MODELS_YES 2

How the platform came to hold this link.

Name Number Description
CREATOR_LINK_METHOD_UNSPECIFIED 0
CREATOR_LINK_OAUTH 1
CREATOR_LINK_API_KEY 2

The application ladder, mirroring the affiliate payout ACCEPT ladder: a state an ADMIN moved is never moved back by the applicant.

Name Number Description
CREATOR_PROGRAM_STATUS_UNSPECIFIED 0 No application row exists. The answer for every user who has never applied.
CREATOR_PROGRAM_DRAFT 1
CREATOR_PROGRAM_SUBMITTED 2 In the admin queue. The applicant may withdraw (back to DRAFT) until an admin claims it.
CREATOR_PROGRAM_UNDER_REVIEW 3 An admin claimed it (the ACCEPT rung): the applicant can no longer withdraw or edit the links, exactly as an ACCEPTED payout locks the affiliate’s cancel.
CREATOR_PROGRAM_APPROVED 4 Approved. The ONLY state in which revenue share may be enabled or a creator allowance applies.
CREATOR_PROGRAM_REJECTED 5 Rejected with a reason. Re-appliable (the reason is shown to the applicant).
CREATOR_PROGRAM_REVOKED 6

WHICH of the three checks tied a model to a linked profile. Strongest first; see the RPC.

Name Number Description
CREATOR_PROVENANCE_METHOD_UNSPECIFIED 0
CREATOR_PROVENANCE_IMPORT_SOURCE 1 The variant was IMPORTED and its source ref sits under a namespace of the linked profile. Server-derived from the import row - the caller cannot influence it.
CREATOR_PROVENANCE_FILE_HASH 2 An import item’s announced SHA-256 matches a file hash in the pulled snapshot.
CREATOR_PROVENANCE_DECLARED_REF 3 The owner declared an external ref and it was FOUND in the pulled snapshot. The weakest of the three - it proves the CLAIM matches the profile, not that the bytes do - and it is still accepted because a creator may legitimately upload their own weights from disk. The cross-owner digest check (REVENUE_SHARE_DUPLICATE_CONTENT) is what stops it being a loophole.