Skip to content
Console
Menu

Generated Assets

Getting Started

Authentication

KV Store

Create a revenue source

Registers a revenue source.

Registers a revenue source. The money source is implicit and never created here.

  • Path POST https://api.sylphx.com/v1/orgs/acme/revenue_sources
  • Scope revenue:write
  • Effect write — a successful call changes state.
  • Collection revenue_sources
  • Query revenue_source_id, validate_only

#Request

FieldTypeWhat it is
parentstringThe org to create in: orgs/{org}. Required.
revenue_source_idstringThe source's id; ^[a-z]([a-z0-9_-]{0,61}[a-z0-9])?$. Empty: Money assigns one.
revenue_sourceRevenueSourceThe source to create. Required.
validate_onlyboolValidate only; write nothing.

#RevenueSource

FieldTypeWhat it is
namestringorgs/{org}/revenue_sources/{revenue_source}.
metaResourceMetaResource metadata.
specRevenueSourceSpecDesired state. Required.

#ResourceMeta

FieldTypeWhat it is
labelsmap<string, string>Caller-writable, indexed labels (AIP-122 label rules).
annotationsmap<string, string>Caller-writable, unindexed annotations.
display_namestringCaller-writable human-readable name.

#RevenueSourceSpec

FieldTypeWhat it is
kindstringmoney, stripe, google_play, app_store, ad_network, file or manual. Set on create and never changed; money is never created. Required.
display_namestringShown on summaries and in the console.
pausedboolA paused source is not synced and cannot be run; its facts still count.
configmap<string, string>The connector's settings (an account id, a bucket, a column mapping), never a credential. At most 32 entries.

#Response

FieldTypeWhat it is
namestringorgs/{org}/revenue_sources/{revenue_source}.
uidstringThe source's id (rvs-…); never reused. Output only.
metaResourceMetaResource metadata.
specRevenueSourceSpecDesired state. Required.
statusRevenueSourceStatusObserved state. Output only.

#ResourceMeta

FieldTypeWhat it is
generationint64Increases by one on every change to spec. Output only.
etagstringStrong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as If-Match or etag to make Update and Delete conditional; a mismatch fails with ABORTED / 409 ETAG_MISMATCH. Output only.
create_timetimestampWhen the Resource was created. Output only.
update_timetimestampWhen the Resource last changed. Output only.
delete_timetimestampSet while the Resource is being deleted. Output only.
labelsmap<string, string>Caller-writable, indexed labels (AIP-122 label rules).
annotationsmap<string, string>Caller-writable, unindexed annotations.
display_namestringCaller-writable human-readable name.
creatorstringThe principal that created the Resource. Output only.

#RevenueSourceSpec

FieldTypeWhat it is
kindstringmoney, stripe, google_play, app_store, ad_network, file or manual. Set on create and never changed; money is never created. Required.
display_namestringShown on summaries and in the console.
pausedboolA paused source is not synced and cannot be run; its facts still count.
configmap<string, string>The connector's settings (an account id, a bucket, a column mapping), never a credential. At most 32 entries.

#RevenueSourceStatus

FieldTypeWhat it is
observed_generationint64The generation this status was computed from. Output only.
conditionsCondition[]Ready while the source is fresh; False with reason Stale, Paused or NeverSynced otherwise. Output only.
environmentstringFor a money source, the environment it books: orgs/{org}/projects/{project}/envs/{env}. Empty for every other kind. Output only.
last_success_timetimestampWhen the source last synced successfully. Unset for a money source, which books in real time. Output only.
newest_daystringThe newest day the source holds, YYYY-MM-DD; empty when it holds none. Output only.
staleboolThe newest day is older than the kind's normal lag plus one day, or the source has never synced: summaries name it and mark the days it has not reported as incomplete. Output only.
last_run_statestringThe last run: running, succeeded or failed; empty before the first. Output only.
last_run_errorstringThe last failed run's error code; never a response body. Output only.

#Condition

FieldTypeWhat it is
typestringThe condition type, for example Ready.
statusConditionStatusWhether the condition holds. One of true, false, unknown.
observed_generationint64The generation this observation was made against.
reasonstringA machine-readable UpperCamelCase reason.
messagestringA customer-safe human-readable message.
severitySeverityHow severe a FALSE condition is. One of info, warning, error.
transition_timetimestampWhen status last changed.

#Errors

Every error arrives in the body Errors describes.

#Examples

curl -X POST "https://api.sylphx.com/v1/orgs/acme/revenue_sources" \
  -H "Authorization: Bearer $SYLPHX_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"spec":{"kind":"…"}}'