API Explorer — OFP domain API

Our REST and GraphQL API over the Open Footprint model. OpenAPI endpoints, GraphQL schema, and SDK references for Node.js, Python, and .NET.

REST API Endpoints

OpenAPI 3.0.3
GET/standard/versionStandard
GET/organizationsOrganizations
POST/organizationsOrganizations
GET/organizations/{id}Organizations
GET/facilitiesFacilities
POST/facilitiesFacilities
GET/facilities/{id}Facilities
GET/recordingsRecordings
GET/reportsReporting
GET/verification/sessionsVerification

All list endpoints support pagination: ?page=1&limit=25 (max 100).

Interactive API Reference

Try It

Full OpenAPI 3.0.3 specification with live request builder. Browse endpoints, view schemas, and test requests.

GraphQL Schema

Schema
1type Query {
2 standardVersion: StandardVersion!
3 organizations(page: Int, limit: Int): OrganizationConnection!
4 organization(id: ID!): Organization
5 facilities(organizationId: ID, page: Int, limit: Int): FacilityConnection!
6 facility(id: ID!): Facility
7 recordings(facilityId: ID, page: Int, limit: Int): RecordingConnection!
8 verificationSessions(page: Int, limit: Int): VerificationSessionConnection!
9}
10
11type Organization {
12 id: ID!
13 name: String!
14 industry: String
15 facilities: [Facility!]!
16}
17
18type Facility {
19 id: ID!
20 name: String!
21 organizationId: ID!
22 location: GeoLocation
23 recordings: [Recording!]!
24}
25
26type Recording {
27 id: ID!
28 facilityId: ID!
29 emissionScope: EmissionScope!
30 calculatedCo2eKg: Float!
31 reportingPeriod: DateRange!
32 dataQualityRating: Int
33}

SDK References

const OFP = require('@openfootprint/sdk');

const client = new OFP.Client({
  baseUrl: 'https://api.openfootprint.org/v1',
  apiKey: process.env.OFP_API_KEY,
});

// List emission recordings for a facility
const recordings = await client.recordings.list({
  facilityId: 'fac-001',
  page: 1,
  limit: 25,
});

console.log(recordings.data);

Explore the OSDU Data Platform APIs

15 core services with ~90 REST endpoints from the OSDU Standard v1.0

OSDU API Catalog