{
  "contract": "sourcey.site-record/v1alpha1",
  "release_id": "sha256:eb26520adaa745ad87e5eff4894d8089d57d389e18d55ae552099c94e02ac3f5",
  "snapshot_id": "sha256:cad3d2314991260e858cbbe1418d5fb118829af6432d1f333ea48a32e873ccc1",
  "artifact_sha256": "sha256:0d116b9a61ec492f418d050e6a019ac2a1cf5ee80336c3470fe2a0ec9f65d5b3",
  "data": {
    "entity_id": "ent_01kyh8fpe0h05h6q0n7vvcdjgk",
    "entity_slug": "amplitude",
    "profile": {
      "projection_contract": "sourcey.agent-readiness-projection/v1alpha1",
      "agent_readiness_profile_id": "arp_01m4qs72ny21ngcwbe4jr0r3s1",
      "entity_id": "ent_01kyh8fpe0h05h6q0n7vvcdjgk",
      "scope": {
        "product": {
          "key": "amplitude-http-v2-api",
          "name": "Amplitude HTTP V2 API"
        },
        "job": {
          "key": "product-event-capture",
          "name": "Capture a product event"
        }
      },
      "catalog_binding": {
        "base_release_id": "sha256:e1e7c0691960b57cbe48d89ff0219416949f5670c2a7f3599e1d7e4d17c6f699",
        "entity_revision_digest": "sha256:b757f367c3fab54bead6debd8aae8feafe6e931aaf70e1240b7797c0f737d0e3"
      },
      "declaration_revision_digest": "sha256:a81f131a6844f91c8aa2ee258607ab4b618514ded5f65835cc5f2efcc7f04be6",
      "declaration": {
        "declaration_id": "declaration_amplitude_amplitude_http_v2_api_product_event_capture",
        "provenance": {
          "repository": "sourcey/agent-ready-services",
          "commit": "7a23e0161ee3b408d32845704ea8ab20d5a5b5bf",
          "path": "entities/am/amplitude.yaml",
          "git_blob_oid": "a767e375d77931176bce9b9ff8d54f5179904149",
          "blob_digest": "sha256:66b23ea5cc56a2e1e907f4834dcca5c4c18eb85ce13cbc9d084e5d1a3d9f004c"
        },
        "status": "community_declared"
      },
      "surface_catalog": {
        "participants": [
          {
            "participant_id": "amplitude",
            "roles": [
              "access_operator",
              "identity_provider",
              "operations_provider",
              "payment_provider",
              "provisioning_provider",
              "subject"
            ],
            "identity": {
              "entity_id": "ent_01kyh8fpe0h05h6q0n7vvcdjgk"
            }
          }
        ],
        "resources": [
          {
            "resource_id": "account-signup",
            "uri": "https://app.amplitude.com/signup",
            "roles": [
              "access"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          },
          {
            "resource_id": "api-reference",
            "uri": "https://amplitude.com/docs/apis/analytics/http-v2",
            "roles": [
              "discovery",
              "documentation",
              "operations",
              "provisioning"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          },
          {
            "resource_id": "authentication",
            "uri": "https://amplitude.com/docs/apis/authentication",
            "roles": [
              "authentication",
              "documentation"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          },
          {
            "resource_id": "pricing",
            "uri": "https://amplitude.com/pricing",
            "roles": [
              "pricing"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          },
          {
            "resource_id": "service-terms",
            "uri": "https://amplitude.com/terms",
            "roles": [
              "terms"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          }
        ],
        "endpoints": [
          {
            "endpoint_id": "registration",
            "uri": "https://app.amplitude.com/signup",
            "transport": "http",
            "roles": [
              "registration"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          },
          {
            "endpoint_id": "service-api",
            "uri": "https://api2.amplitude.com",
            "transport": "http",
            "roles": [
              "service"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          }
        ],
        "interfaces": [
          {
            "interface_id": "api-authentication",
            "modality": "network_api",
            "functions": [
              "authentication"
            ],
            "endpoint_ids": [],
            "resource_ids": [
              "authentication"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          },
          {
            "interface_id": "service-api",
            "modality": "network_api",
            "functions": [
              "service_operation"
            ],
            "endpoint_ids": [
              "service-api"
            ],
            "resource_ids": [
              "api-reference"
            ],
            "operated_by_participant_id": "amplitude",
            "standard_bindings": []
          }
        ],
        "relations": [
          {
            "relation_id": "authentication-authenticates-api",
            "kind": "authenticates",
            "from": {
              "node_kind": "interface",
              "node_id": "api-authentication"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "service-api"
            }
          },
          {
            "relation_id": "reference-describes-api",
            "kind": "describes",
            "from": {
              "node_kind": "resource",
              "node_id": "api-reference"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "service-api"
            }
          },
          {
            "relation_id": "signup-precedes-authentication",
            "kind": "precedes",
            "from": {
              "node_kind": "resource",
              "node_id": "account-signup"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "api-authentication"
            }
          }
        ],
        "surface_exclusions": [
          {
            "exclusion_id": "free-job-no-checkout",
            "role": "checkout",
            "rationale": "Amplitude's Free plan includes 2 million events a month with no credit card and no time limit, so capturing an event puts no card on file."
          },
          {
            "exclusion_id": "separate-eligibility-resource",
            "role": "eligibility",
            "rationale": "Access conditions are published within the vendor's terms; no separate eligibility resource is declared."
          }
        ]
      },
      "lifecycle": "active",
      "effective_from": "2026-10-12T10:07:10.882Z",
      "revision_digest": "sha256:6fe416ea645910877729f0e025266666715ceba11af6ecf8955ee8014257b16f",
      "policy_digest": "sha256:b612172aad277b54461de84e006815126f2df566563954b02f4432a39cad89ac",
      "policy_version": "kind-2026-10-12.2",
      "policy_as_of": "2026-10-05T00:00:00Z",
      "job": {
        "job_id": "product-event-capture",
        "job_digest": "sha256:1af94524069568a8ffb8ac8583808bed5b6288dd675feb3a165e0fe52883d770",
        "category": "product-analytics",
        "name": "Capture a product event",
        "statement": "Capture a product event carrying the run's nonce, then read it back."
      },
      "interface_id": "service-api",
      "label": "probed",
      "label_run_at": null,
      "grade": {
        "letter": "B+",
        "statement": "A person signs up and hands over a key.",
        "steps": [
          {
            "step": "discover",
            "outcome": "machine",
            "timing": null
          },
          {
            "step": "authority",
            "outcome": "workaround",
            "timing": "setup"
          },
          {
            "step": "onboard",
            "outcome": "workaround",
            "timing": "setup"
          },
          {
            "step": "pay",
            "outcome": "not_applicable",
            "timing": null
          },
          {
            "step": "confirm",
            "outcome": "machine",
            "timing": null
          },
          {
            "step": "sustain",
            "outcome": "workaround",
            "timing": "setup"
          }
        ],
        "job": "reachable",
        "approvals": [],
        "workarounds": [
          {
            "step": "authority",
            "timing": "setup"
          },
          {
            "step": "onboard",
            "timing": "setup"
          },
          {
            "step": "sustain",
            "timing": "setup"
          }
        ]
      },
      "discovery": [
        {
          "fact": "unsupported_descriptor",
          "value": "https://amplitude.com/.well-known/agent-skills/index.json",
          "descriptor_url": "https://amplitude.com/.well-known/agent-skills/index.json",
          "attempt_digest": "sha256:0a526edcf93621e316d3dde20df17acf3b6e1d2eec249f5c595e599b438d4cf1",
          "adapter": {
            "namespace": "agent-skills",
            "version": "0.1.0"
          }
        },
        {
          "fact": "mcp_endpoint",
          "value": "https://mcp.amplitude.com/mcp",
          "descriptor_url": "https://amplitude.com/.well-known/ai-catalog.json",
          "attempt_digest": "sha256:24057089527316b0a15a772142a084c57982f0e7d05b77a3a49d00257a3197e8",
          "adapter": {
            "namespace": "mcp-server-card",
            "version": "server-json"
          }
        },
        {
          "fact": "mcp_endpoint",
          "value": "https://mcp.eu.amplitude.com/mcp",
          "descriptor_url": "https://amplitude.com/.well-known/ai-catalog.json",
          "attempt_digest": "sha256:24057089527316b0a15a772142a084c57982f0e7d05b77a3a49d00257a3197e8",
          "adapter": {
            "namespace": "mcp-server-card",
            "version": "server-json"
          }
        },
        {
          "fact": "mcp_endpoint",
          "value": "https://amplitude.com/docs/api/mcp",
          "descriptor_url": "https://amplitude.com/.well-known/ai-catalog.json",
          "attempt_digest": "sha256:24057089527316b0a15a772142a084c57982f0e7d05b77a3a49d00257a3197e8",
          "adapter": {
            "namespace": "mcp-server-card",
            "version": "server-json"
          }
        },
        {
          "fact": "ard_entry",
          "value": "https://amplitude.com/openapi.json",
          "descriptor_url": "https://amplitude.com/.well-known/ai-catalog.json",
          "attempt_digest": "sha256:24057089527316b0a15a772142a084c57982f0e7d05b77a3a49d00257a3197e8",
          "adapter": {
            "namespace": "ard",
            "version": "0.91"
          }
        },
        {
          "fact": "ard_entry",
          "value": "https://github.com/amplitude/mcp-marketplace",
          "descriptor_url": "https://amplitude.com/.well-known/ai-catalog.json",
          "attempt_digest": "sha256:24057089527316b0a15a772142a084c57982f0e7d05b77a3a49d00257a3197e8",
          "adapter": {
            "namespace": "ard",
            "version": "0.91"
          }
        },
        {
          "fact": "ard_entry",
          "value": "https://amplitude.com/builder-skills",
          "descriptor_url": "https://amplitude.com/.well-known/ai-catalog.json",
          "attempt_digest": "sha256:24057089527316b0a15a772142a084c57982f0e7d05b77a3a49d00257a3197e8",
          "adapter": {
            "namespace": "ard",
            "version": "0.91"
          }
        },
        {
          "fact": "api_catalog_link",
          "value": "https://api2.amplitude.com/",
          "descriptor_url": "https://amplitude.com/.well-known/api-catalog",
          "attempt_digest": "sha256:71bfe403a2eed0bd456ac427dc01d455dc8623dcbc9c215f6b3f73dc1a8873bf",
          "adapter": {
            "namespace": "rfc9727",
            "version": "linkset"
          }
        },
        {
          "fact": "api_catalog_link",
          "value": "https://amplitude.com/api",
          "descriptor_url": "https://amplitude.com/.well-known/api-catalog",
          "attempt_digest": "sha256:71bfe403a2eed0bd456ac427dc01d455dc8623dcbc9c215f6b3f73dc1a8873bf",
          "adapter": {
            "namespace": "rfc9727",
            "version": "linkset"
          }
        },
        {
          "fact": "api_catalog_link",
          "value": "https://amplitude.com/",
          "descriptor_url": "https://amplitude.com/.well-known/api-catalog",
          "attempt_digest": "sha256:71bfe403a2eed0bd456ac427dc01d455dc8623dcbc9c215f6b3f73dc1a8873bf",
          "adapter": {
            "namespace": "rfc9727",
            "version": "linkset"
          }
        },
        {
          "fact": "api_catalog_link",
          "value": "https://amplitude.com/docs/api/mcp",
          "descriptor_url": "https://amplitude.com/.well-known/api-catalog",
          "attempt_digest": "sha256:71bfe403a2eed0bd456ac427dc01d455dc8623dcbc9c215f6b3f73dc1a8873bf",
          "adapter": {
            "namespace": "rfc9727",
            "version": "linkset"
          }
        },
        {
          "fact": "api_catalog_link",
          "value": "https://mcp.amplitude.com/mcp",
          "descriptor_url": "https://amplitude.com/.well-known/api-catalog",
          "attempt_digest": "sha256:71bfe403a2eed0bd456ac427dc01d455dc8623dcbc9c215f6b3f73dc1a8873bf",
          "adapter": {
            "namespace": "rfc9727",
            "version": "linkset"
          }
        },
        {
          "fact": "agent_documentation",
          "value": "https://amplitude.com/llms.txt",
          "descriptor_url": "https://amplitude.com/llms.txt",
          "attempt_digest": "sha256:35ecb59b6e4fd289fc38dcb400c60c89d8211d53086bcd582e792fa840d961f7",
          "adapter": {
            "namespace": "llms.txt",
            "version": "1"
          }
        },
        {
          "fact": "openapi_server",
          "value": "https://amplitude.com/",
          "descriptor_url": "https://amplitude.com/openapi.json",
          "attempt_digest": "sha256:76129c2a3171e4c4a530d0ee7b2cb6b3616d073a9c5912a61b94984eea589f22",
          "adapter": {
            "namespace": "openapi",
            "version": "3.1.0"
          }
        },
        {
          "fact": "openapi_server",
          "value": "https://analytics.eu.amplitude.com/",
          "descriptor_url": "https://amplitude.com/openapi.json",
          "attempt_digest": "sha256:76129c2a3171e4c4a530d0ee7b2cb6b3616d073a9c5912a61b94984eea589f22",
          "adapter": {
            "namespace": "openapi",
            "version": "3.1.0"
          }
        },
        {
          "fact": "openapi_server",
          "value": "https://api2.amplitude.com/",
          "descriptor_url": "https://amplitude.com/openapi.json",
          "attempt_digest": "sha256:76129c2a3171e4c4a530d0ee7b2cb6b3616d073a9c5912a61b94984eea589f22",
          "adapter": {
            "namespace": "openapi",
            "version": "3.1.0"
          }
        },
        {
          "fact": "openapi_server",
          "value": "https://api.eu.amplitude.com/",
          "descriptor_url": "https://amplitude.com/openapi.json",
          "attempt_digest": "sha256:76129c2a3171e4c4a530d0ee7b2cb6b3616d073a9c5912a61b94984eea589f22",
          "adapter": {
            "namespace": "openapi",
            "version": "3.1.0"
          }
        },
        {
          "fact": "documentation_route",
          "value": "https://api2.amplitude.com/",
          "descriptor_url": "https://amplitude.com/docs/apis/analytics/http-v2",
          "attempt_digest": "sha256:eaab147e616a0f99d9443ce8905ef2d332f7b229738963f8ea2ab753bca1fd1a",
          "adapter": {
            "namespace": "llms.txt",
            "version": "route"
          }
        }
      ],
      "discovery_run_at": null,
      "run": {
        "started_at": "2026-10-12T10:06:17.393Z",
        "finished_at": "2026-10-12T10:07:10.882Z",
        "discovery_reads": 29,
        "exchanges": [
          {
            "purpose": "probe_operation",
            "role": "request",
            "method": "POST",
            "url": "https://api2.amplitude.com/2/httpapi",
            "started_at": "2026-10-12T10:06:51.939Z",
            "finished_at": "2026-10-12T10:06:52.206Z",
            "response": {
              "status": 400,
              "media_type": "application/json",
              "content_bytes": 78,
              "content_digest": "sha256:a66fa9041684f946793233846d45f7f0abd197f7ce8f080913d42a1168aa6e23"
            },
            "transport_error": null,
            "exchange_digest": "sha256:aea04ee21f6427b63e1d89fbaddcde55bc747449a83028bac3d4e6bc3edd3e73"
          },
          {
            "purpose": "probe_resource_metadata",
            "role": "request",
            "method": "GET",
            "url": "https://api2.amplitude.com/.well-known/oauth-protected-resource/2/httpapi",
            "started_at": "2026-10-12T10:06:57.120Z",
            "finished_at": "2026-10-12T10:06:57.386Z",
            "response": {
              "status": 404,
              "media_type": "text/html",
              "content_bytes": 20,
              "content_digest": "sha256:75805a989c58d77a368328dc72b56b0540fe882cdeb39b5d67f1fd397655f2f8"
            },
            "transport_error": null,
            "exchange_digest": "sha256:7fa30a3120dbe4ed4d657dbc4f5796d5403612fcd0812d37d435dda6c7b02b55"
          },
          {
            "purpose": "probe_resource_metadata",
            "role": "request",
            "method": "GET",
            "url": "https://api2.amplitude.com/.well-known/oauth-protected-resource",
            "started_at": "2026-10-12T10:07:02.181Z",
            "finished_at": "2026-10-12T10:07:02.448Z",
            "response": {
              "status": 404,
              "media_type": "text/html",
              "content_bytes": 20,
              "content_digest": "sha256:75805a989c58d77a368328dc72b56b0540fe882cdeb39b5d67f1fd397655f2f8"
            },
            "transport_error": null,
            "exchange_digest": "sha256:9e83911123d9daf08c4261dbef052aa20c55a49fe9fb9a6f60b3e316ec4a756d"
          },
          {
            "purpose": "probe_page",
            "role": "request",
            "method": "GET",
            "url": "https://app.amplitude.com/signup",
            "started_at": "2026-10-12T10:07:05.559Z",
            "finished_at": "2026-10-12T10:07:06.033Z",
            "response": {
              "status": 200,
              "media_type": "text/html",
              "content_bytes": 98538,
              "content_digest": "sha256:0018b09ae95df92b9d62ebd1c17d5bcdb4cdbe20d8f90af586840726f8d47768"
            },
            "transport_error": null,
            "exchange_digest": "sha256:202267d74d7525e29c0364906f759e9d1167ba0b13f0e8438e6a7b2ec3e10314"
          }
        ],
        "assertions": []
      },
      "last_run_at": "2026-10-12T10:07:10.882Z",
      "publication": {
        "visibility": "discoverable",
        "reasons": []
      },
      "provenance": {
        "dispute": "none",
        "vendor_attestation": {
          "status": "none"
        },
        "basis_event_ids": []
      },
      "canonical_url": "https://sourcey.com/c/amplitude/agent-readiness/amplitude-http-v2-api/product-event-capture",
      "projection_digest": "sha256:19ad1aaf49354a26eb1f580160b67d02de27918dd63260d4f143fc4ad1b9f0cd"
    }
  }
}
