Skip to content

List a project's services, by key

The services obs discovered from the telemetry the project sends: one per service key (service.namespace/service.name, or service.name), with the environments, signals, applications and languages each was seen with, but not its versions. Read-only: a service is created when ingest first sees its key and disappears once all its data has aged out. capReached says the project is at obs.services.perProject, so new keys aren't cataloged. 404 while the service catalog isn't offered yet (the console hides Services then).

GET
https://obs.ezghcloud.com/v1/organizations/{orgId}/projects/{projectId}/obs/services

Authorization

  • apiKeyoptionalHTTP
  • oauthoptionalHTTP
  • sessionCookieoptionalAPI key in cookie

Path parameters

  • orgIdstringrequired
    format: uuid
  • projectIdstringrequired
    format: uuid

Query parameters

  • limitoptionalinteger

    The page size. Out of range is 400, never a clamp.

    maximum: 100, minimum: 1
    Default: 20
  • cursoroptionalstring

    The previous page's nextCursor. Bound to the organization, the list and its filters.

  • qoptionalstring

    Only services whose key or name contains this, ignoring case (1-255 bytes).

    maxLength: 255, minLength: 1
  • keyoptionalstring

    Only the service with exactly this key.

    maxLength: 255, minLength: 1
  • environmentoptionalstring

    Only services seen in this environment.

    pattern: ^[a-z0-9][a-z0-9._-]{0,62}$
  • applicationoptionalstring

    Only services seen with this application (ezgh.metadata.application).

    pattern: ^[a-z0-9][a-z0-9._-]{0,62}$
  • activeoptionaltrueorfalseorall

    true: seen in the last 7 days; false: not; all: both.

    Default: "true"

Returns

200

A page of services.

JSON
  • capReachedbooleanrequired

    The project is at obs.services.perProject: new service keys aren't cataloged until services age out or the quota rises.

  • nextCursorstring | nullrequired
  • servicesarray ofobjectrequired
    19 properties
    • activebooleanrequired

      Seen in the last 7 days, on any signal and in any environment.

    • applicationsarray ofstringrequired

      The applications (ezgh.metadata.application) it reported.

    • createdAtstringrequired

      UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

      format: date-time
    • environmentsarray ofobjectrequired
      4 properties
      • datasetIdstringrequired
        format: uuid
      • environmentstringrequired

        The value of the resource attribute ezgh.metadata.environment, trimmed and lowercased; unknown collects records without a valid one.

        pattern: ^[a-z0-9][a-z0-9._-]{0,62}$
      • latestVersionstring | nullrequired

        The service.version seen most recently; null when none was reported.

      • signalsobjectrequired

        Only the signals it was seen on.

        3 properties
        • logsoptionalobject
          2 properties
          • firstSeenAtstringrequired

            UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

            format: date-time
          • lastSeenAtstringrequired

            UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

            format: date-time
        • metricsoptionalobject
          2 properties
          • firstSeenAtstringrequired

            UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

            format: date-time
          • lastSeenAtstringrequired

            UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

            format: date-time
        • tracesoptionalobject
          2 properties
          • firstSeenAtstringrequired

            UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

            format: date-time
          • lastSeenAtstringrequired

            UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

            format: date-time
    • firstSeenAtstringrequired

      UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

      format: date-time
    • idstringrequired
      format: uuid
    • keystringrequired

      service.namespace/service.name, or service.name without a namespace, as sent: the metrics job label.

    • languagesarray ofstringrequired

      The telemetry.sdk.language values it reported.

    • lastSeenAtstringrequired

      UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

      format: date-time
    • namestringrequired

      The key, cut to 100 characters; not trimmed.

    • organizationIdstringrequired
      format: uuid
    • projectIdstringrequired
      format: uuid
    • regionstringrequired
    • resourceNamestringrequired
    • serviceNamestringrequired

      The key after its last /.

    • serviceNamespacestring | nullrequired

      The key before its last /; null without a namespace.

    • slugstringrequired

      svc_ and 12 characters.

    • statusactiverequired
    • updatedAtstringrequired

      UTC, millisecond precision: 2026-10-02T10:20:00.000Z.

      format: date-time

400

invalid_request (with issues), invalid_cursor, or the endpoint's own 400 codes.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

401

unauthenticated: no credential, or one that doesn't check out.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

403

access_denied: the caller's policies don't allow the action; forbidden_origin: a cookie-authenticated write from an origin that isn't allowed; spend_limit_reached.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

404

not_found: unknown, malformed, or in an organization the caller isn't in.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

429

too_many_requests, with Retry-After; or quota_exceeded (a rate, usage or concurrency quota, with quota), never with Retry-After.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

500

internal_error: a bug; the details are in the logs, under the request ID.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

503

unavailable: a dependency the request needs is down. Retry after Retry-After.

JSON
  • errorobjectrequired
    4 properties
    • codestringrequired
      maxLength: 64, pattern: ^[a-z][a-z0-9_]*$
    • messagestringrequired
      maxLength: 1024
    • issuesoptionalarray ofobject

      invalid_request: one entry per problem, at a dotted path.

      2 properties
      • messagestringrequired
      • pathstringrequired
    • quotaoptionalobject

      quota_exceeded: the quota that refused the request. Never with Retry-After.

      11 properties
      • idstringrequired
      • kindallocationorrateorusageorconcurrencyrequired
      • limitintegerrequired
        minimum: 0
      • scopeorganizationorprojectorresourcerequired
      • inFlightoptionalinteger
        minimum: 0
      • periodStartoptionalstring
        format: date-time
      • regionoptionalstring
      • resetsAtoptionalstring
        format: date-time
      • scopeResourceNameoptionalstring
      • usedoptionalinteger
        minimum: 0
      • windowoptionalstring

        rate only: an ISO 8601 duration, PT1S to PT1H.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close