Creates a new channel in the specified site.

Scopes

You will need authorization for at least one of the following scopes to make a valid call:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/firebase

If unset, the scope for this method defaults to https://www.googleapis.com/auth/cloud-platform. You can set the scope for this method like this: firebasehosting1-beta1 --scope <scope> projects sites-channels-create ...

Required Scalar Argument

  • <parent> (string)
    • Required. The site in which to create this channel, in the format: sites/ SITE_ID

Required Request Value

The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.

For example, a structure like this:

Channel:
  create-time: string
  expire-time: string
  labels: { string: string }
  name: string
  release:
    message: string
    name: string
    release-time: string
    release-user:
      email: string
      image-url: string
    type: string
    version:
      config:
        app-association: string
        clean-urls: boolean
        i18n:
          root: string
        trailing-slash-behavior: string
      create-time: string
      create-user:
        email: string
        image-url: string
      delete-time: string
      delete-user:
        email: string
        image-url: string
      file-count: int64
      finalize-time: string
      finalize-user:
        email: string
        image-url: string
      labels: { string: string }
      name: string
      status: string
      version-bytes: string
  retained-release-count: integer
  ttl: string
  update-time: string
  url: string

can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.

  • -r . create-time=et
    • Output only. The time at which the channel was created.
  • expire-time=magna
    • The time at which the channel will be automatically deleted. If null, the channel will not be automatically deleted. This field is present in the output whether it's set directly or via the ttl field.
  • labels=key=no
    • Text labels used for extra metadata and/or filtering.
    • the value will be associated with the given key
  • name=ipsum
    • The fully-qualified resource name for the channel, in the format: sites/ SITE_ID/channels/CHANNEL_ID
  • release message=voluptua.
    • The deploy description when the release was created. The value can be up to 512 characters.
  • name=at
    • Output only. The unique identifier for the release, in either of the following formats: - sites/SITE_ID/releases/RELEASE_ID - sites/SITE_ID/channels/CHANNEL_ID/releases/RELEASE_ID This name is provided in the response body when you call releases.create or channels.releases.create.
  • release-time=sanctus
    • Output only. The time at which the version is set to be public.
  • release-user email=sed
    • The email address of the user when the user performed the action.
  • image-url=amet.

    • A profile image URL for the user. May not be present if the user has changed their email address or deleted their account.
  • .. type=takimata

    • Explains the reason for the release. Specify a value for this field only when creating a SITE_DISABLE type release.
  • version.config app-association=amet.
    • How to handle well known App Association files.
  • clean-urls=true
    • Defines whether to drop the file extension from uploaded files.
  • i18n root=gubergren

    • Required. The user-supplied path where country and language specific content will be looked for within the public directory.
  • .. trailing-slash-behavior=lorem

    • Defines how to handle a trailing slash in the URL path.
  • .. create-time=gubergren

    • Output only. The time at which the version was created.
  • create-user email=eos
    • The email address of the user when the user performed the action.
  • image-url=dolor

    • A profile image URL for the user. May not be present if the user has changed their email address or deleted their account.
  • .. delete-time=ea

    • Output only. The time at which the version was DELETED.
  • delete-user email=ipsum
    • The email address of the user when the user performed the action.
  • image-url=invidunt

    • A profile image URL for the user. May not be present if the user has changed their email address or deleted their account.
  • .. file-count=-47

    • Output only. The total number of files associated with the version. This value is calculated after a version is FINALIZED.
  • finalize-time=duo
    • Output only. The time at which the version was FINALIZED.
  • finalize-user email=ipsum
    • The email address of the user when the user performed the action.
  • image-url=sed

    • A profile image URL for the user. May not be present if the user has changed their email address or deleted their account.
  • .. labels=key=ut

    • The labels used for extra metadata and/or filtering.
    • the value will be associated with the given key
  • name=gubergren
    • The fully-qualified resource name for the version, in the format: sites/ SITE_ID/versions/VERSION_ID This name is provided in the response body when you call CreateVersion.
  • status=rebum.
    • The deploy status of the version. For a successful deploy, call CreateVersion to make a new version (CREATED status), upload all desired files to the version, then update the version to the FINALIZED status. Note that if you leave the version in the CREATED state for more than 12 hours, the system will automatically mark the version as ABANDONED. You can also change the status of a version to DELETED by calling DeleteVersion.
  • version-bytes=est

    • Output only. The total stored bytesize of the version. This value is calculated after a version is FINALIZED.
  • ... retained-release-count=51

    • The number of previous releases to retain on the channel for rollback or other purposes. Must be a number between 1-100. Defaults to 10 for new channels.
  • ttl=ipsum
    • Input only. A time-to-live for this channel. Sets expire_time to the provided duration past the time of the request.
  • update-time=est
    • Output only. The time at which the channel was last updated.
  • url=gubergren
    • Output only. The URL at which the content of this channel's current release can be viewed. This URL is a Firebase-provided subdomain of web.app. The content of this channel's current release can also be viewed at the Firebase-provided subdomain of firebaseapp.com. If this channel is the live channel for the Hosting site, then the content of this channel's current release can also be viewed at any connected custom domains.

About Cursors

The cursor position is key to comfortably set complex nested structures. The following rules apply:

  • The cursor position is always set relative to the current one, unless the field name starts with the . character. Fields can be nested such as in -r f.s.o .
  • The cursor position is set relative to the top-level structure if it starts with ., e.g. -r .s.s
  • You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify -r struct.sub_struct=bar.
  • You can move the cursor one level up by using ... Each additional . moves it up one additional level. E.g. ... would go three levels up.

Optional Output Flags

The method's return value a JSON encoded structure, which will be written to standard output by default.

  • -o out
    • out specifies the destination to which to write the server's result to. It will be a JSON-encoded structure. The destination may be - to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.

Optional Method Properties

You may set the following properties to further configure the call. Please note that -p is followed by one or more key-value-pairs, and is called like this -p k1=v1 k2=v2 even though the listing below repeats the -p for completeness.

  • -p channel-id=string
    • Required. Immutable. A unique ID within the site that identifies the channel.

Optional General Properties

The following properties can configure any call, and are not specific to this method.

  • -p $-xgafv=string

    • V1 error format.
  • -p access-token=string

    • OAuth access token.
  • -p alt=string

    • Data format for response.
  • -p callback=string

    • JSONP
  • -p fields=string

    • Selector specifying which fields to include in a partial response.
  • -p key=string

    • API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
  • -p oauth-token=string

    • OAuth 2.0 token for the current user.
  • -p pretty-print=boolean

    • Returns response with indentations and line breaks.
  • -p quota-user=string

    • Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
  • -p upload-type=string

    • Legacy upload protocol for media (e.g. "media", "multipart").
  • -p upload-protocol=string

    • Upload protocol for media (e.g. "raw", "multipart").