All files / api/src/ai-providers/openrouter api.ts

35% Statements 7/20
100% Branches 0/0
0% Functions 0/3
35% Lines 7/20

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24  1x   1x 1x 1x             1x               1x   1x  
import type { InternalProviderAPIConfig } from '@shared/types/ai-providers/config';
import { FunctionName } from '@shared/types/api/request';
 
const openrouterAPIConfig: InternalProviderAPIConfig = {
  getBaseURL: () => 'https://openrouter.ai/api',
  headers: ({ saTarget }) => {
    return {
      Authorization: `Bearer ${saTarget.api_key}`, // https://openrouter.ai/keys
      'HTTP-Referer': 'https://superagents.ai/',
      'X-Title': 'Super Agents',
    };
  },
  getEndpoint: ({ saRequestData }) => {
    switch (saRequestData.functionName) {
      case FunctionName.CHAT_COMPLETE:
        return '/v1/chat/completions';
      default:
        return '';
    }
  },
};
 
export default openrouterAPIConfig;