openapi: 3.2.0 info: title: Macaroon Network Agent Services Listings API description: Pay-per-call scientific search, evidence, validation, and simulation services with explicit provenance and limitations. version: 1.0.0 x-guidance: Choose a concrete POST /execute/ operation. Send the documented JSON body, receive an x402 v2 USDC challenge on Base, then retry with PAYMENT-SIGNATURE. Treat licence status and validation claims exactly as returned; unknown evidence is not permission. tags: - name: Listings paths: /listings: get: summary: Get Listings operationId: get_listings_listings_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ListingsResponse' tags: - Listings post: summary: Create Listing operationId: create_listing_listings_post requestBody: content: application/json: schema: additionalProperties: true type: object title: Manifest required: true responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Listing' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Listings /listings/search: get: summary: Search Listings operationId: search_listings_listings_search_get parameters: - name: intent in: query required: true schema: type: string title: Intent - name: limit in: query required: false schema: type: integer maximum: 20 minimum: 1 default: 10 title: Limit responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SearchResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Listings /listings/{capability_id}: get: summary: Get Listing operationId: get_listing_listings__capability_id__get parameters: - name: capability_id in: path required: true schema: type: string title: Capability Id description: Substitute a concrete capability id; do not send the literal {capability_id} template. example: sanctions-pep-screening-v1 responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/Listing' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Listings delete: summary: Delete Listing operationId: delete_listing_listings__capability_id__delete parameters: - name: capability_id in: path required: true schema: type: string title: Capability Id description: Substitute a concrete capability id; do not send the literal {capability_id} template. example: sanctions-pep-screening-v1 responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' tags: - Listings components: schemas: SearchResponse: properties: listings: items: $ref: '#/components/schemas/SearchResultListing' type: array title: Listings type: object required: - listings title: SearchResponse ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError Listing: properties: capability_id: type: string title: Capability Id version: type: string title: Version provider_id: type: string title: Provider Id provider_name: type: string title: Provider Name endpoint: type: string title: Endpoint price_sats: type: integer title: Price Sats input_schema: additionalProperties: true type: object title: Input Schema output_schema: additionalProperties: true type: object title: Output Schema sample_predicate: additionalProperties: true type: object title: Sample Predicate predicate_hash: type: string title: Predicate Hash policy: additionalProperties: true type: object title: Policy status: type: string title: Status detail_url: anyOf: - type: string - type: 'null' title: Detail Url execute_url: anyOf: - type: string - type: 'null' title: Execute Url method: anyOf: - type: string - type: 'null' title: Method content_type: anyOf: - type: string - type: 'null' title: Content Type example_request: anyOf: - additionalProperties: true type: object - type: 'null' title: Example Request payment: anyOf: - additionalProperties: true type: object - type: 'null' title: Payment type: object required: - capability_id - version - provider_id - provider_name - endpoint - price_sats - input_schema - output_schema - sample_predicate - predicate_hash - policy - status title: Listing ListingsResponse: properties: listings: items: $ref: '#/components/schemas/Listing' type: array title: Listings type: object required: - listings title: ListingsResponse SearchResultListing: properties: capability_id: type: string title: Capability Id version: type: string title: Version provider_id: type: string title: Provider Id provider_name: type: string title: Provider Name endpoint: type: string title: Endpoint price_sats: type: integer title: Price Sats input_schema: additionalProperties: true type: object title: Input Schema output_schema: additionalProperties: true type: object title: Output Schema sample_predicate: additionalProperties: true type: object title: Sample Predicate predicate_hash: type: string title: Predicate Hash policy: additionalProperties: true type: object title: Policy status: type: string title: Status detail_url: anyOf: - type: string - type: 'null' title: Detail Url execute_url: anyOf: - type: string - type: 'null' title: Execute Url method: anyOf: - type: string - type: 'null' title: Method content_type: anyOf: - type: string - type: 'null' title: Content Type example_request: anyOf: - additionalProperties: true type: object - type: 'null' title: Example Request payment: anyOf: - additionalProperties: true type: object - type: 'null' title: Payment similarity: anyOf: - type: number - type: 'null' title: Similarity type: object required: - capability_id - version - provider_id - provider_name - endpoint - price_sats - input_schema - output_schema - sample_predicate - predicate_hash - policy - status title: SearchResultListing HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError