Agave Projects API

Construction project management resources.

Operations 2

GET /projects Agave List Projects #
GET /projects/{id} Agave Get Project #

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/agave-projects-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

agave-projects-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Agave Unified Construction Budgets Projects API
  description: The Agave Unified Construction API provides a single REST API to read and write data from 100+ construction and accounting software systems. It normalizes data across platforms including projects, budgets, contracts, commitments, purchase orders, invoices, cost codes, vendors, timesheets, and employees.
  version: '1.0'
  contact:
    name: Agave API Support
    url: https://docs.agaveapi.com
  x-generated-from: documentation
servers:
- url: https://api.agaveapi.com
  description: Production Server (verified 2026-08-30 — https://api.agaveapi.com/projects returns 401
    "Invalid API-Version header"; the /v1 prefix previously carried here 404s and sandbox.agaveapi.com
    does not resolve)
security:
- ClientId: []
  ClientSecret: []
  AccountToken: []
tags:
- name: Projects
  description: Construction project management resources.
paths:
  /projects:
    get:
      operationId: listProjects
      summary: Agave List Projects
      description: Retrieve a list of construction projects from the linked source system.
      tags:
      - Projects
      parameters:
      - name: source_system_id
        in: header
        description: The linked account source system identifier.
        required: true
        schema:
          type: string
        example: linked-account-abc123
      - name: limit
        in: query
        description: Maximum number of results to return.
        schema:
          type: integer
        example: 100
      - name: cursor
        in: query
        description: Pagination cursor for the next page of results.
        schema:
          type: string
        example: eyJpZCI6MTIzfQ==
      responses:
        '200':
          description: A paginated list of projects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectList'
              examples:
                listProjects200Example:
                  summary: Default listProjects 200 response
                  x-microcks-default: true
                  value:
                    data:
                    - {}
                    next_cursor: example_value
                    count: 1
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                listProjects401Example:
                  summary: Default listProjects 401 response
                  x-microcks-default: true
                  value:
                    error: example_value
                    message: example_value
                    request_id: '500123'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /projects/{id}:
    get:
      operationId: getProject
      summary: Agave Get Project
      description: Retrieve a specific construction project by ID.
      tags:
      - Projects
      parameters:
      - name: source_system_id
        in: header
        required: true
        description: The linked account source system identifier.
        schema:
          type: string
        example: linked-account-abc123
      - name: id
        in: path
        required: true
        description: Project identifier.
        schema:
          type: string
        example: proj-500123
      responses:
        '200':
          description: Project details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Project'
              examples:
                getProject200Example:
                  summary: Default getProject 200 response
                  x-microcks-default: true
                  value:
                    id: '500123'
                    source_id: '500123'
                    name: Example Name
                    number: example_value
                    status: active
                    address: example_value
                    start_date: '2025-03-15'
                    estimated_completion_date: '2025-03-15'
                    total_budget: 99.99
                    created_at: '2025-03-15T14:30:00Z'
                    updated_at: '2025-03-15T14:30:00Z'
        '404':
          description: Project not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                getProject404Example:
                  summary: Default getProject 404 response
                  x-microcks-default: true
                  value:
                    error: example_value
                    message: example_value
                    request_id: '500123'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    Error:
      type: object
      description: API error response.
      properties:
        error:
          type: string
          description: Error code.
          example: not_found
        message:
          type: string
          description: Human-readable error description.
          example: The requested resource was not found.
        request_id:
          type: string
          description: Unique request ID for support.
          example: req-a1b2c3d4e5
    Project:
      type: object
      description: A construction project record from the linked source system.
      properties:
        id:
          type: string
          description: Agave unified project identifier.
          example: proj-500123
        source_id:
          type: string
          description: Project identifier in the source system.
          example: 12345
        name:
          type: string
          description: Project name.
          example: Downtown Office Building
        number:
          type: string
          description: Project number or code.
          example: 2025-001
        status:
          type: string
          description: Project status.
          enum:
          - active
          - inactive
          - completed
          example: active
        address:
          type: string
          description: Project address.
          example: 123 Main St, San Francisco, CA 94105
        start_date:
          type: string
          format: date
          description: Project start date.
          example: '2025-01-15'
        estimated_completion_date:
          type: string
          format: date
          description: Estimated project completion date.
          example: '2026-06-30'
        total_budget:
          type: number
          description: Total approved project budget in USD.
          example: 5000000.0
        created_at:
          type: string
          format: date-time
          description: Timestamp when the record was created.
          example: '2025-01-15T09:00:00Z'
        updated_at:
          type: string
          format: date-time
          description: Timestamp when the record was last updated.
          example: '2025-04-01T12:00:00Z'
    ProjectList:
      type: object
      description: Paginated list of projects.
      properties:
        data:
          type: array
          description: Array of project records.
          items:
            $ref: '#/components/schemas/Project'
          example:
          - example_value
        next_cursor:
          type: string
          description: Cursor for the next page of results.
          example: eyJpZCI6MTIzfQ==
        count:
          type: integer
          description: Number of records returned.
          example: 50
  securitySchemes:
    ClientId:
      type: apiKey
      in: header
      name: Client-Id
      description: Your Agave Client Identifier, always a 36-character UUID. Source https://docs.agaveapi.com/agave-api/headers
    ClientSecret:
      type: apiKey
      in: header
      name: Client-Secret
      description: Your Agave Client Secret, a 40-character string. Source https://docs.agaveapi.com/agave-api/headers
    AccountToken:
      type: apiKey
      in: header
      name: Account-Token
      description: The unique Account Token associated with the linked User account. Not used on Link Token requests. Source https://docs.agaveapi.com/agave-api/headers