> ## Documentation Index
> Fetch the complete documentation index at: https://www.c1.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update

> Update changes selected catalog name, description or tags for a current Owner.
 It does not publish content or change the current publication pointer.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples patch /api/v1/artifacts/{id}
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/artifacts/{id}:
    patch:
      tags:
        - Artifact
      summary: Update
      description: >-
        Update changes selected catalog name, description or tags for a current
        Owner.
         It does not publish content or change the current publication pointer.
      operationId: c1.api.artifact.v1.ArtifactService.Update
      parameters:
        - in: path
          name: id
          required: true
          schema:
            description: Unique opaque identifier for this Artifact.
            readOnly: true
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/c1.api.artifact.v1.ArtifactServiceUpdateRequestInput
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.artifact.v1.ArtifactServiceUpdateResponse
          description: ArtifactServiceUpdateResponse contains the updated catalog metadata.
components:
  schemas:
    c1.api.artifact.v1.ArtifactServiceUpdateRequestInput:
      description: >-
        ArtifactServiceUpdateRequest changes only selected audience-visible
        metadata.
         Consumers must require a nonempty unique mask relative to Artifact, drawn
         exactly from display_name, description and tags. Wildcards, nested paths,
         unknown paths and output-only fields (including the publication pointer) are
         rejected; only selected fields are applied.
         Recursive Artifact validation is skipped so description-only or tags-only
         updates do not require a name. Consumers must manually validate artifact.id
         and selected fields after normal hooks: ID shape, field byte bounds, tag
         grammar, count and uniqueness, and a nonempty, non-Unicode-whitespace-only
         display_name when selected. Names must not be automatically trimmed.
         Generated validation checks only artifact and update_mask message presence;
         it does not enforce mask semantics or selected-field validation.
      properties:
        artifact:
          oneOf:
            - $ref: '#/components/schemas/c1.api.artifact.v1.Artifact'
            - type: 'null'
        updateMask:
          type:
            - string
            - 'null'
      title: Artifact Service Update Request
      type: object
      x-speakeasy-name-override: ArtifactServiceUpdateRequest
    c1.api.artifact.v1.ArtifactServiceUpdateResponse:
      description: ArtifactServiceUpdateResponse contains the updated catalog metadata.
      properties:
        artifact:
          oneOf:
            - $ref: '#/components/schemas/c1.api.artifact.v1.Artifact'
            - type: 'null'
      title: Artifact Service Update Response
      type: object
      x-speakeasy-name-override: ArtifactServiceUpdateResponse
    c1.api.artifact.v1.Artifact:
      description: |-
        Artifact is audience-visible catalog metadata, not an authoring package.
         It contains no source identities, storage references, cells or arguments.
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        description:
          description: Optional audience-visible description; never guarded draft text.
          type: string
        displayName:
          description: >-
            Current Owner-managed catalog name, independent of pinned-version
            source text.
             Consumers reject Unicode-whitespace-only names without trimming valid names.
          type: string
        id:
          description: Unique opaque identifier for this Artifact.
          readOnly: true
          type: string
        publishedVersionNumericId:
          description: >-
            Exact current publication number; zero means unpublished. Never
            infer the
             current publication from the largest version number. JS clients use strings.
          format: int64
          readOnly: true
          type: string
        tags:
          description: >-
            Optional unique lowercase ASCII topic tokens, not permissions or
            classifications.
          items:
            type: string
          type:
            - array
            - 'null'
        updatedAt:
          format: date-time
          readOnly: true
          type:
            - string
            - 'null'
        viewerUrl:
          description: |-
            Server-generated viewer link when published; empty when unpublished.
             This is not a download capability and every open checks current grants.
          readOnly: true
          type: string
      title: Artifact
      type: object
      x-speakeasy-name-override: Artifact
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````