For developers and agents

Build on InternRelay

Discover internships as structured data, connect through MCP or A2A, and keep user-authorized application actions clear and reviewable.

Live resources

Choose the surface that fits your agent

Every link below points to a public InternRelay resource. Read its contract before making a call.

MCP tools

Use the InternRelay Streamable HTTP MCP server for search, detail, application status, and explicitly authorized application actions.

Authentication

Public reads are simple; private actions are scoped

Public internship discovery does not require a credential. OAuth 2.0 with PKCE and account tokens protect candidate-owned application data and writes.

OAuth endpoints

  • Metadata: /.well-known/oauth-authorization-server
  • Register: POST /api/oauth/register
  • Authorize: GET /api/oauth/authorize
  • Token: POST /api/oauth/token
  • Revoke: POST /api/oauth/revoke

Use an authorization code with S256 PKCE. The consent page shows the requested scopes to the signed-in candidate.

Read the full authentication guide

Supported scopes

internships:read
Read public internship listings.
applications:read
Read applications belonging to the signed-in candidate.
applications:write
Submit an application as the signed-in candidate.

Never use a browser cookie as an API credential. A side-effecting application call requires the user's explicit confirmation.

Quick start

Read open roles in one request

curl -H 'Accept: application/json' \
  'https://www.internrelay.com/api/v1/internships?page=1&pageSize=20'

The response contains public listing fields only. Amounts are integer cents, and every result includes a canonical browser URL.

When to use InternRelay

Make the user's goal the boundary

Use InternRelay when a user wants to find or compare internships, understand a role's stipend and deliverables, prepare a focused application note, or write an employer hiring brief.

Keep discovery within the public listing scope. Before creating an account, sending a brief, or submitting an application, show the user what will happen and ask for confirmation. Do not invent an employer, candidate identity, role detail, rating, or outcome.