naftiko: 1.0.0-alpha2 info: label: Albertsons Media Collective API — Campaigns description: 'Albertsons Media Collective API — Campaigns. 3 operations. Lead operation: Albertsons Media Collective List Campaigns. Self-contained Naftiko capability covering one Albertsons business surface.' tags: - Albertsons - Campaigns created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ALBERTSONS_API_KEY: ALBERTSONS_API_KEY capability: consumes: - type: http namespace: retail-media-campaigns baseUri: https://api.albertsons.com description: Albertsons Media Collective API — Campaigns business capability. Self-contained, no shared references. resources: - name: campaigns path: /campaigns operations: - name: listcampaigns method: GET description: Albertsons Media Collective List Campaigns outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: status in: query type: string description: Filter campaigns by status (active, paused, completed, draft). - name: limit in: query type: integer description: Maximum number of campaigns to return. - name: offset in: query type: integer description: Number of campaigns to skip for pagination. - name: createcampaign method: POST description: Albertsons Media Collective Create Campaign outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: campaigns-campaignId path: /campaigns/{campaignId} operations: - name: getcampaign method: GET description: Albertsons Media Collective Get Campaign outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: campaignId in: path type: string description: Unique identifier of the campaign. required: true authentication: type: bearer token: '{{env.ALBERTSONS_API_KEY}}' exposes: - type: rest namespace: retail-media-campaigns-rest port: 8080 description: REST adapter for Albertsons Media Collective API — Campaigns. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/campaigns name: campaigns description: REST surface for campaigns. operations: - method: GET name: listcampaigns description: Albertsons Media Collective List Campaigns call: retail-media-campaigns.listcampaigns with: status: rest.status limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: createcampaign description: Albertsons Media Collective Create Campaign call: retail-media-campaigns.createcampaign with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/campaigns/{campaignid} name: campaigns-campaignid description: REST surface for campaigns-campaignId. operations: - method: GET name: getcampaign description: Albertsons Media Collective Get Campaign call: retail-media-campaigns.getcampaign with: campaignId: rest.campaignId outputParameters: - type: object mapping: $. - type: mcp namespace: retail-media-campaigns-mcp port: 9090 transport: http description: MCP adapter for Albertsons Media Collective API — Campaigns. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: albertsons-media-collective-list-campaigns description: Albertsons Media Collective List Campaigns hints: readOnly: true destructive: false idempotent: true call: retail-media-campaigns.listcampaigns with: status: tools.status limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: albertsons-media-collective-create-campaign description: Albertsons Media Collective Create Campaign hints: readOnly: false destructive: false idempotent: false call: retail-media-campaigns.createcampaign with: body: tools.body outputParameters: - type: object mapping: $. - name: albertsons-media-collective-get-campaign description: Albertsons Media Collective Get Campaign hints: readOnly: true destructive: false idempotent: true call: retail-media-campaigns.getcampaign with: campaignId: tools.campaignId outputParameters: - type: object mapping: $.