aisoup-net Photo Scout API

The Photo Scout API from aisoup-net — 1 operation(s) for photo scout.

Operations 1

POST /photo-scout/v1/discover Discover nearby photo spots from inspected imagery #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/aisoup-net:aisoup-net-photo-scout-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

aisoup-net-photo-scout-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Agentic Services Web Evidence Photo Scout API
  version: 0.3.1
  description: Paid claim verification for agents with cited evidence, complete provider-source provenance, reproducible snapshots, content hashes, and signed receipts.
  x-guidance: Use POST /web-evidence/v1/claims/verify to verify one factual claim against current web evidence. Send a JSON body with claim and optional source, freshness, jurisdiction, and language constraints.
  contact:
    url: https://aisoup.net/#contact
tags:
- name: Photo Scout
paths:
  /photo-scout/v1/discover:
    post:
      operationId: discoverPhotoSpots
      tags:
      - Photo Scout
      summary: Discover nearby photo spots from inspected imagery
      description: 'Photo Scout: compare street-level images and return ranked POIs, camera headings, scores and reasons. Costs $2.00 per search.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - lat
              - lon
              properties:
                route:
                  type:
                  - object
                  - 'null'
                  additionalProperties: false
                  required:
                  - destination
                  properties:
                    origin:
                      anyOf:
                      - type: object
                        additionalProperties: false
                        properties:
                          query:
                            type:
                            - string
                            - 'null'
                            minLength: 1
                            maxLength: 200
                          lat:
                            type:
                            - number
                            - 'null'
                            minimum: -85
                            maximum: 85
                          lon:
                            type:
                            - number
                            - 'null'
                            minimum: -180
                            maximum: 180
                          label:
                            type:
                            - string
                            - 'null'
                            maxLength: 350
                        anyOf:
                        - required:
                          - query
                          properties:
                            query:
                              type: string
                              minLength: 1
                        - required:
                          - lat
                          - lon
                          properties:
                            lat:
                              type: number
                            lon:
                              type: number
                      - type: 'null'
                    destination:
                      type: object
                      additionalProperties: false
                      properties:
                        query:
                          type:
                          - string
                          - 'null'
                          minLength: 1
                          maxLength: 200
                        lat:
                          type:
                          - number
                          - 'null'
                          minimum: -85
                          maximum: 85
                        lon:
                          type:
                          - number
                          - 'null'
                          minimum: -180
                          maximum: 180
                        label:
                          type:
                          - string
                          - 'null'
                          maxLength: 350
                      anyOf:
                      - required:
                        - query
                        properties:
                          query:
                            type: string
                            minLength: 1
                      - required:
                        - lat
                        - lon
                        properties:
                          lat:
                            type: number
                          lon:
                            type: number
                    travelMode:
                      enum:
                      - walk
                      - drive
                      default: walk
                    corridorMeters:
                      type: integer
                      minimum: 100
                      maximum: 2000
                      default: 300
                requirements:
                  type: array
                  maxItems: 16
                  items:
                    type: object
                    additionalProperties: false
                    required:
                    - expression
                    - strength
                    - route
                    - stepIds
                    properties:
                      expression:
                        type: string
                        minLength: 1
                        maxLength: 400
                      strength:
                        enum:
                        - required
                        - preferred
                        - forbidden
                      route:
                        enum:
                        - places
                        - geography
                        - features
                        - visual
                      stepIds:
                        type: array
                        maxItems: 8
                        items:
                          type: string
                searchProgram:
                  type:
                  - object
                  - 'null'
                  additionalProperties: false
                  required:
                  - steps
                  - output
                  properties:
                    output:
                      type: string
                      minLength: 1
                      maxLength: 40
                    steps:
                      type: array
                      minItems: 1
                      maxItems: 24
                      items:
                        type: object
                        additionalProperties: false
                        required:
                        - id
                        - tool
                        properties:
                          id:
                            type: string
                            pattern: ^[a-zA-Z][a-zA-Z0-9_]{0,39}$
                          tool:
                            enum:
                            - search_places
                            - search_geography
                            - search_features
                            - sample_geography
                            - feature_points
                            - filter_geography
                            - filter_features
                            - union
                            - intersection
                            - area_imagery
                            - point_imagery
                            - collect_images
                            - score_images
                            - rank_results
                          inputs:
                            type: array
                            maxItems: 6
                            items:
                              type: string
                              maxLength: 40
                          queries:
                            type: array
                            maxItems: 4
                            items:
                              type: string
                              minLength: 1
                              maxLength: 200
                          geographicKinds:
                            type: array
                            maxItems: 6
                            items:
                              enum:
                              - lake
                              - sea
                              - river
                              - peak
                              - forest
                              - waterside
                          osmFeatures:
                            type: array
                            maxItems: 6
                            items:
                              type: object
                              additionalProperties: false
                              required:
                              - label
                              properties:
                                label:
                                  type: string
                                  minLength: 1
                                  maxLength: 120
                                kind:
                                  enum:
                                  - tagged
                                  - intersection
                                  default: tagged
                                filters:
                                  type: array
                                  maxItems: 6
                                  items:
                                    type: object
                                    additionalProperties: false
                                    required:
                                    - key
                                    properties:
                                      key:
                                        type: string
                                        minLength: 1
                                        maxLength: 80
                                        pattern: ^[A-Za-z0-9_:.-]+$
                                      value:
                                        type:
                                        - string
                                        - 'null'
                                        maxLength: 160
                                      required:
                                        type: boolean
                                        default: true
                                numericFilters:
                                  type: array
                                  maxItems: 4
                                  items:
                                    type: object
                                    additionalProperties: false
                                    required:
                                    - key
                                    properties:
                                      key:
                                        type: string
                                        minLength: 1
                                        maxLength: 80
                                        pattern: ^[A-Za-z0-9_:.-]+$
                                      minimum:
                                        type:
                                        - number
                                        - 'null'
                                      maximum:
                                        type:
                                        - number
                                        - 'null'
                                proximityMeters:
                                  type: integer
                                  minimum: 0
                                  maximum: 500
                                  default: 150
                          combination:
                            enum:
                            - all
                            - any
                            default: all
                          exclude:
                            type: boolean
                            default: false
                          discoveryHints:
                            type: boolean
                            default: false
                          weights:
                            type: array
                            maxItems: 6
                            items:
                              type: integer
                              minimum: 1
                              maximum: 4
                          visualIntent:
                            type: string
                            maxLength: 1000
                searchBranches:
                  type: array
                  maxItems: 6
                  items:
                    type: object
                    additionalProperties: false
                    properties:
                      poiQueries:
                        type: array
                        maxItems: 4
                        items:
                          type: string
                          minLength: 1
                          maxLength: 200
                      geographicKinds:
                        type: array
                        maxItems: 6
                        items:
                          enum:
                          - lake
                          - sea
                          - river
                          - peak
                          - forest
                          - waterside
                      geographicCombination:
                        enum:
                        - all
                        - any
                        default: all
                      osmFeatures:
                        type: array
                        maxItems: 6
                        items:
                          type: object
                          additionalProperties: false
                          required:
                          - label
                          properties:
                            label:
                              type: string
                              minLength: 1
                              maxLength: 120
                            kind:
                              enum:
                              - tagged
                              - intersection
                              default: tagged
                            filters:
                              type: array
                              maxItems: 6
                              items:
                                type: object
                                additionalProperties: false
                                required:
                                - key
                                properties:
                                  key:
                                    type: string
                                    minLength: 1
                                    maxLength: 80
                                    pattern: ^[A-Za-z0-9_:.-]+$
                                  value:
                                    type:
                                    - string
                                    - 'null'
                                    maxLength: 160
                                  required:
                                    type: boolean
                                    default: true
                            numericFilters:
                              type: array
                              maxItems: 4
                              items:
                                type: object
                                additionalProperties: false
                                required:
                                - key
                                properties:
                                  key:
                                    type: string
                                    minLength: 1
                                    maxLength: 80
                                    pattern: ^[A-Za-z0-9_:.-]+$
                                  minimum:
                                    type:
                                    - number
                                    - 'null'
                                  maximum:
                                    type:
                                    - number
                                    - 'null'
                            proximityMeters:
                              type: integer
                              minimum: 0
                              maximum: 500
                              default: 150
                      featureCombination:
                        enum:
                        - all
                        - any
                        default: all
                      visualIntent:
                        type: string
                        maxLength: 1000
                query:
                  type: string
                  maxLength: 1000
                poiQueries:
                  type: array
                  maxItems: 4
                  items:
                    type: string
                    minLength: 1
                    maxLength: 200
                osmFeatures:
                  type: array
                  maxItems: 6
                  items:
                    type: object
                    additionalProperties: false
                    required:
                    - label
                    properties:
                      label:
                        type: string
                        minLength: 1
                        maxLength: 120
                      kind:
                        enum:
                        - tagged
                        - intersection
                        default: tagged
                      filters:
                        type: array
                        maxItems: 6
                        items:
                          type: object
                          additionalProperties: false
                          required:
                          - key
                          properties:
                            key:
                              type: string
                              minLength: 1
                              maxLength: 80
                              pattern: ^[A-Za-z0-9_:.-]+$
                            value:
                              type:
                              - string
                              - 'null'
                              maxLength: 160
                            required:
                              type: boolean
                              default: true
                      numericFilters:
                        type: array
                        maxItems: 4
                        items:
                          type: object
                          additionalProperties: false
                          required:
                          - key
                          properties:
                            key:
                              type: string
                              minLength: 1
                              maxLength: 80
                              pattern: ^[A-Za-z0-9_:.-]+$
                            minimum:
                              type:
                              - number
                              - 'null'
                            maximum:
                              type:
                              - number
                              - 'null'
                      proximityMeters:
                        type: integer
                        minimum: 0
                        maximum: 500
                        default: 150
                geographicCombination:
                  enum:
                  - all
                  - any
                  default: all
                featureCombination:
                  enum:
                  - all
                  - any
                  default: all
                geographicKinds:
                  type: array
                  maxItems: 6
                  items:
                    enum:
                    - lake
                    - sea
                    - river
                    - peak
                    - forest
                    - waterside
                scoringIntent:
                  type: string
                  maxLength: 1000
                lat:
                  type: number
                  minimum: -85
                  maximum: 85
                lon:
                  type: number
                  minimum: -180
                  maximum: 180
                radius:
                  type: integer
                  minimum: 100
                  maximum: 20000
                  default: 1000
                limit:
                  type: integer
                  minimum: 1
                  maximum: 5
                  default: 3
                photoStyles:
                  type: array
                  minItems: 1
                  maxItems: 8
                  items:
                    enum:
                    - nature
                    - urban
                    - vintage
                    - iconic
                    - artistic
                    - waterside
                    - minimal
                    - adventure
                preferences:
                  type: string
                  maxLength: 500
            example:
              lat: 41.8827
              lon: -87.6233
              radius: 500
              limit: 3
      responses:
        '200':
          description: Ranked photo spots with source links and a signed order receipt
          content:
            application/json:
              schema:
                type: object
                properties:
                  summary:
                    type: string
                  spots:
                    type: array
                    items:
                      type: object
                  poiResults:
                    type: array
                    items:
                      type: object
                  commerce:
                    type: object
        '402':
          description: x402 or MPP payment required
        '422':
          description: Invalid input or no eligible imagery in the sampled area
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '2.00'
        protocols:
        - x402: {}
        - mpp:
            method: evm
            intent: charge
            currency: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
x-service-info:
  description: Paid, structured verification of factual claims using current web evidence.
  name: Web Evidence
  url: https://api.aisoup.net/web-evidence/
  categories:
  - research
  - fact-checking
  - web-evidence
  docs:
    apiReference: https://api.aisoup.net/web-evidence/openapi.json
    homepage: https://aisoup.net/web-evidence/
    llms: https://api.aisoup.net/web-evidence/llms.txt