naftiko: 1.0.0-alpha2 info: label: HashiCorp Cloud Platform Packer Artifact Registry — PackerService description: "HashiCorp Cloud Platform Packer Artifact Registry — PackerService. 24 operations. Lead operation: GetIteration\ \ allows the user to retrieve an iteration using one of the following identifiers:\n * iteration_id\n * incremental_version\n\ \ * fingerprint. Self-contained Naftiko capability covering one Packer business surface." tags: - Packer - PackerService created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: PACKER_API_KEY: PACKER_API_KEY capability: consumes: - type: http namespace: packer-packerservice baseUri: '' description: HashiCorp Cloud Platform Packer Artifact Registry — PackerService business capability. Self-contained, no shared references. resources: - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/builds/{build_id} operations: - name: getbuild method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: build_id in: path type: string description: Unique identifier of the build that should be retrieved; this ID was required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: deletebuild method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: build_id in: path type: string description: Unique identifier of the build that should be deleted; this ID was required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: updatebuild method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: build_id in: path type: string description: Unique identifier of the build that should be updated; this ID was required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images operations: - name: listbuckets method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: pagination.page_size in: query type: integer description: The max number of results per page that should be returned. If the number - name: pagination.next_page_token in: query type: string description: Specifies a page token to use to retrieve the next page. Set this to the - name: pagination.previous_page_token in: query type: string description: Specifies a page token to use to retrieve the previous page. Set this to - name: sorting.order_by in: query type: array description: 'Specifies the list of per field ordering that should be used for sorting. ' - name: createbucket method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug} operations: - name: getbucket method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: bucket_id in: query type: string description: Unique identifier of the bucket; created and set by the HCP Packer - name: deletebucket method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: updatebucket method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/channels operations: - name: listchannels method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket you want to list channels for. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: createchannel method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket to associate the channel with. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/channels/{slug} operations: - name: getchannel method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket that the channel is associated with. required: true - name: slug in: path type: string description: Human-readable name for the channel. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: deletechannel method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket that the channel is associated with. required: true - name: slug in: path type: string description: Human-readable name for the channel. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: revocation_message in: query type: string description: Optional field to provide the reason for why this channel is being revoked. - name: updatechannel method: PATCH description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket that the channel is associated with. required: true - name: slug in: path type: string description: Human-readable name for the channel. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/iteration operations: - name: getiteration method: GET description: 'GetIteration allows the user to retrieve an iteration using one of the following identifiers:' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: incremental_version in: query type: integer description: The human-readable version number assigned to this iteration. - name: iteration_id in: query type: string description: Unique identifier of the iteration. This was created and set by the - name: fingerprint in: query type: string description: Fingerprint of the iteration. The fingerprint is set by Packer when you - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/iterations operations: - name: listiterations method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: include_incomplete in: query type: boolean description: If true, the request will return information about iterations that have - name: pagination.page_size in: query type: integer description: The max number of results per page that should be returned. If the number - name: pagination.next_page_token in: query type: string description: Specifies a page token to use to retrieve the next page. Set this to the - name: pagination.previous_page_token in: query type: string description: Specifies a page token to use to retrieve the previous page. Set this to - name: sorting.order_by in: query type: array description: 'Specifies the list of per field ordering that should be used for sorting. ' - name: createiteration method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/iterations/{incremental_version}/ancestors operations: - name: getancestorimages method: GET description: API Endpoints to ease UI implementation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: incremental_version in: path type: integer description: The human-readable version number assigned to this iteration. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/iterations/{incremental_version}/children operations: - name: getchildimages method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: incremental_version in: path type: integer description: The human-readable version number assigned to this iteration. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/iterations/{iteration_id} operations: - name: createbuild method: POST description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket. required: true - name: iteration_id in: path type: string description: Unique identifier of the iteration that this build should be associated required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/images/{bucket_slug}/iterations/{iteration_id}/builds operations: - name: listbuilds method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: bucket_slug in: path type: string description: Human-readable name for the bucket to list builds for. required: true - name: iteration_id in: path type: string description: Unique identifier of the iteration to list builds for; this was required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: pagination.page_size in: query type: integer description: The max number of results per page that should be returned. If the number - name: pagination.next_page_token in: query type: string description: Specifies a page token to use to retrieve the next page. Set this to the - name: pagination.previous_page_token in: query type: string description: Specifies a page token to use to retrieve the previous page. Set this to - name: sorting.order_by in: query type: array description: 'Specifies the list of per field ordering that should be used for sorting. ' - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/iterations/{iteration_id} operations: - name: deleteiteration method: DELETE description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: iteration_id in: path type: string description: Unique identifier of the iteration. This was created and set by the required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: bucket_slug in: query type: string description: Human-readable name for the bucket. - name: updateiteration method: PATCH description: UpdateIteration is used to mark an iteration "complete", once all builds are complete. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: iteration_id in: path type: string description: Unique identifier of the iteration. This was created and set by the required: true - name: body in: body type: object description: Request body (JSON). required: true - name: packer-2021-04-30-organizations-location.organization_id-projects-location.proje path: /packer/2021-04-30/organizations/{location.organization_id}/projects/{location.project_id}/registry operations: - name: getregistry method: GET description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: location.region.provider in: query type: string description: provider is the named cloud provider ("aws", "gcp", "azure"). - name: location.region.region in: query type: string description: region is the cloud region ("us-west1", "us-east1"). - name: createregistry method: PUT description: '' outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: location.organization_id in: path type: string description: organization_id is the id of the organization. required: true - name: location.project_id in: path type: string description: project_id is the projects id. required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: apikey key: Authorization value: '{{env.PACKER_API_KEY}}' placement: header exposes: - type: rest namespace: packer-packerservice-rest port: 8080 description: REST adapter for HashiCorp Cloud Platform Packer Artifact Registry — PackerService. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/builds/{build-id} name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getbuild description: getbuild call: packer-packerservice.getbuild with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id build_id: rest.build_id location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - method: DELETE name: deletebuild description: deletebuild call: packer-packerservice.deletebuild with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id build_id: rest.build_id location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - method: PATCH name: updatebuild description: updatebuild call: packer-packerservice.updatebuild with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id build_id: rest.build_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: listbuckets description: listbuckets call: packer-packerservice.listbuckets with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region pagination.page_size: rest.pagination.page_size pagination.next_page_token: rest.pagination.next_page_token pagination.previous_page_token: rest.pagination.previous_page_token sorting.order_by: rest.sorting.order_by outputParameters: - type: object mapping: $. - method: PUT name: createbucket description: createbucket call: packer-packerservice.createbucket with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug} name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getbucket description: getbucket call: packer-packerservice.getbucket with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region bucket_id: rest.bucket_id outputParameters: - type: object mapping: $. - method: DELETE name: deletebucket description: deletebucket call: packer-packerservice.deletebucket with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - method: PATCH name: updatebucket description: updatebucket call: packer-packerservice.updatebucket with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/channels name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: listchannels description: listchannels call: packer-packerservice.listchannels with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - method: POST name: createchannel description: createchannel call: packer-packerservice.createchannel with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/channels/{slug} name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getchannel description: getchannel call: packer-packerservice.getchannel with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug slug: rest.slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - method: DELETE name: deletechannel description: deletechannel call: packer-packerservice.deletechannel with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug slug: rest.slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region revocation_message: rest.revocation_message outputParameters: - type: object mapping: $. - method: PATCH name: updatechannel description: updatechannel call: packer-packerservice.updatechannel with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug slug: rest.slug body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/iteration name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getiteration description: 'GetIteration allows the user to retrieve an iteration using one of the following identifiers:' call: packer-packerservice.getiteration with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region incremental_version: rest.incremental_version iteration_id: rest.iteration_id fingerprint: rest.fingerprint outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/iterations name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: listiterations description: listiterations call: packer-packerservice.listiterations with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region include_incomplete: rest.include_incomplete pagination.page_size: rest.pagination.page_size pagination.next_page_token: rest.pagination.next_page_token pagination.previous_page_token: rest.pagination.previous_page_token sorting.order_by: rest.sorting.order_by outputParameters: - type: object mapping: $. - method: POST name: createiteration description: createiteration call: packer-packerservice.createiteration with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/iterations/{incremental-version}/ancestors name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getancestorimages description: API Endpoints to ease UI implementation call: packer-packerservice.getancestorimages with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug incremental_version: rest.incremental_version location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/iterations/{incremental-version}/children name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getchildimages description: getchildimages call: packer-packerservice.getchildimages with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug incremental_version: rest.incremental_version location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/iterations/{iteration-id} name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: POST name: createbuild description: createbuild call: packer-packerservice.createbuild with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug iteration_id: rest.iteration_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/images/{bucket-slug}/iterations/{iteration-id}/builds name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: listbuilds description: listbuilds call: packer-packerservice.listbuilds with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id bucket_slug: rest.bucket_slug iteration_id: rest.iteration_id location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region pagination.page_size: rest.pagination.page_size pagination.next_page_token: rest.pagination.next_page_token pagination.previous_page_token: rest.pagination.previous_page_token sorting.order_by: rest.sorting.order_by outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/iterations/{iteration-id} name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: DELETE name: deleteiteration description: deleteiteration call: packer-packerservice.deleteiteration with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id iteration_id: rest.iteration_id location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region bucket_slug: rest.bucket_slug outputParameters: - type: object mapping: $. - method: PATCH name: updateiteration description: UpdateIteration is used to mark an iteration "complete", once all builds are complete. call: packer-packerservice.updateiteration with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id iteration_id: rest.iteration_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/packer/2021-04-30/organizations/{location-organization-id}/projects/{location-project-id}/registry name: packer-2021-04-30-organizations-location-organization-id-projects-location-proje description: REST surface for packer-2021-04-30-organizations-location.organization_id-projects-location.proje. operations: - method: GET name: getregistry description: getregistry call: packer-packerservice.getregistry with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id location.region.provider: rest.location.region.provider location.region.region: rest.location.region.region outputParameters: - type: object mapping: $. - method: PUT name: createregistry description: createregistry call: packer-packerservice.createregistry with: location.organization_id: rest.location.organization_id location.project_id: rest.location.project_id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: packer-packerservice-mcp port: 9090 transport: http description: MCP adapter for HashiCorp Cloud Platform Packer Artifact Registry — PackerService. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: getbuild description: getbuild hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getbuild with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id build_id: tools.build_id location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: deletebuild description: deletebuild hints: readOnly: false destructive: true idempotent: true call: packer-packerservice.deletebuild with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id build_id: tools.build_id location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: updatebuild description: updatebuild hints: readOnly: false destructive: false idempotent: true call: packer-packerservice.updatebuild with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id build_id: tools.build_id body: tools.body outputParameters: - type: object mapping: $. - name: listbuckets description: listbuckets hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.listbuckets with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region pagination.page_size: tools.pagination.page_size pagination.next_page_token: tools.pagination.next_page_token pagination.previous_page_token: tools.pagination.previous_page_token sorting.order_by: tools.sorting.order_by outputParameters: - type: object mapping: $. - name: createbucket description: createbucket hints: readOnly: false destructive: false idempotent: true call: packer-packerservice.createbucket with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id body: tools.body outputParameters: - type: object mapping: $. - name: getbucket description: getbucket hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getbucket with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region bucket_id: tools.bucket_id outputParameters: - type: object mapping: $. - name: deletebucket description: deletebucket hints: readOnly: false destructive: true idempotent: true call: packer-packerservice.deletebucket with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: updatebucket description: updatebucket hints: readOnly: false destructive: false idempotent: true call: packer-packerservice.updatebucket with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug body: tools.body outputParameters: - type: object mapping: $. - name: listchannels description: listchannels hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.listchannels with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: createchannel description: createchannel hints: readOnly: false destructive: false idempotent: false call: packer-packerservice.createchannel with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug body: tools.body outputParameters: - type: object mapping: $. - name: getchannel description: getchannel hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getchannel with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug slug: tools.slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: deletechannel description: deletechannel hints: readOnly: false destructive: true idempotent: true call: packer-packerservice.deletechannel with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug slug: tools.slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region revocation_message: tools.revocation_message outputParameters: - type: object mapping: $. - name: updatechannel description: updatechannel hints: readOnly: false destructive: false idempotent: true call: packer-packerservice.updatechannel with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug slug: tools.slug body: tools.body outputParameters: - type: object mapping: $. - name: getiteration-allows-user-retrieve-iteration description: 'GetIteration allows the user to retrieve an iteration using one of the following identifiers:' hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getiteration with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region incremental_version: tools.incremental_version iteration_id: tools.iteration_id fingerprint: tools.fingerprint outputParameters: - type: object mapping: $. - name: listiterations description: listiterations hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.listiterations with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region include_incomplete: tools.include_incomplete pagination.page_size: tools.pagination.page_size pagination.next_page_token: tools.pagination.next_page_token pagination.previous_page_token: tools.pagination.previous_page_token sorting.order_by: tools.sorting.order_by outputParameters: - type: object mapping: $. - name: createiteration description: createiteration hints: readOnly: false destructive: false idempotent: false call: packer-packerservice.createiteration with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug body: tools.body outputParameters: - type: object mapping: $. - name: api-endpoints-ease-ui-implementation description: API Endpoints to ease UI implementation hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getancestorimages with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug incremental_version: tools.incremental_version location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: getchildimages description: getchildimages hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getchildimages with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug incremental_version: tools.incremental_version location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: createbuild description: createbuild hints: readOnly: false destructive: false idempotent: false call: packer-packerservice.createbuild with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug iteration_id: tools.iteration_id body: tools.body outputParameters: - type: object mapping: $. - name: listbuilds description: listbuilds hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.listbuilds with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id bucket_slug: tools.bucket_slug iteration_id: tools.iteration_id location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region pagination.page_size: tools.pagination.page_size pagination.next_page_token: tools.pagination.next_page_token pagination.previous_page_token: tools.pagination.previous_page_token sorting.order_by: tools.sorting.order_by outputParameters: - type: object mapping: $. - name: deleteiteration description: deleteiteration hints: readOnly: false destructive: true idempotent: true call: packer-packerservice.deleteiteration with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id iteration_id: tools.iteration_id location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region bucket_slug: tools.bucket_slug outputParameters: - type: object mapping: $. - name: updateiteration-is-used-mark-iteration description: UpdateIteration is used to mark an iteration "complete", once all builds are complete. hints: readOnly: false destructive: false idempotent: true call: packer-packerservice.updateiteration with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id iteration_id: tools.iteration_id body: tools.body outputParameters: - type: object mapping: $. - name: getregistry description: getregistry hints: readOnly: true destructive: false idempotent: true call: packer-packerservice.getregistry with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id location.region.provider: tools.location.region.provider location.region.region: tools.location.region.region outputParameters: - type: object mapping: $. - name: createregistry description: createregistry hints: readOnly: false destructive: false idempotent: true call: packer-packerservice.createregistry with: location.organization_id: tools.location.organization_id location.project_id: tools.location.project_id body: tools.body outputParameters: - type: object mapping: $.